]> git.ipfire.org Git - people/ms/u-boot.git/blob - include/linux/mtd/fsl_upm.h
arm64: dts: sun50i: h5: Order nodes in alphabetic for orangepi-prime
[people/ms/u-boot.git] / include / linux / mtd / fsl_upm.h
1 /*
2 * FSL UPM NAND driver
3 *
4 * Copyright (C) 2007 MontaVista Software, Inc.
5 * Anton Vorontsov <avorontsov@ru.mvista.com>
6 *
7 * SPDX-License-Identifier: GPL-2.0+
8 */
9
10 #ifndef __LINUX_MTD_NAND_FSL_UPM
11 #define __LINUX_MTD_NAND_FSL_UPM
12
13 #include <linux/mtd/nand.h>
14
15 #define FSL_UPM_WAIT_RUN_PATTERN 0x1
16 #define FSL_UPM_WAIT_WRITE_BYTE 0x2
17 #define FSL_UPM_WAIT_WRITE_BUFFER 0x4
18
19 struct fsl_upm {
20 void __iomem *mdr;
21 void __iomem *mxmr;
22 void __iomem *mar;
23 void __iomem *io_addr;
24 };
25
26 struct fsl_upm_nand {
27 struct fsl_upm upm;
28
29 int width;
30 int upm_cmd_offset;
31 int upm_addr_offset;
32 int upm_mar_chip_offset;
33 int wait_flags;
34 int (*dev_ready)(int chip_nr);
35 int chip_delay;
36 int chip_offset;
37 int chip_nr;
38
39 /* no need to fill */
40 int last_ctrl;
41 };
42
43 extern int fsl_upm_nand_init(struct nand_chip *chip, struct fsl_upm_nand *fun);
44
45 #endif