Linux MTD下获取Nand flash各个参数的过程的详细解析

版本:v1.1

Crifan Li

摘要

本文主要介绍了Nand Flash的一些背景知识和术语,然后详尽分析了Linux的MTD中的nand_base.c中的nand_get_flash_type函数每一步骤的功能。

[提示] 本文提供多种格式供:
在线阅读 HTML HTMLs PDF CHM TXT RTF WEBHELP
下载(7zip压缩包) HTML HTMLs PDF CHM TXT RTF WEBHELP

HTML版本的在线地址为:

http://www.crifan.com/files/doc/docbook/nand_get_type/release/html/nand_get_type.html

有任何意见,建议,提交bug等,都欢迎去讨论组发帖讨论:

http://www.crifan.com/bbs/categories/nand_get_type/

2012-08-09

修订历史
修订 1.0 2009-07-28 crl
  1. 详细解析了Linux MTD下获取Nand flash各个参数的具体过程
修订 1.1 2012-08-09 crl
  1. 通过Docbook发布

目录

1. 看此文之前,一些有必要先解释的术语
1.1. Program(编程)
1.2. Datasheet(数据手册)
1.3. Erasesize / Writesize
1.4. Spare Area / Redundant Area / OOB
1.5. Page Register(页寄存器)
1.6. Chip和Plane
2. 代码详细解析
2.1. 解析函数nand_get_flash_type

插图清单

2.1. Nand Flash读取出来的各个ID的含义
2.2. Nand Flash 第三个ID的具体含义
2.3. Nand Flash中多页编程对应的多个Plane的组织架构
2.4. Nand Flash 第4个ID的具体含义