blob: 0feaeaeb88286423e47274558186617b51bff899 [file] [log] [blame]
xjb04a4022021-11-25 15:01:52 +08001
2 NAND2.0
3 ===============================
4
5 NAND2.0 is a common nand driver which designed for accessing
6different type of NANDs(SLC, SPI-NAND, MLC, TLC) on various OS. This
7driver can work on mostly SoCs of Mediatek.
8
9 Although there already has a common nand driver, it doesn't cover
10SPI-NAND, and not match our IC-Verification's reqirement. We need
11a driver that can be exten or cut easily.
12
13 This driver is base on NANDX & SLC. We try to refactor structures,
14and make them inheritable. We also refactor some operations' flow
15principally for adding SPI-NAND support.
16
17 This driver's architecture is like:
18
19 Driver @LK/Uboot/DA... |IC verify/other purposes
20 ----------------------------------------------------------------
21 partition | BBM |
22 -------------------------------------- | extend_core
23 nandx_core/core_io |
24 ----------------------------------------------------------------
25 nand_chip/nand_base |
26 -------------------------------------- | extend_nfi
27 nand_device | nfi/nfi_base |
28
29 Any block of above graph can be extended at your will, if you
30want add new feature into this code, please make sure that your code
31would follow the framework, and we will be appreciated about it.