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.

[参考译文] AM3356:更改 NAND 总线宽度

Guru**** 2540720 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/567446/am3356-changing-nand-bus-width

器件型号:AM3356

您好!

我们在将 nand 从 nand 8更改为 nand 16时遇到一些问题。

我们进行了如下更改:

int board_nand_init (struct nand_chip *nand)

int32_t GPMC_config = 0;
CS = 0;

+ GPMC_cfg->cs[cs].config1 |= 0x1000

然后、在执行以下命令后、我们得到所有块都被检测为不良:

NAND scrub.chip

NAND erase.chip、

但在 Nand erase.chip 中、我发现所有块都被检测为坏块!

和 erase.chip:器件0整个芯片

正在跳过 0x00000000处的错误块

正在跳过 0x00020000处的坏块

(笑声)

我们使用 的是 am335发行版 u-boot-2013.01.01-psp06.00.00.00

我们将其编译如下:

使 O=AM335x cross_compile=arm-linux-gnueabihf- arch=arm distclean
使 O=AM335x cross_compile=arm-linux-gnueabihf- arch=arm AM335x_evm

 

上述 u-boot PSP 版本是否是 AM335x 的最新版本? 执行上述 GPMC 修改后,它是否可以与 nand16配合使用?

可能是 Nand GPMC 配置时序错误的问题?

感谢您的任何想法、

已运行

 

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

    您使用的 PSP 已停产、TI 不再支持。 请使用最新版本、可从以下位置下载: www.ti.com/.../PROCESSOR-SDK-AM335X
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Biser:

    非常感谢。
    CAN 解释了 nand 16位中的故障吗?

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

    最可能的可能是您使用的 ECC 算法。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我知道。
    这意味着我最好在开始擦除之前尝试使用 nandecc 命令。
    谢谢你。
    已运行
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    请参阅 processors.wiki.ti.com/.../Linux_Core_NAND_User's_Guide 、但此 wiki 页面仅适用于较新的 Linux 版本。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    已解决:GPMC pinmux 问题。 只有8位低 gpmx 在 pinmux 中定义了 correpty。
    现在、根据需要定义所有16位引脚多路复用器后即可。

    谢谢、
    已运行