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