Merge tag 'ti-v2020.07-rc3' of https://gitlab.denx.de/u-boot/custodians/u-boot-ti
[oweals/u-boot.git] / include / linux / mtd / fsl_upm.h
index 634ff0291cac1375a57ce1c0b5af89513745ad26..9999993543baa94651309ea9edcf36c17a483a10 100644 (file)
@@ -1,22 +1,21 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
  * FSL UPM NAND driver
  *
  * Copyright (C) 2007 MontaVista Software, Inc.
  *                    Anton Vorontsov <avorontsov@ru.mvista.com>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
  */
 
 #ifndef __LINUX_MTD_NAND_FSL_UPM
 #define __LINUX_MTD_NAND_FSL_UPM
 
-#include <linux/mtd/nand.h>
+#include <linux/mtd/rawnand.h>
+
+#define FSL_UPM_WAIT_RUN_PATTERN  0x1
+#define FSL_UPM_WAIT_WRITE_BYTE   0x2
+#define FSL_UPM_WAIT_WRITE_BUFFER 0x4
 
 struct fsl_upm {
-       const u32 *array;
        void __iomem *mdr;
        void __iomem *mxmr;
        void __iomem *mar;
@@ -29,9 +28,15 @@ struct fsl_upm_nand {
        int width;
        int upm_cmd_offset;
        int upm_addr_offset;
-       int wait_pattern;
-       int (*dev_ready)(void);
+       int upm_mar_chip_offset;
+       int wait_flags;
+       int (*dev_ready)(int chip_nr);
        int chip_delay;
+       int chip_offset;
+       int chip_nr;
+
+       /* no need to fill */
+       int last_ctrl;
 };
 
 extern int fsl_upm_nand_init(struct nand_chip *chip, struct fsl_upm_nand *fun);