19.5 NAND Flash驱动实例:S3C6410 外围的 NAND Flash 驱动
19.5.1 S3C6410 NAND 控制器硬件描述
S3C6410 处理器集成了一个 NAND 控制器,它支持页大小为 512 字节和 2048 字节的 SLC 或MLC NAND Flash。对 SLC 工艺 Flash,支持 1-bit 的硬件 ECC,对 MLC 工艺 Flash,支持 4-bit或 8-bit 的硬件 ECC。
LDD6410 开发板连接一块 K9F2G08 的 NAND Flash,其原理如图 19.7 所示,使用的驱动是
drivers/mtd/nand/s3c_nand.c, K9F2G08同时支持 S3C64XX、S5P64XX、S5PC1XX 处理器,对应的内核配置选项为MTD_NAND_S3C,如果要使用硬件ECC 功能,还需要使能MTD_NAND_S3C_HWECC。
图19.7 LDD6410 开发板上的 NAND 连接原理
19.5.2 S3C6410 nand_chip 初始化与 NAND 探测
S3C6410 的 NAND 驱动以 platform 驱动的形