This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] Linux/DM3730:在 x8模式下配置 x16 NAND 时出现问题

Guru**** 2589245 points
Other Parts Discussed in Thread: DM3730

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/638855/linux-dm3730-issue-in-configuring-x16-nand-in-x8-mode

器件型号:DM3730

工具/软件:Linux

您好!

我使用的是基于 DM3730处理器的定制板。 目前、正在使用器件型号为 MT29F4G16ABBDA (4Gb、x16、1.8V)的 Micron NAND、其工作正常。

但现在、我已经修改了引导加载程序、将16位 NAND 配置为8位 NAND (即仅通过8条线路访问 NAND)。 现在 、在8位 模式下读取/写入数据似乎是1字节交错、即  、在从 NAND 读取/写入数据时、会跳过一个字节、以实现每个字节的读取/写入。  

是否可以配置 x16 NAND 以仅通过8条线路访问数据?  如果是、我缺少什么?

为了 将 x16 NAND 配置为8位模式、在 uboot 代码中完成了以下更改。  

1、更改了 GPMC 配置寄存器中的器件宽度

- #define M_NAND_GPMC_CONFIG1 0x00001800  
+ #define M_NAND_GPMC_CONFIG1 0x00000800

2.将 文件 drivers/MTD/nand/nand_dids.c 中的选项更改为8位选项而不是16位选项  

-{"NAND 512MiB 1、8V 16位"、0xBC、0、512、0、 LP_OPTIONS16}、

+{"NAND 512MiB 1、8V 16位"、0xBC、0、512、0、 LP_OPTIONS}、

3.更改了8位 NAND 而不是16位的 ECC 布局

- #define GPMC_NAND_ECC_LP_X16_LO布局
+ #define GPMC_NAND_ECC_LP_X8_LO布局

4.注释了从扩展 ID 分配总线宽度的行。  

 -busw =(extid & 0x01)? NAND_BUSWIDTH_16:0;
+/- 总线=(extid & 0x01)? NAND_BUSWIDTH_16:0;

提前感谢、

Ganesh Raja S K

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Ganesh、

    我在看这个。 反馈应发布在此处。

    BR
    Tsvetolin Shulev