]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/blame - include/linux/platform_data/mtd-nand-pxa3xx.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
[mirror_ubuntu-focal-kernel.git] / include / linux / platform_data / mtd-nand-pxa3xx.h
CommitLineData
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 21struct 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
45extern void pxa3xx_set_nand_info(struct pxa3xx_nand_platform_data *info);
fe69af00 46#endif /* __ASM_ARCH_PXA3XX_NAND_H */