首先按照步骤修改相关信息之后执行make zImage出现了不少错误: 
其中有代表性的错误如下: 


arch/arm/mach-s3c2440/mach-mini2440.c:189: error: array type has incomplete element type 
arch/arm/mach-s3c2440/mach-mini2440.c:190: error: array index in non-array initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:190: error: (near initialization for 'smdk_default_nand_part') 
arch/arm/mach-s3c2440/mach-mini2440.c:191: error: field name not in record or union initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:191: error: (near initialization for 'smdk_default_nand_part')

arch/arm/mach-s3c2440/mach-mini2440.c:193: error: unknown field 'tacls' specified in initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:193: warning: excess elements in struct initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:193: warning: (near initialization for 'mini2440_nand_info') 
arch/arm/mach-s3c2440/mach-mini2440.c:194: error: unknown field 'twrph0' specified in initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:194: warning: excess elements in struct initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:194: warning: (near initialization for 'mini2440_nand_info') 
arch/arm/mach-s3c2440/mach-mini2440.c:195: error: unknown field 'twrph1' specified in initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:195: warning: excess elements in struct initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:195: warning: (near initialization for 'mini2440_nand_info') 
arch/arm/mach-s3c2440/mach-mini2440.c:196: error: unknown field 'nr_sets' specified in initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:196: warning: type defaults to 'int' in declaration of 'type name' 
arch/arm/mach-s3c2440/mach-mini2440.c:196: warning: type defaults to 'int' in declaration of 'type name' 
arch/arm/mach-s3c2440/mach-mini2440.c:196: error: negative width in bit-field '
arch/arm/mach-s3c2440/mach-mini2440.c:196: warning: excess elements in struct initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:196: warning: (near initialization for 'mini2440_nand_info') 
arch/arm/mach-s3c2440/mach-mini2440.c:197: error: unknown field 'sets' specified in initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:197: warning: excess elements in struct initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:197: warning: (near initialization for 'mini2440_nand_info') 
arch/arm/mach-s3c2440/mach-mini2440.c:198: error: unknown field 'ingnore_unset_ecc' specified in initializer 
arch/arm/mach-s3c2440/mach-mini2440.c:198: warning: excess elements in struct initializer


开始以为是输错代码,搞了一个上午都没有搞明白。 


到了下午,通过查找网上的资料(还真难找),再对比原来2.6.32内核中外国爱好者编写的mach-mini2440.c 


文件,隐约知道是头文件的问题。 


于是在自己的mach-mini2440.c中加入 
#include  
#include  
#include  
#include  
#include  
果然make过了,不过仍然有一行warning: 
arch/arm/mach-s3c2440/mach-mini2440.c:233: warning: 'mini2440_nand_info' defined but not used 


把生成的zImage下载到板子上运行,也没有出现该文中所描述的情形,初步估计还是移植失败 


看来该文漏洞不少,这次不得不依靠网上的高手了。

 

昨天的问题 
warning: 'mini2440_nand_info' defined but not used 
今日终于还是解决了,原来除了昨天说 
的之外还得添加别的东西,在这个函数: 
static void __init mini2440_map_io(void) 


中加入以下代码: 
s3c_device_nand.dev.platform_data = &mini2440_nand_info; 
再次make zImage,没有再出现warning,下载到板子, 成功出现了nand flash的分区信息。 

当然网上还有所谓的"石器时代"的移植方法,迟下再 试,毕竟这里头很多内在原理还是没搞明白的。当下先对文 件系统的移植作个了解,过一阵子再回过头来详细分析。 


我对这两天的移植有2个感受:一是"尽信书不如无书", 二是不学一些原始的方法,单是站在巨人的肩上去开发是 学不透彻的,虽然移植成功但是还是糊里糊涂。。。。。。

关键字:mini2440  nandflash  驱动移植 引用地址:初试mini2440 nandflash驱动移植

上一篇:S3C2440启动代码分析 start.s
下一篇:内核(2.6.14) + 根文件系统 +Qtopia Core 4移植 for S3C2410

推荐阅读

以 led闪烁中的flashLed函数例子:库函数操作简单,但是效率不如寄存器操作的高;寄存器操作很复杂,因为要熟悉上百个寄存器,但是程序效率很高/**下面是通过直接操作库函数的方式实现IO控制**/ while(1) { GPIO_ResetBits(GPIOB,GPIO_Pin_9); //LED0对应引脚GPIOF.9拉低,亮 等同LED0=0; GPIO_SetBits(GPIOB,GPIO_Pin_10); //LED1对应引脚GPIO...
欧盟资助的5G MiEdge(Millimeter-wave Edge)项目研究人员开发了一种毫米波(mmW)无线通信系统,可实现远程通信,并能从无人机实时传输4K未压缩视频。 5G宽带将开启一系列新的可能性,例如360度视频流和沉浸式虚拟现实应用。想象一下,所有设备无线连接,无人机监测交通状况,并协助执行搜索和救援任务;自动驾驶汽车可以相互通信,可穿戴设备可以提供...
专注于引入新品推动行业创新的电子元器件分销商贸泽电子 (Mouser Electronics) 很荣幸地宣布赞助Qorvo®设计峰会,这是一系列可免费参加的在线研讨会,举办时间为2020年8月及9月的每周三和周四。Qorvo在线设计峰会从8月12日周三开始,带你一起探索射频与电源管理技术,并与Qorvo的市场和产品专家连线,帮助你进一步提升应用。 Qorvo设计峰会是一...
【技术大咖测试笔记系列】之四:使用数字万用表测量电源瞬态恢复时间简单地说,瞬态恢复时间是施加负载后电源恢复到设定电平所需的时间长度。不设计电源的人一般会想当然,我们在工作中不管用的是哪种电路,可能只有在电源性能劣化到影响工作时才会注意到它。电源和人有点儿像,如果你问的问题比他知道的多,那么他可能会达不到你的预期。我们用一个类比来...

史海拾趣

问答坊 | AI 解惑

DDS

DDS有如下优点:⑴ 频率分辨率高,输出频点多,可达 个频点(N为相位累加器位数);⑵频率切换速度快,可达us量级;⑶ 频率切换时相位连续;⑷ 可以输出宽带正交信号;⑸ 输出相位噪声低,对参考频率源的相位噪声有改善作用;⑹可以产生任意波形;⑺ ...…

查看全部问答∨

非常不错

有的划给我也一份谢谢了!!tuoming624@yahoo.com.cn…

查看全部问答∨

LED电子灯箱控制电路

求助:我对LED很喜欢,单是我不懂电路控制技术 我想请大家帮我设计一个LED电子灯箱控制电路, 要求是: 2路输出控制:1路主闪,1路直亮 2路输出控制:2路叠加闪亮 5路输出控制:1路主闪1路直亮+3路跑边 7路输出控制:4路叠加闪亮+3路跑边 11 ...…

查看全部问答∨

JPEG2000中嵌入式块编码的FPGA设计

摘要: 为了使JPEG2000能应用到便携产品中,采用了高效存储结构的硬件实现方案,并设计了相应的寄存器组和控制逻辑。仿真结果表明所设计所设计的编码器能够在0.256s内完成对一帧512×512的灰度图像的编码。 关键词: 基于最优截断的嵌入式编码 JP ...…

查看全部问答∨

AVR中的eeprom问题

我用的mega128对他的eeprom操作,其中写数据可以 。问题是我写进数据后然后读还可以,但我赋初值之后,然后读缺不是我赋的原值。有谁了解么…

查看全部问答∨

大家在用ise10.1的时候,有没有遇到这样的情况?

大家在用ise10.1的时候,有没有遇到这样的情况:map成功后,一进入布局布线就出错退出,没有任何错误提示? 这个怎么整啊,都不知道错误出在哪里!…

查看全部问答∨

那位大哥大姐帮帮忙啊 ,

关于用单片机设计单体液压支柱密封质量检测的资料,谢谢了,谢谢了…

查看全部问答∨

BGA怎么布线啊?

我现在要画一个144脚的bga封装的电路板,头一次画,是一个六层板,想问一在打通孔的时候是一个个的打啊,有什么要求每?必须都要打孔吗?可不可以有的不用的就不打孔了?…

查看全部问答∨

EVC3.0转EVC4.0SP4的问题

有了在EVC3.0下的vcw、vcp等编译文件,我试着用EVC4.0SP4打开,但似乎没用~~~ 问下应该怎么做呢?…

查看全部问答∨

Zigbee基础实验(1)—通过中断控制LED

 通过本次实验,将会清楚如何捕获一个外部中断和CC2530捕获外部中断后的处理流程本次实验所学到的新寄存器为:P0IEN:各个控制口的中断使能,0为中断禁止,1为中断使能。 D7 D6 D5 D4 D3 D2 D1 D0 P0_7 P0_6 P0_5 P0_4 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved