summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorBoris Brezillon <boris.brezillon@free-electrons.com>2016-06-15 21:09:23 +0200
committerScott Wood <oss@buserror.net>2016-07-24 20:36:28 -0500
commit4ccae81cdadce39e925f3e8c96567fd911568000 (patch)
tree43f6deb5a8afbbc4ad9c3abbd83bbbe1cb8de563 /include
parent42bd19ce6c7bffef402ad6dd639c33686f485d29 (diff)
downloadu-boot-imx-4ccae81cdadce39e925f3e8c96567fd911568000.zip
u-boot-imx-4ccae81cdadce39e925f3e8c96567fd911568000.tar.gz
u-boot-imx-4ccae81cdadce39e925f3e8c96567fd911568000.tar.bz2
mtd: nand: Add the sunxi NAND controller driver
We already have an SPL driver for the sunxi NAND controller, now add the normal/standard one. The source has been copied from Linux 4.6 with a few changes to make it work in u-boot. Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Acked-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'include')
-rw-r--r--include/configs/sunxi-common.h2
-rw-r--r--include/fdtdec.h1
-rw-r--r--include/nand.h3
3 files changed, 6 insertions, 0 deletions
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index 6358901..f551926 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -135,6 +135,8 @@
#ifdef CONFIG_NAND_SUNXI
#define CONFIG_SPL_NAND_SUPPORT 1
+#define CONFIG_SYS_NAND_ONFI_DETECTION
+#define CONFIG_SYS_MAX_NAND_DEVICE 8
#endif
#ifdef CONFIG_SPL_SPI_SUNXI
diff --git a/include/fdtdec.h b/include/fdtdec.h
index 151c590..70ea0bf 100644
--- a/include/fdtdec.h
+++ b/include/fdtdec.h
@@ -155,6 +155,7 @@ enum fdt_compat_id {
COMPAT_INTEL_BAYTRAIL_FSP, /* Intel Bay Trail FSP */
COMPAT_INTEL_BAYTRAIL_FSP_MDP, /* Intel FSP memory-down params */
COMPAT_INTEL_IVYBRIDGE_FSP, /* Intel Ivy Bridge FSP */
+ COMPAT_SUNXI_NAND, /* SUNXI NAND controller */
COMPAT_COUNT,
};
diff --git a/include/nand.h b/include/nand.h
index 627b217..b6eb223 100644
--- a/include/nand.h
+++ b/include/nand.h
@@ -142,3 +142,6 @@ __attribute__((noreturn)) void nand_boot(void);
int get_nand_env_oob(struct mtd_info *mtd, unsigned long *result);
#endif
int spl_nand_erase_one(int block, int page);
+
+/* platform specific init functions */
+void sunxi_nand_init(void);