configs: Migrate CMD_NAND*
[platform/kernel/u-boot.git] / drivers / mtd / nand / Kconfig
index 3024357..3508c62 100644 (file)
@@ -9,6 +9,7 @@ config SYS_NAND_SELF_INIT
 config NAND_DENALI
        bool "Support Denali NAND controller"
        select SYS_NAND_SELF_INIT
+       imply CMD_NAND
        help
          Enable support for the Denali NAND controller.
 
@@ -33,11 +34,12 @@ config NAND_DENALI_SPARE_AREA_SKIP_BYTES
          used to preserve the bad block marker in the OOB area.
 
 config NAND_VF610_NFC
-       bool "Support for Freescale NFC for VF610/MPC5125"
+       bool "Support for Freescale NFC for VF610"
        select SYS_NAND_SELF_INIT
+       imply CMD_NAND
        help
          Enables support for NAND Flash Controller on some Freescale
-         processors like the VF610, MPC5125, MCF54418 or Kinetis K70.
+         processors like the VF610, MCF54418 or Kinetis K70.
          The driver supports a maximum 2k page size. The driver
          currently does not support hardware ECC.
 
@@ -56,6 +58,66 @@ config SYS_NAND_VF610_NFC_60_ECC_BYTES
 
 endchoice
 
+config NAND_PXA3XX
+       bool "Support for NAND on PXA3xx and Armada 370/XP/38x"
+       select SYS_NAND_SELF_INIT
+       imply CMD_NAND
+       help
+         This enables the driver for the NAND flash device found on
+         PXA3xx processors (NFCv1) and also on Armada 370/XP (NFCv2).
+
+config NAND_SUNXI
+       bool "Support for NAND on Allwinner SoCs"
+       depends on MACH_SUN4I || MACH_SUN5I || MACH_SUN7I
+       select SYS_NAND_SELF_INIT
+       select SYS_NAND_U_BOOT_LOCATIONS
+       imply CMD_NAND
+       ---help---
+       Enable support for NAND. This option enables the standard and
+       SPL drivers.
+       The SPL driver only supports reading from the NAND using DMA
+       transfers.
+
+if NAND_SUNXI
+
+config NAND_SUNXI_SPL_ECC_STRENGTH
+       int "Allwinner NAND SPL ECC Strength"
+       default 64
+
+config NAND_SUNXI_SPL_ECC_SIZE
+       int "Allwinner NAND SPL ECC Step Size"
+       default 1024
+
+config NAND_SUNXI_SPL_USABLE_PAGE_SIZE
+       int "Allwinner NAND SPL Usable Page Size"
+       default 1024
+
+endif
+
+config NAND_ARASAN
+       bool "Configure Arasan Nand"
+       imply CMD_NAND
+       help
+         This enables Nand driver support for Arasan nand flash
+         controller. This uses the hardware ECC for read and
+         write operations.
+
+config NAND_MXS
+       bool "MXS NAND support"
+       depends on MX6 || MX7
+       imply CMD_NAND
+       help
+         This enables NAND driver for the NAND flash controller on the
+         MXS processors.
+
+config NAND_ZYNQ
+       bool "Support for Zynq Nand controller"
+       select SYS_NAND_SELF_INIT
+       imply CMD_NAND
+       help
+         This enables Nand driver support for Nand flash controller
+         found on Zynq SoC.
+
 comment "Generic NAND options"
 
 # Enhance depends when converting drivers to Kconfig which use this config
@@ -79,6 +141,30 @@ config SYS_NAND_BUSWIDTH_16BIT
 
 if SPL
 
+config SYS_NAND_U_BOOT_LOCATIONS
+       bool "Define U-boot binaries locations in NAND"
+       help
+       Enable CONFIG_SYS_NAND_U_BOOT_OFFS though Kconfig.
+       This option should not be enabled when compiling U-boot for boards
+       defining CONFIG_SYS_NAND_U_BOOT_OFFS in their include/configs/<board>.h
+       file.
+
+config SYS_NAND_U_BOOT_OFFS
+       hex "Location in NAND to read U-Boot from"
+       default 0x800000 if NAND_SUNXI
+       depends on SYS_NAND_U_BOOT_LOCATIONS
+       help
+       Set the offset from the start of the nand where u-boot should be
+       loaded from.
+
+config SYS_NAND_U_BOOT_OFFS_REDUND
+       hex "Location in NAND to read U-Boot from"
+       default SYS_NAND_U_BOOT_OFFS
+       depends on SYS_NAND_U_BOOT_LOCATIONS
+       help
+       Set the offset from the start of the nand where the redundant u-boot
+       should be loaded from.
+
 config SPL_NAND_DENALI
        bool "Support Denali NAND controller for SPL"
        help