天嵌 ARM开发社区

 找回密码
 注册
查看: 4011|回复: 8

请教nandflash扩展问题

[复制链接]
情定蓝桥 发表于 2013-8-16 23:02:29 | 显示全部楼层 |阅读模式
手头有块210的板子,刚到手,对于A8的处理器还不是特别熟悉,但最近学校项目上想扩展nandflash为8GB,不知道在物理上是否支持?软件的配置和移植貌似TQ的工程师没有说明清楚,网上收了不少资料单不是很明白,需要对uboot和内核动那些地方,要求是不需要在这块添加的nandflash中启动,只是单纯的扩展nand而已,麻烦TQ的工程师哥哥解答,特地感谢
chris_xi 发表于 2013-8-17 23:04:00 | 显示全部楼层
多大都行,只要不要求总线访问,因为总线访问需要处理器给出映射空间,寄存器访问方式通常都没问题
 楼主| 情定蓝桥 发表于 2013-8-19 14:48:37 | 显示全部楼层
chris_xi 发表于 2013-8-17 23:04
多大都行,只要不要求总线访问,因为总线访问需要处理器给出映射空间,寄存器访问方式通常都没问题

谢谢你的回复  如果采用你的寄存器访问方式 该如何修改  能不能麻烦你提示一下??在uboot和内核中的那些地方需要作出配置??{:1_1:}
marochel 发表于 2013-8-19 15:45:34 | 显示全部楼层
如果要扩展NANDFLASH,替代芯片必须兼容现在的nandflash封装,然后参考芯片手册和nandflash原理图部分,有几个NC的0欧电阻需要补上。不建议换直接更换NANDFLASH扩展容量,因为使用大容量的flash稳定性没有验证过。
建议用SD卡扩展容量。
TQ-ZQL 发表于 2013-8-19 16:02:34 | 显示全部楼层
就是内核与uboot的文件分区表与内核的分区表改下
 楼主| 情定蓝桥 发表于 2013-8-19 16:39:35 | 显示全部楼层
TQ-ZQL 发表于 2013-8-19 16:02
就是内核与uboot的文件分区表与内核的分区表改下

你好 谢谢你的回复 但是我不是很明白  这个分区表指的是(比如内核的/arch/arm下的nandinfo配置表是吧)???  完了之后 不用管页面的大小调整吗?? 不明白的是 假设我买了一块镁光的8GB的nandflash,那么对应在uboot中总线上的配置不需要修改吗??直接改分区表 系统能找到我对应的flash空间吗 而且我并不需要当做rom来存储uboot或者内核镜像  只是当做普通的磁盘使用.  谢谢
TQ-ZQL 发表于 2013-8-19 17:19:13 | 显示全部楼层
struct mtd_info 中的部分成员
u_char type;             //MTD 设备类型
u_int32_t flags;         //MTD设备属性标志
u_int32_t size;          //标示了这个mtd设备的大小
u_int32_t erasesize;     //MTD设备的擦除单元大小,对于NandFlash来说就是Block的大小
u_int32_t oobblock;      //oob区在页内的位置,对于512字节一页的nand来说是512
u_int32_t oobsize;       //oob区的大小,对于512字节一页的nand来说是16
u_int32_t ecctype;      //ecc校验类型
u_int32_t eccsize;       //ecc的大小
char *name;             //设备的名字
int index;              //设备在MTD列表中的位置
struct nand_oobinfo oobinfo; //oob区的信息,包括是否使用ecc,ecc的大小


有标识的。如果不对,你可以改一下。
 楼主| 情定蓝桥 发表于 2013-8-20 09:17:05 | 显示全部楼层
chris_xi 发表于 2013-8-17 23:04
多大都行,只要不要求总线访问,因为总线访问需要处理器给出映射空间,寄存器访问方式通常都没问题

不明白你说的寄存器访问具体形式是怎样的,  我所知道的flash访问必须先在uboot配置好NAND FLASH控制器,并产生相应的访问时序来确定数据访问.  第一: ARM contex A8的处理器pdf说了  这个flash的映射实际物理大小上限就是1GB    不知道如何按照你说的进行代码上的修改与测试     第二: 如果按照楼下的所述, 正确的电路连接前提下  并换成8GB的nandflash芯片  ,那么只是修改uboot和kernel中的分区大小  能行吗  nandflash在uboot中配置还是挺多的  包括ECC等的设置, 页最大空间 OOB最大空间等各种       uboot/drivers/nand/nand_base.c中的读写函数等是否都需要修改  
麻烦说的具体一些哈  谢谢
亚瑟王 发表于 2013-8-20 10:33:28 | 显示全部楼层
情定蓝桥 发表于 2013-8-20 09:17
不明白你说的寄存器访问具体形式是怎样的,  我所知道的flash访问必须先在uboot配置好NAND FLASH控制器,并 ...

如果要用大容量的Nand需要MLC的,而210的芯片对MLC的支持并不好,不推荐使用。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2024-4-29 04:53 , Processed in 1.062500 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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