天嵌 ARM开发社区

 找回密码
 注册
查看: 2863|回复: 1

移植的几个问题

[复制链接]
gongping11 发表于 2011-10-10 19:43:27 | 显示全部楼层 |阅读模式
我移植发时间最长的是NAND Flash的移植,网上的版本很多,但是很多是明显存在错误的,怎么发现这个错误呢,这就需要你去看芯片的资料。首先是NAND FLASH的资料,然后是S3C2440的资料,我觉得前6章都是非常重要的,多看几遍才是王道。

我觉得256M Nand Flash的移植关键是掌握其地址的控制方式,也就是这个5周期地址的基本思想,稍微知道几个命令即可,然后就知道其中的道理了。其他的读写控制我认为都是差不多的。关键是知道如何让去控制这个芯片。

第二个注意点我认为就是要熟悉汇编语言,第一阶段的摸索过程真的很复杂,但是搞懂其原理了也是比较简单的。搞清楚ARM 伪指令LDR 和ARM指令LDR的区别,这个问题困扰了我很久,在刚开始做的时候跟着别人做,不知道原理,渐渐发现自己的理解存在偏差,又重新去认识,分析。

第三高版本的u-boot移植在引导的过此中比较低版本的方式存在差异性,特别是关于nand flash的控制方面存在很大的差异性,不能用天嵌的文件系统进行Nand Flash的引导,会出现
Please append a correct "root=" boot option; here are the available partitions:
1f00             256 mtdblock0 (driver?)
1f01            3072 mtdblock1 (driver?)
1f02          257024 mtdblock2 (driver?)

这一类的问题,其实主要是因为天嵌之前的文件系统在dev文件夹下并没有创建 mtdblockX之类的设备,称之为MTD块。这是一个需要注意的地方。

在NFS引导的过程中需要注意的就是

Warning: unable to open an initial console.
Kernel panic - not syncing: No init found.  Try passing init= option to kernel.

这也是文件系统导致的问题,关闭文件系统中的相关设置即可解决,屏蔽掉/etc/init.d/rcS中的net_set &即可实现。

其他的问题就是机器码的问题,这个问题是比较棘手的问题,建议大家直接采用天嵌设定的168,这样会减少很多的麻烦。
TQ_guoxixiao 发表于 2012-5-2 17:18:56 | 显示全部楼层
:):):):):):):):):):):):):):):):):):)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

GMT+8, 2025-8-15 19:10 , Processed in 2.034981 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表