Commit | Line | Data |
---|---|---|
fe69af00 | 1 | #ifndef __ASM_ARCH_PXA3XX_NAND_H |
2 | #define __ASM_ARCH_PXA3XX_NAND_H | |
3 | ||
4 | #include <linux/mtd/mtd.h> | |
5 | #include <linux/mtd/partitions.h> | |
6 | ||
f3c8cfc2 LW |
7 | /* |
8 | * Current pxa3xx_nand controller has two chip select which | |
9 | * both be workable. | |
10 | * | |
11 | * Notice should be taken that: | |
12 | * When you want to use this feature, you should not enable the | |
13 | * keep configuration feature, for two chip select could be | |
14 | * attached with different nand chip. The different page size | |
15 | * and timing requirement make the keep configuration impossible. | |
16 | */ | |
17 | ||
18 | /* The max num of chip select current support */ | |
19 | #define NUM_CHIP_SELECT (2) | |
fe69af00 | 20 | struct pxa3xx_nand_platform_data { |
21 | ||
22 | /* the data flash bus is shared between the Static Memory | |
23 | * Controller and the Data Flash Controller, the arbiter | |
24 | * controls the ownership of the bus | |
25 | */ | |
26 | int enable_arbiter; | |
27 | ||
f271049e MR |
28 | /* allow platform code to keep OBM/bootloader defined NFC config */ |
29 | int keep_config; | |
30 | ||
f3c8cfc2 LW |
31 | /* indicate how many chip selects will be used */ |
32 | int num_cs; | |
33 | ||
776f265e EG |
34 | /* use an flash-based bad block table */ |
35 | bool flash_bbt; | |
36 | ||
5b3e5078 EG |
37 | /* requested ECC strength and ECC step size */ |
38 | int ecc_strength, ecc_step_size; | |
39 | ||
f3c8cfc2 LW |
40 | const struct mtd_partition *parts[NUM_CHIP_SELECT]; |
41 | unsigned int nr_parts[NUM_CHIP_SELECT]; | |
fe69af00 | 42 | }; |
9ae819a8 EM |
43 | |
44 | extern void pxa3xx_set_nand_info(struct pxa3xx_nand_platform_data *info); | |
fe69af00 | 45 | #endif /* __ASM_ARCH_PXA3XX_NAND_H */ |