工具/软件:Linux
您好!
在带有 AM5718的定制板上、我有一个 Micron NAND 器件(MT29F32G08ABAAAWP)连接到 GPMC 总线。
我不需要在此 NAND 器件上引导、但我必须在该器件上设置 UBI 文件系统、以便应用程序保存数据。
NAND 器件具有以下属性:
- 4GiB 容量
-页面大小为8KiB
-擦除大小为1MiB (1024K)
OOB 大小为448
我的设备树配置(DTS)如下所示:
TI、nand-ecc-opt ="bch16";
TI、elm-id =<和 elm>;
NAND-BUS 宽度=<8>;
GPMC、器件宽度=<1>;
因此、我想使用 Sitara 的硬件 ELM 功能来查找和更正 ECC 错误、这意味着我将使用 nand_elm 驱动器部件。
当我启动内核时、我会收到以下消息:
[8.936778] nand:device found、Manufacturer ID:0x2C、Chip ID:0x68
[8.942911] 和:Micron MT29F32G08ABAANWP
[8.956753] nand:4096 MIB、SLC、擦除大小:1024 KiB、页面大小:8192、OOB 大小:448
[8.991076] 使用 OMAP-ECC_BCH16_CODE_HW ECC 方案
[8.995781] OMAP-elm 48078000.elm:不支持的配置 ecc-step=16
[9.016878] OMAP2-nand:探测器80000.n,失败,错误-22
我的内核是一个4.1.6、它来自我在定制板上移植的02.00.00.00 TI SDK。
我已经对这个问题进行了一些处理、如果我对、这意味着 ONFI 器件协议运行良好、但 ELM 驱动程序无法与页面大小大于4K 的器件配合使用。
我的问题是:
- Sitara 的 ELM 引擎是否能够处理 pagesize=8K 的 NAND 设备?
-如果是,您是否可以提供一些修补程序来应用于 Linux OMAP NAND 驱动程序以处理此硬件配置?
-如果 NAND 设备不能提供硬件 BCH16支持,我是否可以获得一些修补程序来使用软件 ECC 管理?
感谢你的帮助