diff mbox series

[U-Boot,V2] Convert CONFIG_APBH_DMA et al to Kconfig

Message ID 1517837593-7176-1-git-send-email-aford173@gmail.com
State Superseded
Delegated to: Tom Rini
Headers show
Series [U-Boot,V2] Convert CONFIG_APBH_DMA et al to Kconfig | expand

Commit Message

Adam Ford Feb. 5, 2018, 1:33 p.m. UTC
This converts the following to Kconfig:
   CONFIG_APBH_DMA
   CONFIG_APBH_DMA_BURST
   CONFIG_APBH_DMA_BURST8

Signed-off-by: Adam Ford <aford173@gmail.com>
---
Changes in V2:
Rebase on [U-Boot,v2,1/6] Convert CONFIG_NAND_MXS to Kconfig
Make the NAND controller in MX6 MX7 autoselect the DMA options

 configs/bg0900_defconfig                |  1 +
 configs/mx23_olinuxino_defconfig        |  1 +
 configs/mx23evk_defconfig               |  1 +
 configs/mx28evk_auart_console_defconfig |  3 +--
 configs/mx28evk_defconfig               |  3 +--
 configs/mx28evk_spi_defconfig           |  3 +--
 configs/sansa_fuze_plus_defconfig       |  1 +
 configs/sc_sps_1_defconfig              |  1 +
 configs/ts4600_defconfig                |  1 +
 configs/xfi3_defconfig                  |  1 +
 drivers/dma/Kconfig                     | 14 ++++++++++++++
 drivers/mtd/nand/Kconfig                |  3 +++
 include/configs/aristainetos-common.h   |  3 ---
 include/configs/cm_fx6.h                |  3 ---
 include/configs/colibri_imx7.h          |  3 ---
 include/configs/gw_ventana.h            |  3 ---
 include/configs/imx6-engicam.h          |  4 ----
 include/configs/imx6_logic.h            |  3 ---
 include/configs/mx6sabreauto.h          |  3 ---
 include/configs/mx6sxsabreauto.h        |  3 ---
 include/configs/mx7dsabresd.h           |  3 ---
 include/configs/mxs.h                   |  1 -
 include/configs/pcm058.h                |  3 ---
 include/configs/pfla02.h                |  3 ---
 include/configs/platinum.h              |  3 ---
 include/configs/titanium.h              |  3 ---
 scripts/config_whitelist.txt            |  3 ---
 27 files changed, 27 insertions(+), 50 deletions(-)

Comments

Stefan Agner Feb. 5, 2018, 7:35 p.m. UTC | #1
On 05.02.2018 14:33, Adam Ford wrote:
> This converts the following to Kconfig:
>    CONFIG_APBH_DMA
>    CONFIG_APBH_DMA_BURST
>    CONFIG_APBH_DMA_BURST8
> 
> Signed-off-by: Adam Ford <aford173@gmail.com>
> ---
> Changes in V2:
> Rebase on [U-Boot,v2,1/6] Convert CONFIG_NAND_MXS to Kconfig
> Make the NAND controller in MX6 MX7 autoselect the DMA options
> 
>  configs/bg0900_defconfig                |  1 +
>  configs/mx23_olinuxino_defconfig        |  1 +
>  configs/mx23evk_defconfig               |  1 +
>  configs/mx28evk_auart_console_defconfig |  3 +--
>  configs/mx28evk_defconfig               |  3 +--
>  configs/mx28evk_spi_defconfig           |  3 +--
>  configs/sansa_fuze_plus_defconfig       |  1 +
>  configs/sc_sps_1_defconfig              |  1 +
>  configs/ts4600_defconfig                |  1 +
>  configs/xfi3_defconfig                  |  1 +

There should be really no defconfig change since CONFIG_NAND_MXS should
select CONFIG_APBH_DMA automatically.

It seems that my patchset did not handle i.MX 23/28 correctly. Will fix
this first.

>  drivers/dma/Kconfig                     | 14 ++++++++++++++
>  drivers/mtd/nand/Kconfig                |  3 +++
>  include/configs/aristainetos-common.h   |  3 ---
>  include/configs/cm_fx6.h                |  3 ---
>  include/configs/colibri_imx7.h          |  3 ---
>  include/configs/gw_ventana.h            |  3 ---
>  include/configs/imx6-engicam.h          |  4 ----
>  include/configs/imx6_logic.h            |  3 ---
>  include/configs/mx6sabreauto.h          |  3 ---
>  include/configs/mx6sxsabreauto.h        |  3 ---
>  include/configs/mx7dsabresd.h           |  3 ---
>  include/configs/mxs.h                   |  1 -
>  include/configs/pcm058.h                |  3 ---
>  include/configs/pfla02.h                |  3 ---
>  include/configs/platinum.h              |  3 ---
>  include/configs/titanium.h              |  3 ---
>  scripts/config_whitelist.txt            |  3 ---
>  27 files changed, 27 insertions(+), 50 deletions(-)
> 
> diff --git a/configs/bg0900_defconfig b/configs/bg0900_defconfig
> index 72616ae..7314eff 100644
> --- a/configs/bg0900_defconfig
> +++ b/configs/bg0900_defconfig
> @@ -25,6 +25,7 @@ CONFIG_CMD_MII=y
>  CONFIG_CMD_PING=y
>  CONFIG_CMD_CACHE=y
>  CONFIG_DOS_PARTITION=y
> +CONFIG_APBH_DMA=y
>  # CONFIG_MMC is not set
>  CONFIG_SPI_FLASH=y
>  CONFIG_SPI_FLASH_BAR=y
> diff --git a/configs/mx23_olinuxino_defconfig b/configs/mx23_olinuxino_defconfig
> index 628c11d..2c80c3b 100644
> --- a/configs/mx23_olinuxino_defconfig
> +++ b/configs/mx23_olinuxino_defconfig
> @@ -20,6 +20,7 @@ CONFIG_CMD_CACHE=y
>  CONFIG_CMD_EXT2=y
>  CONFIG_CMD_FAT=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_LED_STATUS=y
>  CONFIG_LED_STATUS_GPIO=y
>  CONFIG_LED_STATUS0=y
> diff --git a/configs/mx23evk_defconfig b/configs/mx23evk_defconfig
> index 6ad7f2c..09f3611 100644
> --- a/configs/mx23evk_defconfig
> +++ b/configs/mx23evk_defconfig
> @@ -24,6 +24,7 @@ CONFIG_CMD_CACHE=y
>  CONFIG_CMD_EXT2=y
>  CONFIG_CMD_FAT=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_USB=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/mx28evk_auart_console_defconfig
> b/configs/mx28evk_auart_console_defconfig
> index 0927333..7bdb905 100644
> --- a/configs/mx28evk_auart_console_defconfig
> +++ b/configs/mx28evk_auart_console_defconfig
> @@ -16,7 +16,6 @@ CONFIG_CMD_BOOTZ=y
>  # CONFIG_CMD_FLASH is not set
>  CONFIG_CMD_GPIO=y
>  CONFIG_CMD_MMC=y
> -CONFIG_CMD_NAND_TRIMFFS=y
>  CONFIG_CMD_SF=y
>  CONFIG_CMD_SPI=y
>  CONFIG_CMD_USB=y
> @@ -34,9 +33,9 @@ CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
>
> CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
>  CONFIG_CMD_UBI=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_NAND=y
> -CONFIG_NAND_MXS=y
>  CONFIG_SPI_FLASH=y
>  CONFIG_SPI_FLASH_SST=y
>  CONFIG_USB=y
> diff --git a/configs/mx28evk_defconfig b/configs/mx28evk_defconfig
> index 21d01bc..d36ad0e 100644
> --- a/configs/mx28evk_defconfig
> +++ b/configs/mx28evk_defconfig
> @@ -16,7 +16,6 @@ CONFIG_CMD_BOOTZ=y
>  # CONFIG_CMD_FLASH is not set
>  CONFIG_CMD_GPIO=y
>  CONFIG_CMD_MMC=y
> -CONFIG_CMD_NAND_TRIMFFS=y
>  CONFIG_CMD_SF=y
>  CONFIG_CMD_SPI=y
>  CONFIG_CMD_USB=y
> @@ -34,9 +33,9 @@ CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
>
> CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
>  CONFIG_CMD_UBI=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_NAND=y
> -CONFIG_NAND_MXS=y
>  CONFIG_SPI_FLASH=y
>  CONFIG_SPI_FLASH_SST=y
>  CONFIG_USB=y
> diff --git a/configs/mx28evk_spi_defconfig b/configs/mx28evk_spi_defconfig
> index dab5394..7bf1d6e 100644
> --- a/configs/mx28evk_spi_defconfig
> +++ b/configs/mx28evk_spi_defconfig
> @@ -15,7 +15,6 @@ CONFIG_CMD_BOOTZ=y
>  # CONFIG_CMD_FLASH is not set
>  CONFIG_CMD_GPIO=y
>  CONFIG_CMD_MMC=y
> -CONFIG_CMD_NAND_TRIMFFS=y
>  CONFIG_CMD_SF=y
>  CONFIG_CMD_SPI=y
>  CONFIG_CMD_USB=y
> @@ -33,9 +32,9 @@ CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
>
> CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
>  CONFIG_CMD_UBI=y
>  CONFIG_ENV_IS_IN_SPI_FLASH=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_NAND=y
> -CONFIG_NAND_MXS=y
>  CONFIG_SPI_FLASH=y
>  CONFIG_SPI_FLASH_SST=y
>  CONFIG_USB=y
> diff --git a/configs/sansa_fuze_plus_defconfig
> b/configs/sansa_fuze_plus_defconfig
> index f2e61c7..d7ec119 100644
> --- a/configs/sansa_fuze_plus_defconfig
> +++ b/configs/sansa_fuze_plus_defconfig
> @@ -25,6 +25,7 @@ CONFIG_CMD_PING=y
>  CONFIG_CMD_CACHE=y
>  CONFIG_CMD_EXT2=y
>  CONFIG_CMD_FAT=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_USB=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/sc_sps_1_defconfig b/configs/sc_sps_1_defconfig
> index faebc04..792d39d 100644
> --- a/configs/sc_sps_1_defconfig
> +++ b/configs/sc_sps_1_defconfig
> @@ -24,6 +24,7 @@ CONFIG_CMD_CACHE=y
>  CONFIG_CMD_EXT2=y
>  CONFIG_CMD_FAT=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_PHYLIB=y
>  CONFIG_USB=y
> diff --git a/configs/ts4600_defconfig b/configs/ts4600_defconfig
> index aab0737..45b872b 100644
> --- a/configs/ts4600_defconfig
> +++ b/configs/ts4600_defconfig
> @@ -17,5 +17,6 @@ CONFIG_CMD_EXT4_WRITE=y
>  CONFIG_CMD_FAT=y
>  CONFIG_CMD_FS_GENERIC=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_OF_LIBFDT=y
> diff --git a/configs/xfi3_defconfig b/configs/xfi3_defconfig
> index 6cdea5e..e335407 100644
> --- a/configs/xfi3_defconfig
> +++ b/configs/xfi3_defconfig
> @@ -24,6 +24,7 @@ CONFIG_CMD_PING=y
>  CONFIG_CMD_CACHE=y
>  CONFIG_CMD_EXT2=y
>  CONFIG_CMD_FAT=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_USB=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
> index 1b92c77..a95d4ce 100644
> --- a/drivers/dma/Kconfig
> +++ b/drivers/dma/Kconfig
> @@ -19,4 +19,18 @@ config TI_EDMA3
>  	  This driver support data transfer between memory
>  	  regions.
>  
> +config APBH_DMA
> +	bool "Support APBH DMA"
> +	help
> +	  Enable APBH DMA driver.
> +
> +if APBH_DMA
> +config APBH_DMA_BURST
> +	bool "Enable DMA BURST"
> +
> +config APBH_DMA_BURST8
> +	bool "Enable DMA BURST8"
> +
> +endif
> +
>  endmenu # menu "DMA Support"
> diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
> index 97ec6cf..4453688 100644
> --- a/drivers/mtd/nand/Kconfig
> +++ b/drivers/mtd/nand/Kconfig
> @@ -142,6 +142,9 @@ config NAND_MXS
>  	bool "MXS NAND support"
>  	depends on MX6 || MX7
>  	imply CMD_NAND
> +	select APBH_DMA
> +	select APBH_DMA_BURST if ARCH_MX6 || ARCH_MX7
> +	select APBH_DMA_BURST8 if ARCH_MX6 || ARCH_MX7
>  	help
>  	  This enables NAND driver for the NAND flash controller on the
>  	  MXS processors.
> diff --git a/include/configs/aristainetos-common.h
> b/include/configs/aristainetos-common.h
> index 9b1a39d..69de44a 100644
> --- a/include/configs/aristainetos-common.h
> +++ b/include/configs/aristainetos-common.h
> @@ -182,9 +182,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* RTC */
>  #define CONFIG_SYS_I2C_RTC_ADDR	0x68
> diff --git a/include/configs/cm_fx6.h b/include/configs/cm_fx6.h
> index 90cf024..39d166a 100644
> --- a/include/configs/cm_fx6.h
> +++ b/include/configs/cm_fx6.h
> @@ -184,9 +184,6 @@
>  #define CONFIG_SYS_MAX_NAND_DEVICE	1
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  /* APBH DMA is required for NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  #endif
>  
>  /* Ethernet */
> diff --git a/include/configs/colibri_imx7.h b/include/configs/colibri_imx7.h
> index d4aaff6..5d9b212 100644
> --- a/include/configs/colibri_imx7.h
> +++ b/include/configs/colibri_imx7.h
> @@ -170,9 +170,6 @@
>  #define CONFIG_MTD_DEVICE	/* needed for mtdparts commands */
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* USB Configs */
>  #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
> diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h
> index 517ad08..6e994b5 100644
> --- a/include/configs/gw_ventana.h
> +++ b/include/configs/gw_ventana.h
> @@ -73,9 +73,6 @@
>    #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>    /* DMA stuff, needed for GPMI/MXS NAND support */
> -  #define CONFIG_APBH_DMA
> -  #define CONFIG_APBH_DMA_BURST
> -  #define CONFIG_APBH_DMA_BURST8
>  #endif
>  
>  #endif /* CONFIG_SPI_FLASH */
> diff --git a/include/configs/imx6-engicam.h b/include/configs/imx6-engicam.h
> index 5f43dfb..246a636 100644
> --- a/include/configs/imx6-engicam.h
> +++ b/include/configs/imx6-engicam.h
> @@ -161,10 +161,6 @@
>  /* MTD device */
>  # define CONFIG_MTD_DEVICE
>  # define CONFIG_MTD_PARTITIONS
> -
> -# define CONFIG_APBH_DMA
> -# define CONFIG_APBH_DMA_BURST
> -# define CONFIG_APBH_DMA_BURST8
>  #endif
>  
>  /* Ethernet */
> diff --git a/include/configs/imx6_logic.h b/include/configs/imx6_logic.h
> index f0ff5b2..8b91a53 100644
> --- a/include/configs/imx6_logic.h
> +++ b/include/configs/imx6_logic.h
> @@ -156,9 +156,6 @@
>  # define CONFIG_MTD_PARTITIONS
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* EEPROM  contains serial no, MAC addr and other Logic PD info */
>  #define CONFIG_I2C_EEPROM
> diff --git a/include/configs/mx6sabreauto.h b/include/configs/mx6sabreauto.h
> index 9982685..bba15a7 100644
> --- a/include/configs/mx6sabreauto.h
> +++ b/include/configs/mx6sabreauto.h
> @@ -72,9 +72,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* PMIC */
>  #define CONFIG_POWER
> diff --git a/include/configs/mx6sxsabreauto.h b/include/configs/mx6sxsabreauto.h
> index 02d6acf..06e416b 100644
> --- a/include/configs/mx6sxsabreauto.h
> +++ b/include/configs/mx6sxsabreauto.h
> @@ -125,9 +125,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* Network */
>  
> diff --git a/include/configs/mx7dsabresd.h b/include/configs/mx7dsabresd.h
> index fd39f22..3a9eaf9 100644
> --- a/include/configs/mx7dsabresd.h
> +++ b/include/configs/mx7dsabresd.h
> @@ -197,9 +197,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  #endif
>  
>  #define CONFIG_ENV_OFFSET		(12 * SZ_64K)
> diff --git a/include/configs/mxs.h b/include/configs/mxs.h
> index 21e51fc..c3e3f59 100644
> --- a/include/configs/mxs.h
> +++ b/include/configs/mxs.h
> @@ -99,7 +99,6 @@
>   */
>  
>  /* APBH DMA */
> -#define CONFIG_APBH_DMA
>  
>  /* GPIO */
>  #define CONFIG_MXS_GPIO
> diff --git a/include/configs/pcm058.h b/include/configs/pcm058.h
> index 6c0902a..ec74ed7 100644
> --- a/include/configs/pcm058.h
> +++ b/include/configs/pcm058.h
> @@ -65,9 +65,6 @@
>  #endif
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* Filesystem support */
>  #define CONFIG_MTD_PARTITIONS
> diff --git a/include/configs/pfla02.h b/include/configs/pfla02.h
> index 83198a1..2001d5d 100644
> --- a/include/configs/pfla02.h
> +++ b/include/configs/pfla02.h
> @@ -64,9 +64,6 @@
>  #endif
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* Filesystem support */
>  #define CONFIG_MTD_PARTITIONS
> diff --git a/include/configs/platinum.h b/include/configs/platinum.h
> index 24c8de9..339ff91 100644
> --- a/include/configs/platinum.h
> +++ b/include/configs/platinum.h
> @@ -75,9 +75,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA config, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* Environment in NAND */
>  #define CONFIG_ENV_OFFSET		(16 << 20)
> diff --git a/include/configs/titanium.h b/include/configs/titanium.h
> index ea18cb6..0fe40ee 100644
> --- a/include/configs/titanium.h
> +++ b/include/configs/titanium.h
> @@ -148,9 +148,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* Environment in NAND */
>  #define CONFIG_ENV_OFFSET		(16 << 20)
> diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
> index ef83c00..bc097db 100644
> --- a/scripts/config_whitelist.txt
> +++ b/scripts/config_whitelist.txt
> @@ -31,9 +31,6 @@ CONFIG_AM335X_USB1_MODE
>  CONFIG_AM437X_USB2PHY2_HOST
>  CONFIG_ANDES_PCU
>  CONFIG_ANDES_PCU_BASE
> -CONFIG_APBH_DMA
> -CONFIG_APBH_DMA_BURST
> -CONFIG_APBH_DMA_BURST8
>  CONFIG_APER_0_BASE
>  CONFIG_APER_1_BASE
>  CONFIG_APER_SIZE
Stefan Agner Feb. 5, 2018, 9:38 p.m. UTC | #2
On 05.02.2018 14:33, Adam Ford wrote:
> This converts the following to Kconfig:
>    CONFIG_APBH_DMA
>    CONFIG_APBH_DMA_BURST
>    CONFIG_APBH_DMA_BURST8
> 
> Signed-off-by: Adam Ford <aford173@gmail.com>
> ---
> Changes in V2:
> Rebase on [U-Boot,v2,1/6] Convert CONFIG_NAND_MXS to Kconfig
> Make the NAND controller in MX6 MX7 autoselect the DMA options
> 
>  configs/bg0900_defconfig                |  1 +
>  configs/mx23_olinuxino_defconfig        |  1 +
>  configs/mx23evk_defconfig               |  1 +
>  configs/mx28evk_auart_console_defconfig |  3 +--
>  configs/mx28evk_defconfig               |  3 +--
>  configs/mx28evk_spi_defconfig           |  3 +--
>  configs/sansa_fuze_plus_defconfig       |  1 +
>  configs/sc_sps_1_defconfig              |  1 +
>  configs/ts4600_defconfig                |  1 +
>  configs/xfi3_defconfig                  |  1 +

Just sent out a patchset ("arm: imx: convert MX23/28 and MXS NAND to
Kconfig") which should properly convert NAND MXS to Kconfig. Can you
rebase again? It really lead to no defconfig changes.

Can you add me to cc in v3? Sorry for the hassle.

--
Stefan


>  drivers/dma/Kconfig                     | 14 ++++++++++++++
>  drivers/mtd/nand/Kconfig                |  3 +++
>  include/configs/aristainetos-common.h   |  3 ---
>  include/configs/cm_fx6.h                |  3 ---
>  include/configs/colibri_imx7.h          |  3 ---
>  include/configs/gw_ventana.h            |  3 ---
>  include/configs/imx6-engicam.h          |  4 ----
>  include/configs/imx6_logic.h            |  3 ---
>  include/configs/mx6sabreauto.h          |  3 ---
>  include/configs/mx6sxsabreauto.h        |  3 ---
>  include/configs/mx7dsabresd.h           |  3 ---
>  include/configs/mxs.h                   |  1 -
>  include/configs/pcm058.h                |  3 ---
>  include/configs/pfla02.h                |  3 ---
>  include/configs/platinum.h              |  3 ---
>  include/configs/titanium.h              |  3 ---
>  scripts/config_whitelist.txt            |  3 ---
>  27 files changed, 27 insertions(+), 50 deletions(-)
> 
> diff --git a/configs/bg0900_defconfig b/configs/bg0900_defconfig
> index 72616ae..7314eff 100644
> --- a/configs/bg0900_defconfig
> +++ b/configs/bg0900_defconfig
> @@ -25,6 +25,7 @@ CONFIG_CMD_MII=y
>  CONFIG_CMD_PING=y
>  CONFIG_CMD_CACHE=y
>  CONFIG_DOS_PARTITION=y
> +CONFIG_APBH_DMA=y
>  # CONFIG_MMC is not set
>  CONFIG_SPI_FLASH=y
>  CONFIG_SPI_FLASH_BAR=y
> diff --git a/configs/mx23_olinuxino_defconfig b/configs/mx23_olinuxino_defconfig
> index 628c11d..2c80c3b 100644
> --- a/configs/mx23_olinuxino_defconfig
> +++ b/configs/mx23_olinuxino_defconfig
> @@ -20,6 +20,7 @@ CONFIG_CMD_CACHE=y
>  CONFIG_CMD_EXT2=y
>  CONFIG_CMD_FAT=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_LED_STATUS=y
>  CONFIG_LED_STATUS_GPIO=y
>  CONFIG_LED_STATUS0=y
> diff --git a/configs/mx23evk_defconfig b/configs/mx23evk_defconfig
> index 6ad7f2c..09f3611 100644
> --- a/configs/mx23evk_defconfig
> +++ b/configs/mx23evk_defconfig
> @@ -24,6 +24,7 @@ CONFIG_CMD_CACHE=y
>  CONFIG_CMD_EXT2=y
>  CONFIG_CMD_FAT=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_USB=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/mx28evk_auart_console_defconfig
> b/configs/mx28evk_auart_console_defconfig
> index 0927333..7bdb905 100644
> --- a/configs/mx28evk_auart_console_defconfig
> +++ b/configs/mx28evk_auart_console_defconfig
> @@ -16,7 +16,6 @@ CONFIG_CMD_BOOTZ=y
>  # CONFIG_CMD_FLASH is not set
>  CONFIG_CMD_GPIO=y
>  CONFIG_CMD_MMC=y
> -CONFIG_CMD_NAND_TRIMFFS=y
>  CONFIG_CMD_SF=y
>  CONFIG_CMD_SPI=y
>  CONFIG_CMD_USB=y
> @@ -34,9 +33,9 @@ CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
>
> CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
>  CONFIG_CMD_UBI=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_NAND=y
> -CONFIG_NAND_MXS=y
>  CONFIG_SPI_FLASH=y
>  CONFIG_SPI_FLASH_SST=y
>  CONFIG_USB=y
> diff --git a/configs/mx28evk_defconfig b/configs/mx28evk_defconfig
> index 21d01bc..d36ad0e 100644
> --- a/configs/mx28evk_defconfig
> +++ b/configs/mx28evk_defconfig
> @@ -16,7 +16,6 @@ CONFIG_CMD_BOOTZ=y
>  # CONFIG_CMD_FLASH is not set
>  CONFIG_CMD_GPIO=y
>  CONFIG_CMD_MMC=y
> -CONFIG_CMD_NAND_TRIMFFS=y
>  CONFIG_CMD_SF=y
>  CONFIG_CMD_SPI=y
>  CONFIG_CMD_USB=y
> @@ -34,9 +33,9 @@ CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
>
> CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
>  CONFIG_CMD_UBI=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_NAND=y
> -CONFIG_NAND_MXS=y
>  CONFIG_SPI_FLASH=y
>  CONFIG_SPI_FLASH_SST=y
>  CONFIG_USB=y
> diff --git a/configs/mx28evk_spi_defconfig b/configs/mx28evk_spi_defconfig
> index dab5394..7bf1d6e 100644
> --- a/configs/mx28evk_spi_defconfig
> +++ b/configs/mx28evk_spi_defconfig
> @@ -15,7 +15,6 @@ CONFIG_CMD_BOOTZ=y
>  # CONFIG_CMD_FLASH is not set
>  CONFIG_CMD_GPIO=y
>  CONFIG_CMD_MMC=y
> -CONFIG_CMD_NAND_TRIMFFS=y
>  CONFIG_CMD_SF=y
>  CONFIG_CMD_SPI=y
>  CONFIG_CMD_USB=y
> @@ -33,9 +32,9 @@ CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
>
> CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
>  CONFIG_CMD_UBI=y
>  CONFIG_ENV_IS_IN_SPI_FLASH=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_NAND=y
> -CONFIG_NAND_MXS=y
>  CONFIG_SPI_FLASH=y
>  CONFIG_SPI_FLASH_SST=y
>  CONFIG_USB=y
> diff --git a/configs/sansa_fuze_plus_defconfig
> b/configs/sansa_fuze_plus_defconfig
> index f2e61c7..d7ec119 100644
> --- a/configs/sansa_fuze_plus_defconfig
> +++ b/configs/sansa_fuze_plus_defconfig
> @@ -25,6 +25,7 @@ CONFIG_CMD_PING=y
>  CONFIG_CMD_CACHE=y
>  CONFIG_CMD_EXT2=y
>  CONFIG_CMD_FAT=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_USB=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/configs/sc_sps_1_defconfig b/configs/sc_sps_1_defconfig
> index faebc04..792d39d 100644
> --- a/configs/sc_sps_1_defconfig
> +++ b/configs/sc_sps_1_defconfig
> @@ -24,6 +24,7 @@ CONFIG_CMD_CACHE=y
>  CONFIG_CMD_EXT2=y
>  CONFIG_CMD_FAT=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_PHYLIB=y
>  CONFIG_USB=y
> diff --git a/configs/ts4600_defconfig b/configs/ts4600_defconfig
> index aab0737..45b872b 100644
> --- a/configs/ts4600_defconfig
> +++ b/configs/ts4600_defconfig
> @@ -17,5 +17,6 @@ CONFIG_CMD_EXT4_WRITE=y
>  CONFIG_CMD_FAT=y
>  CONFIG_CMD_FS_GENERIC=y
>  CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_OF_LIBFDT=y
> diff --git a/configs/xfi3_defconfig b/configs/xfi3_defconfig
> index 6cdea5e..e335407 100644
> --- a/configs/xfi3_defconfig
> +++ b/configs/xfi3_defconfig
> @@ -24,6 +24,7 @@ CONFIG_CMD_PING=y
>  CONFIG_CMD_CACHE=y
>  CONFIG_CMD_EXT2=y
>  CONFIG_CMD_FAT=y
> +CONFIG_APBH_DMA=y
>  CONFIG_MMC_MXS=y
>  CONFIG_USB=y
>  CONFIG_USB_EHCI_HCD=y
> diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
> index 1b92c77..a95d4ce 100644
> --- a/drivers/dma/Kconfig
> +++ b/drivers/dma/Kconfig
> @@ -19,4 +19,18 @@ config TI_EDMA3
>  	  This driver support data transfer between memory
>  	  regions.
>  
> +config APBH_DMA
> +	bool "Support APBH DMA"
> +	help
> +	  Enable APBH DMA driver.
> +
> +if APBH_DMA
> +config APBH_DMA_BURST
> +	bool "Enable DMA BURST"
> +
> +config APBH_DMA_BURST8
> +	bool "Enable DMA BURST8"
> +
> +endif
> +
>  endmenu # menu "DMA Support"
> diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
> index 97ec6cf..4453688 100644
> --- a/drivers/mtd/nand/Kconfig
> +++ b/drivers/mtd/nand/Kconfig
> @@ -142,6 +142,9 @@ config NAND_MXS
>  	bool "MXS NAND support"
>  	depends on MX6 || MX7
>  	imply CMD_NAND
> +	select APBH_DMA
> +	select APBH_DMA_BURST if ARCH_MX6 || ARCH_MX7
> +	select APBH_DMA_BURST8 if ARCH_MX6 || ARCH_MX7
>  	help
>  	  This enables NAND driver for the NAND flash controller on the
>  	  MXS processors.
> diff --git a/include/configs/aristainetos-common.h
> b/include/configs/aristainetos-common.h
> index 9b1a39d..69de44a 100644
> --- a/include/configs/aristainetos-common.h
> +++ b/include/configs/aristainetos-common.h
> @@ -182,9 +182,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* RTC */
>  #define CONFIG_SYS_I2C_RTC_ADDR	0x68
> diff --git a/include/configs/cm_fx6.h b/include/configs/cm_fx6.h
> index 90cf024..39d166a 100644
> --- a/include/configs/cm_fx6.h
> +++ b/include/configs/cm_fx6.h
> @@ -184,9 +184,6 @@
>  #define CONFIG_SYS_MAX_NAND_DEVICE	1
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  /* APBH DMA is required for NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  #endif
>  
>  /* Ethernet */
> diff --git a/include/configs/colibri_imx7.h b/include/configs/colibri_imx7.h
> index d4aaff6..5d9b212 100644
> --- a/include/configs/colibri_imx7.h
> +++ b/include/configs/colibri_imx7.h
> @@ -170,9 +170,6 @@
>  #define CONFIG_MTD_DEVICE	/* needed for mtdparts commands */
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* USB Configs */
>  #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
> diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h
> index 517ad08..6e994b5 100644
> --- a/include/configs/gw_ventana.h
> +++ b/include/configs/gw_ventana.h
> @@ -73,9 +73,6 @@
>    #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>    /* DMA stuff, needed for GPMI/MXS NAND support */
> -  #define CONFIG_APBH_DMA
> -  #define CONFIG_APBH_DMA_BURST
> -  #define CONFIG_APBH_DMA_BURST8
>  #endif
>  
>  #endif /* CONFIG_SPI_FLASH */
> diff --git a/include/configs/imx6-engicam.h b/include/configs/imx6-engicam.h
> index 5f43dfb..246a636 100644
> --- a/include/configs/imx6-engicam.h
> +++ b/include/configs/imx6-engicam.h
> @@ -161,10 +161,6 @@
>  /* MTD device */
>  # define CONFIG_MTD_DEVICE
>  # define CONFIG_MTD_PARTITIONS
> -
> -# define CONFIG_APBH_DMA
> -# define CONFIG_APBH_DMA_BURST
> -# define CONFIG_APBH_DMA_BURST8
>  #endif
>  
>  /* Ethernet */
> diff --git a/include/configs/imx6_logic.h b/include/configs/imx6_logic.h
> index f0ff5b2..8b91a53 100644
> --- a/include/configs/imx6_logic.h
> +++ b/include/configs/imx6_logic.h
> @@ -156,9 +156,6 @@
>  # define CONFIG_MTD_PARTITIONS
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* EEPROM  contains serial no, MAC addr and other Logic PD info */
>  #define CONFIG_I2C_EEPROM
> diff --git a/include/configs/mx6sabreauto.h b/include/configs/mx6sabreauto.h
> index 9982685..bba15a7 100644
> --- a/include/configs/mx6sabreauto.h
> +++ b/include/configs/mx6sabreauto.h
> @@ -72,9 +72,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* PMIC */
>  #define CONFIG_POWER
> diff --git a/include/configs/mx6sxsabreauto.h b/include/configs/mx6sxsabreauto.h
> index 02d6acf..06e416b 100644
> --- a/include/configs/mx6sxsabreauto.h
> +++ b/include/configs/mx6sxsabreauto.h
> @@ -125,9 +125,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* Network */
>  
> diff --git a/include/configs/mx7dsabresd.h b/include/configs/mx7dsabresd.h
> index fd39f22..3a9eaf9 100644
> --- a/include/configs/mx7dsabresd.h
> +++ b/include/configs/mx7dsabresd.h
> @@ -197,9 +197,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  #endif
>  
>  #define CONFIG_ENV_OFFSET		(12 * SZ_64K)
> diff --git a/include/configs/mxs.h b/include/configs/mxs.h
> index 21e51fc..c3e3f59 100644
> --- a/include/configs/mxs.h
> +++ b/include/configs/mxs.h
> @@ -99,7 +99,6 @@
>   */
>  
>  /* APBH DMA */
> -#define CONFIG_APBH_DMA
>  
>  /* GPIO */
>  #define CONFIG_MXS_GPIO
> diff --git a/include/configs/pcm058.h b/include/configs/pcm058.h
> index 6c0902a..ec74ed7 100644
> --- a/include/configs/pcm058.h
> +++ b/include/configs/pcm058.h
> @@ -65,9 +65,6 @@
>  #endif
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* Filesystem support */
>  #define CONFIG_MTD_PARTITIONS
> diff --git a/include/configs/pfla02.h b/include/configs/pfla02.h
> index 83198a1..2001d5d 100644
> --- a/include/configs/pfla02.h
> +++ b/include/configs/pfla02.h
> @@ -64,9 +64,6 @@
>  #endif
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* Filesystem support */
>  #define CONFIG_MTD_PARTITIONS
> diff --git a/include/configs/platinum.h b/include/configs/platinum.h
> index 24c8de9..339ff91 100644
> --- a/include/configs/platinum.h
> +++ b/include/configs/platinum.h
> @@ -75,9 +75,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA config, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* Environment in NAND */
>  #define CONFIG_ENV_OFFSET		(16 << 20)
> diff --git a/include/configs/titanium.h b/include/configs/titanium.h
> index ea18cb6..0fe40ee 100644
> --- a/include/configs/titanium.h
> +++ b/include/configs/titanium.h
> @@ -148,9 +148,6 @@
>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>  
>  /* DMA stuff, needed for GPMI/MXS NAND support */
> -#define CONFIG_APBH_DMA
> -#define CONFIG_APBH_DMA_BURST
> -#define CONFIG_APBH_DMA_BURST8
>  
>  /* Environment in NAND */
>  #define CONFIG_ENV_OFFSET		(16 << 20)
> diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
> index ef83c00..bc097db 100644
> --- a/scripts/config_whitelist.txt
> +++ b/scripts/config_whitelist.txt
> @@ -31,9 +31,6 @@ CONFIG_AM335X_USB1_MODE
>  CONFIG_AM437X_USB2PHY2_HOST
>  CONFIG_ANDES_PCU
>  CONFIG_ANDES_PCU_BASE
> -CONFIG_APBH_DMA
> -CONFIG_APBH_DMA_BURST
> -CONFIG_APBH_DMA_BURST8
>  CONFIG_APER_0_BASE
>  CONFIG_APER_1_BASE
>  CONFIG_APER_SIZE
Adam Ford Feb. 6, 2018, 2:08 p.m. UTC | #3
On Mon, Feb 5, 2018 at 3:38 PM,  <stefan@agner.ch> wrote:
> On 05.02.2018 14:33, Adam Ford wrote:
>> This converts the following to Kconfig:
>>    CONFIG_APBH_DMA
>>    CONFIG_APBH_DMA_BURST
>>    CONFIG_APBH_DMA_BURST8
>>
>> Signed-off-by: Adam Ford <aford173@gmail.com>
>> ---
>> Changes in V2:
>> Rebase on [U-Boot,v2,1/6] Convert CONFIG_NAND_MXS to Kconfig
>> Make the NAND controller in MX6 MX7 autoselect the DMA options
>>
>>  configs/bg0900_defconfig                |  1 +
>>  configs/mx23_olinuxino_defconfig        |  1 +
>>  configs/mx23evk_defconfig               |  1 +
>>  configs/mx28evk_auart_console_defconfig |  3 +--
>>  configs/mx28evk_defconfig               |  3 +--
>>  configs/mx28evk_spi_defconfig           |  3 +--
>>  configs/sansa_fuze_plus_defconfig       |  1 +
>>  configs/sc_sps_1_defconfig              |  1 +
>>  configs/ts4600_defconfig                |  1 +
>>  configs/xfi3_defconfig                  |  1 +
>
> Just sent out a patchset ("arm: imx: convert MX23/28 and MXS NAND to
> Kconfig") which should properly convert NAND MXS to Kconfig. Can you
> rebase again? It really lead to no defconfig changes.
>
> Can you add me to cc in v3? Sorry for the hassle.

No problem.  I'm still getting some defconfig changes, but I'll
investigate that and see if I can fix it as part of my patch to
eliminate the defconfig changes.
I'll CC you when I have something ready for review.

adam
>
> --
> Stefan
>
>
>>  drivers/dma/Kconfig                     | 14 ++++++++++++++
>>  drivers/mtd/nand/Kconfig                |  3 +++
>>  include/configs/aristainetos-common.h   |  3 ---
>>  include/configs/cm_fx6.h                |  3 ---
>>  include/configs/colibri_imx7.h          |  3 ---
>>  include/configs/gw_ventana.h            |  3 ---
>>  include/configs/imx6-engicam.h          |  4 ----
>>  include/configs/imx6_logic.h            |  3 ---
>>  include/configs/mx6sabreauto.h          |  3 ---
>>  include/configs/mx6sxsabreauto.h        |  3 ---
>>  include/configs/mx7dsabresd.h           |  3 ---
>>  include/configs/mxs.h                   |  1 -
>>  include/configs/pcm058.h                |  3 ---
>>  include/configs/pfla02.h                |  3 ---
>>  include/configs/platinum.h              |  3 ---
>>  include/configs/titanium.h              |  3 ---
>>  scripts/config_whitelist.txt            |  3 ---
>>  27 files changed, 27 insertions(+), 50 deletions(-)
>>
>> diff --git a/configs/bg0900_defconfig b/configs/bg0900_defconfig
>> index 72616ae..7314eff 100644
>> --- a/configs/bg0900_defconfig
>> +++ b/configs/bg0900_defconfig
>> @@ -25,6 +25,7 @@ CONFIG_CMD_MII=y
>>  CONFIG_CMD_PING=y
>>  CONFIG_CMD_CACHE=y
>>  CONFIG_DOS_PARTITION=y
>> +CONFIG_APBH_DMA=y
>>  # CONFIG_MMC is not set
>>  CONFIG_SPI_FLASH=y
>>  CONFIG_SPI_FLASH_BAR=y
>> diff --git a/configs/mx23_olinuxino_defconfig b/configs/mx23_olinuxino_defconfig
>> index 628c11d..2c80c3b 100644
>> --- a/configs/mx23_olinuxino_defconfig
>> +++ b/configs/mx23_olinuxino_defconfig
>> @@ -20,6 +20,7 @@ CONFIG_CMD_CACHE=y
>>  CONFIG_CMD_EXT2=y
>>  CONFIG_CMD_FAT=y
>>  CONFIG_ENV_IS_IN_MMC=y
>> +CONFIG_APBH_DMA=y
>>  CONFIG_LED_STATUS=y
>>  CONFIG_LED_STATUS_GPIO=y
>>  CONFIG_LED_STATUS0=y
>> diff --git a/configs/mx23evk_defconfig b/configs/mx23evk_defconfig
>> index 6ad7f2c..09f3611 100644
>> --- a/configs/mx23evk_defconfig
>> +++ b/configs/mx23evk_defconfig
>> @@ -24,6 +24,7 @@ CONFIG_CMD_CACHE=y
>>  CONFIG_CMD_EXT2=y
>>  CONFIG_CMD_FAT=y
>>  CONFIG_ENV_IS_IN_MMC=y
>> +CONFIG_APBH_DMA=y
>>  CONFIG_MMC_MXS=y
>>  CONFIG_USB=y
>>  CONFIG_USB_EHCI_HCD=y
>> diff --git a/configs/mx28evk_auart_console_defconfig
>> b/configs/mx28evk_auart_console_defconfig
>> index 0927333..7bdb905 100644
>> --- a/configs/mx28evk_auart_console_defconfig
>> +++ b/configs/mx28evk_auart_console_defconfig
>> @@ -16,7 +16,6 @@ CONFIG_CMD_BOOTZ=y
>>  # CONFIG_CMD_FLASH is not set
>>  CONFIG_CMD_GPIO=y
>>  CONFIG_CMD_MMC=y
>> -CONFIG_CMD_NAND_TRIMFFS=y
>>  CONFIG_CMD_SF=y
>>  CONFIG_CMD_SPI=y
>>  CONFIG_CMD_USB=y
>> @@ -34,9 +33,9 @@ CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
>>
>> CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
>>  CONFIG_CMD_UBI=y
>>  CONFIG_ENV_IS_IN_MMC=y
>> +CONFIG_APBH_DMA=y
>>  CONFIG_MMC_MXS=y
>>  CONFIG_NAND=y
>> -CONFIG_NAND_MXS=y
>>  CONFIG_SPI_FLASH=y
>>  CONFIG_SPI_FLASH_SST=y
>>  CONFIG_USB=y
>> diff --git a/configs/mx28evk_defconfig b/configs/mx28evk_defconfig
>> index 21d01bc..d36ad0e 100644
>> --- a/configs/mx28evk_defconfig
>> +++ b/configs/mx28evk_defconfig
>> @@ -16,7 +16,6 @@ CONFIG_CMD_BOOTZ=y
>>  # CONFIG_CMD_FLASH is not set
>>  CONFIG_CMD_GPIO=y
>>  CONFIG_CMD_MMC=y
>> -CONFIG_CMD_NAND_TRIMFFS=y
>>  CONFIG_CMD_SF=y
>>  CONFIG_CMD_SPI=y
>>  CONFIG_CMD_USB=y
>> @@ -34,9 +33,9 @@ CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
>>
>> CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
>>  CONFIG_CMD_UBI=y
>>  CONFIG_ENV_IS_IN_MMC=y
>> +CONFIG_APBH_DMA=y
>>  CONFIG_MMC_MXS=y
>>  CONFIG_NAND=y
>> -CONFIG_NAND_MXS=y
>>  CONFIG_SPI_FLASH=y
>>  CONFIG_SPI_FLASH_SST=y
>>  CONFIG_USB=y
>> diff --git a/configs/mx28evk_spi_defconfig b/configs/mx28evk_spi_defconfig
>> index dab5394..7bf1d6e 100644
>> --- a/configs/mx28evk_spi_defconfig
>> +++ b/configs/mx28evk_spi_defconfig
>> @@ -15,7 +15,6 @@ CONFIG_CMD_BOOTZ=y
>>  # CONFIG_CMD_FLASH is not set
>>  CONFIG_CMD_GPIO=y
>>  CONFIG_CMD_MMC=y
>> -CONFIG_CMD_NAND_TRIMFFS=y
>>  CONFIG_CMD_SF=y
>>  CONFIG_CMD_SPI=y
>>  CONFIG_CMD_USB=y
>> @@ -33,9 +32,9 @@ CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
>>
>> CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
>>  CONFIG_CMD_UBI=y
>>  CONFIG_ENV_IS_IN_SPI_FLASH=y
>> +CONFIG_APBH_DMA=y
>>  CONFIG_MMC_MXS=y
>>  CONFIG_NAND=y
>> -CONFIG_NAND_MXS=y
>>  CONFIG_SPI_FLASH=y
>>  CONFIG_SPI_FLASH_SST=y
>>  CONFIG_USB=y
>> diff --git a/configs/sansa_fuze_plus_defconfig
>> b/configs/sansa_fuze_plus_defconfig
>> index f2e61c7..d7ec119 100644
>> --- a/configs/sansa_fuze_plus_defconfig
>> +++ b/configs/sansa_fuze_plus_defconfig
>> @@ -25,6 +25,7 @@ CONFIG_CMD_PING=y
>>  CONFIG_CMD_CACHE=y
>>  CONFIG_CMD_EXT2=y
>>  CONFIG_CMD_FAT=y
>> +CONFIG_APBH_DMA=y
>>  CONFIG_MMC_MXS=y
>>  CONFIG_USB=y
>>  CONFIG_USB_EHCI_HCD=y
>> diff --git a/configs/sc_sps_1_defconfig b/configs/sc_sps_1_defconfig
>> index faebc04..792d39d 100644
>> --- a/configs/sc_sps_1_defconfig
>> +++ b/configs/sc_sps_1_defconfig
>> @@ -24,6 +24,7 @@ CONFIG_CMD_CACHE=y
>>  CONFIG_CMD_EXT2=y
>>  CONFIG_CMD_FAT=y
>>  CONFIG_ENV_IS_IN_MMC=y
>> +CONFIG_APBH_DMA=y
>>  CONFIG_MMC_MXS=y
>>  CONFIG_PHYLIB=y
>>  CONFIG_USB=y
>> diff --git a/configs/ts4600_defconfig b/configs/ts4600_defconfig
>> index aab0737..45b872b 100644
>> --- a/configs/ts4600_defconfig
>> +++ b/configs/ts4600_defconfig
>> @@ -17,5 +17,6 @@ CONFIG_CMD_EXT4_WRITE=y
>>  CONFIG_CMD_FAT=y
>>  CONFIG_CMD_FS_GENERIC=y
>>  CONFIG_ENV_IS_IN_MMC=y
>> +CONFIG_APBH_DMA=y
>>  CONFIG_MMC_MXS=y
>>  CONFIG_OF_LIBFDT=y
>> diff --git a/configs/xfi3_defconfig b/configs/xfi3_defconfig
>> index 6cdea5e..e335407 100644
>> --- a/configs/xfi3_defconfig
>> +++ b/configs/xfi3_defconfig
>> @@ -24,6 +24,7 @@ CONFIG_CMD_PING=y
>>  CONFIG_CMD_CACHE=y
>>  CONFIG_CMD_EXT2=y
>>  CONFIG_CMD_FAT=y
>> +CONFIG_APBH_DMA=y
>>  CONFIG_MMC_MXS=y
>>  CONFIG_USB=y
>>  CONFIG_USB_EHCI_HCD=y
>> diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
>> index 1b92c77..a95d4ce 100644
>> --- a/drivers/dma/Kconfig
>> +++ b/drivers/dma/Kconfig
>> @@ -19,4 +19,18 @@ config TI_EDMA3
>>         This driver support data transfer between memory
>>         regions.
>>
>> +config APBH_DMA
>> +     bool "Support APBH DMA"
>> +     help
>> +       Enable APBH DMA driver.
>> +
>> +if APBH_DMA
>> +config APBH_DMA_BURST
>> +     bool "Enable DMA BURST"
>> +
>> +config APBH_DMA_BURST8
>> +     bool "Enable DMA BURST8"
>> +
>> +endif
>> +
>>  endmenu # menu "DMA Support"
>> diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
>> index 97ec6cf..4453688 100644
>> --- a/drivers/mtd/nand/Kconfig
>> +++ b/drivers/mtd/nand/Kconfig
>> @@ -142,6 +142,9 @@ config NAND_MXS
>>       bool "MXS NAND support"
>>       depends on MX6 || MX7
>>       imply CMD_NAND
>> +     select APBH_DMA
>> +     select APBH_DMA_BURST if ARCH_MX6 || ARCH_MX7
>> +     select APBH_DMA_BURST8 if ARCH_MX6 || ARCH_MX7
>>       help
>>         This enables NAND driver for the NAND flash controller on the
>>         MXS processors.
>> diff --git a/include/configs/aristainetos-common.h
>> b/include/configs/aristainetos-common.h
>> index 9b1a39d..69de44a 100644
>> --- a/include/configs/aristainetos-common.h
>> +++ b/include/configs/aristainetos-common.h
>> @@ -182,9 +182,6 @@
>>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>>
>>  /* DMA stuff, needed for GPMI/MXS NAND support */
>> -#define CONFIG_APBH_DMA
>> -#define CONFIG_APBH_DMA_BURST
>> -#define CONFIG_APBH_DMA_BURST8
>>
>>  /* RTC */
>>  #define CONFIG_SYS_I2C_RTC_ADDR      0x68
>> diff --git a/include/configs/cm_fx6.h b/include/configs/cm_fx6.h
>> index 90cf024..39d166a 100644
>> --- a/include/configs/cm_fx6.h
>> +++ b/include/configs/cm_fx6.h
>> @@ -184,9 +184,6 @@
>>  #define CONFIG_SYS_MAX_NAND_DEVICE   1
>>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>>  /* APBH DMA is required for NAND support */
>> -#define CONFIG_APBH_DMA
>> -#define CONFIG_APBH_DMA_BURST
>> -#define CONFIG_APBH_DMA_BURST8
>>  #endif
>>
>>  /* Ethernet */
>> diff --git a/include/configs/colibri_imx7.h b/include/configs/colibri_imx7.h
>> index d4aaff6..5d9b212 100644
>> --- a/include/configs/colibri_imx7.h
>> +++ b/include/configs/colibri_imx7.h
>> @@ -170,9 +170,6 @@
>>  #define CONFIG_MTD_DEVICE    /* needed for mtdparts commands */
>>
>>  /* DMA stuff, needed for GPMI/MXS NAND support */
>> -#define CONFIG_APBH_DMA
>> -#define CONFIG_APBH_DMA_BURST
>> -#define CONFIG_APBH_DMA_BURST8
>>
>>  /* USB Configs */
>>  #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
>> diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h
>> index 517ad08..6e994b5 100644
>> --- a/include/configs/gw_ventana.h
>> +++ b/include/configs/gw_ventana.h
>> @@ -73,9 +73,6 @@
>>    #define CONFIG_SYS_NAND_ONFI_DETECTION
>>
>>    /* DMA stuff, needed for GPMI/MXS NAND support */
>> -  #define CONFIG_APBH_DMA
>> -  #define CONFIG_APBH_DMA_BURST
>> -  #define CONFIG_APBH_DMA_BURST8
>>  #endif
>>
>>  #endif /* CONFIG_SPI_FLASH */
>> diff --git a/include/configs/imx6-engicam.h b/include/configs/imx6-engicam.h
>> index 5f43dfb..246a636 100644
>> --- a/include/configs/imx6-engicam.h
>> +++ b/include/configs/imx6-engicam.h
>> @@ -161,10 +161,6 @@
>>  /* MTD device */
>>  # define CONFIG_MTD_DEVICE
>>  # define CONFIG_MTD_PARTITIONS
>> -
>> -# define CONFIG_APBH_DMA
>> -# define CONFIG_APBH_DMA_BURST
>> -# define CONFIG_APBH_DMA_BURST8
>>  #endif
>>
>>  /* Ethernet */
>> diff --git a/include/configs/imx6_logic.h b/include/configs/imx6_logic.h
>> index f0ff5b2..8b91a53 100644
>> --- a/include/configs/imx6_logic.h
>> +++ b/include/configs/imx6_logic.h
>> @@ -156,9 +156,6 @@
>>  # define CONFIG_MTD_PARTITIONS
>>
>>  /* DMA stuff, needed for GPMI/MXS NAND support */
>> -#define CONFIG_APBH_DMA
>> -#define CONFIG_APBH_DMA_BURST
>> -#define CONFIG_APBH_DMA_BURST8
>>
>>  /* EEPROM  contains serial no, MAC addr and other Logic PD info */
>>  #define CONFIG_I2C_EEPROM
>> diff --git a/include/configs/mx6sabreauto.h b/include/configs/mx6sabreauto.h
>> index 9982685..bba15a7 100644
>> --- a/include/configs/mx6sabreauto.h
>> +++ b/include/configs/mx6sabreauto.h
>> @@ -72,9 +72,6 @@
>>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>>
>>  /* DMA stuff, needed for GPMI/MXS NAND support */
>> -#define CONFIG_APBH_DMA
>> -#define CONFIG_APBH_DMA_BURST
>> -#define CONFIG_APBH_DMA_BURST8
>>
>>  /* PMIC */
>>  #define CONFIG_POWER
>> diff --git a/include/configs/mx6sxsabreauto.h b/include/configs/mx6sxsabreauto.h
>> index 02d6acf..06e416b 100644
>> --- a/include/configs/mx6sxsabreauto.h
>> +++ b/include/configs/mx6sxsabreauto.h
>> @@ -125,9 +125,6 @@
>>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>>
>>  /* DMA stuff, needed for GPMI/MXS NAND support */
>> -#define CONFIG_APBH_DMA
>> -#define CONFIG_APBH_DMA_BURST
>> -#define CONFIG_APBH_DMA_BURST8
>>
>>  /* Network */
>>
>> diff --git a/include/configs/mx7dsabresd.h b/include/configs/mx7dsabresd.h
>> index fd39f22..3a9eaf9 100644
>> --- a/include/configs/mx7dsabresd.h
>> +++ b/include/configs/mx7dsabresd.h
>> @@ -197,9 +197,6 @@
>>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>>
>>  /* DMA stuff, needed for GPMI/MXS NAND support */
>> -#define CONFIG_APBH_DMA
>> -#define CONFIG_APBH_DMA_BURST
>> -#define CONFIG_APBH_DMA_BURST8
>>  #endif
>>
>>  #define CONFIG_ENV_OFFSET            (12 * SZ_64K)
>> diff --git a/include/configs/mxs.h b/include/configs/mxs.h
>> index 21e51fc..c3e3f59 100644
>> --- a/include/configs/mxs.h
>> +++ b/include/configs/mxs.h
>> @@ -99,7 +99,6 @@
>>   */
>>
>>  /* APBH DMA */
>> -#define CONFIG_APBH_DMA
>>
>>  /* GPIO */
>>  #define CONFIG_MXS_GPIO
>> diff --git a/include/configs/pcm058.h b/include/configs/pcm058.h
>> index 6c0902a..ec74ed7 100644
>> --- a/include/configs/pcm058.h
>> +++ b/include/configs/pcm058.h
>> @@ -65,9 +65,6 @@
>>  #endif
>>
>>  /* DMA stuff, needed for GPMI/MXS NAND support */
>> -#define CONFIG_APBH_DMA
>> -#define CONFIG_APBH_DMA_BURST
>> -#define CONFIG_APBH_DMA_BURST8
>>
>>  /* Filesystem support */
>>  #define CONFIG_MTD_PARTITIONS
>> diff --git a/include/configs/pfla02.h b/include/configs/pfla02.h
>> index 83198a1..2001d5d 100644
>> --- a/include/configs/pfla02.h
>> +++ b/include/configs/pfla02.h
>> @@ -64,9 +64,6 @@
>>  #endif
>>
>>  /* DMA stuff, needed for GPMI/MXS NAND support */
>> -#define CONFIG_APBH_DMA
>> -#define CONFIG_APBH_DMA_BURST
>> -#define CONFIG_APBH_DMA_BURST8
>>
>>  /* Filesystem support */
>>  #define CONFIG_MTD_PARTITIONS
>> diff --git a/include/configs/platinum.h b/include/configs/platinum.h
>> index 24c8de9..339ff91 100644
>> --- a/include/configs/platinum.h
>> +++ b/include/configs/platinum.h
>> @@ -75,9 +75,6 @@
>>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>>
>>  /* DMA config, needed for GPMI/MXS NAND support */
>> -#define CONFIG_APBH_DMA
>> -#define CONFIG_APBH_DMA_BURST
>> -#define CONFIG_APBH_DMA_BURST8
>>
>>  /* Environment in NAND */
>>  #define CONFIG_ENV_OFFSET            (16 << 20)
>> diff --git a/include/configs/titanium.h b/include/configs/titanium.h
>> index ea18cb6..0fe40ee 100644
>> --- a/include/configs/titanium.h
>> +++ b/include/configs/titanium.h
>> @@ -148,9 +148,6 @@
>>  #define CONFIG_SYS_NAND_ONFI_DETECTION
>>
>>  /* DMA stuff, needed for GPMI/MXS NAND support */
>> -#define CONFIG_APBH_DMA
>> -#define CONFIG_APBH_DMA_BURST
>> -#define CONFIG_APBH_DMA_BURST8
>>
>>  /* Environment in NAND */
>>  #define CONFIG_ENV_OFFSET            (16 << 20)
>> diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
>> index ef83c00..bc097db 100644
>> --- a/scripts/config_whitelist.txt
>> +++ b/scripts/config_whitelist.txt
>> @@ -31,9 +31,6 @@ CONFIG_AM335X_USB1_MODE
>>  CONFIG_AM437X_USB2PHY2_HOST
>>  CONFIG_ANDES_PCU
>>  CONFIG_ANDES_PCU_BASE
>> -CONFIG_APBH_DMA
>> -CONFIG_APBH_DMA_BURST
>> -CONFIG_APBH_DMA_BURST8
>>  CONFIG_APER_0_BASE
>>  CONFIG_APER_1_BASE
>>  CONFIG_APER_SIZE
diff mbox series

Patch

diff --git a/configs/bg0900_defconfig b/configs/bg0900_defconfig
index 72616ae..7314eff 100644
--- a/configs/bg0900_defconfig
+++ b/configs/bg0900_defconfig
@@ -25,6 +25,7 @@  CONFIG_CMD_MII=y
 CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_DOS_PARTITION=y
+CONFIG_APBH_DMA=y
 # CONFIG_MMC is not set
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_BAR=y
diff --git a/configs/mx23_olinuxino_defconfig b/configs/mx23_olinuxino_defconfig
index 628c11d..2c80c3b 100644
--- a/configs/mx23_olinuxino_defconfig
+++ b/configs/mx23_olinuxino_defconfig
@@ -20,6 +20,7 @@  CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_ENV_IS_IN_MMC=y
+CONFIG_APBH_DMA=y
 CONFIG_LED_STATUS=y
 CONFIG_LED_STATUS_GPIO=y
 CONFIG_LED_STATUS0=y
diff --git a/configs/mx23evk_defconfig b/configs/mx23evk_defconfig
index 6ad7f2c..09f3611 100644
--- a/configs/mx23evk_defconfig
+++ b/configs/mx23evk_defconfig
@@ -24,6 +24,7 @@  CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_ENV_IS_IN_MMC=y
+CONFIG_APBH_DMA=y
 CONFIG_MMC_MXS=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/mx28evk_auart_console_defconfig b/configs/mx28evk_auart_console_defconfig
index 0927333..7bdb905 100644
--- a/configs/mx28evk_auart_console_defconfig
+++ b/configs/mx28evk_auart_console_defconfig
@@ -16,7 +16,6 @@  CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_MMC=y
-CONFIG_CMD_NAND_TRIMFFS=y
 CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_USB=y
@@ -34,9 +33,9 @@  CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
 CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
 CONFIG_CMD_UBI=y
 CONFIG_ENV_IS_IN_MMC=y
+CONFIG_APBH_DMA=y
 CONFIG_MMC_MXS=y
 CONFIG_NAND=y
-CONFIG_NAND_MXS=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_USB=y
diff --git a/configs/mx28evk_defconfig b/configs/mx28evk_defconfig
index 21d01bc..d36ad0e 100644
--- a/configs/mx28evk_defconfig
+++ b/configs/mx28evk_defconfig
@@ -16,7 +16,6 @@  CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_MMC=y
-CONFIG_CMD_NAND_TRIMFFS=y
 CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_USB=y
@@ -34,9 +33,9 @@  CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
 CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
 CONFIG_CMD_UBI=y
 CONFIG_ENV_IS_IN_MMC=y
+CONFIG_APBH_DMA=y
 CONFIG_MMC_MXS=y
 CONFIG_NAND=y
-CONFIG_NAND_MXS=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_USB=y
diff --git a/configs/mx28evk_spi_defconfig b/configs/mx28evk_spi_defconfig
index dab5394..7bf1d6e 100644
--- a/configs/mx28evk_spi_defconfig
+++ b/configs/mx28evk_spi_defconfig
@@ -15,7 +15,6 @@  CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_MMC=y
-CONFIG_CMD_NAND_TRIMFFS=y
 CONFIG_CMD_SF=y
 CONFIG_CMD_SPI=y
 CONFIG_CMD_USB=y
@@ -33,9 +32,9 @@  CONFIG_MTDIDS_DEFAULT="nand0=gpmi-nand"
 CONFIG_MTDPARTS_DEFAULT="mtdparts=gpmi-nand:3m(bootloader)ro,512k(environment),512k(redundant-environment),4m(kernel),512k(fdt),8m(ramdisk),-(filesystem)"
 CONFIG_CMD_UBI=y
 CONFIG_ENV_IS_IN_SPI_FLASH=y
+CONFIG_APBH_DMA=y
 CONFIG_MMC_MXS=y
 CONFIG_NAND=y
-CONFIG_NAND_MXS=y
 CONFIG_SPI_FLASH=y
 CONFIG_SPI_FLASH_SST=y
 CONFIG_USB=y
diff --git a/configs/sansa_fuze_plus_defconfig b/configs/sansa_fuze_plus_defconfig
index f2e61c7..d7ec119 100644
--- a/configs/sansa_fuze_plus_defconfig
+++ b/configs/sansa_fuze_plus_defconfig
@@ -25,6 +25,7 @@  CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_APBH_DMA=y
 CONFIG_MMC_MXS=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/configs/sc_sps_1_defconfig b/configs/sc_sps_1_defconfig
index faebc04..792d39d 100644
--- a/configs/sc_sps_1_defconfig
+++ b/configs/sc_sps_1_defconfig
@@ -24,6 +24,7 @@  CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
 CONFIG_ENV_IS_IN_MMC=y
+CONFIG_APBH_DMA=y
 CONFIG_MMC_MXS=y
 CONFIG_PHYLIB=y
 CONFIG_USB=y
diff --git a/configs/ts4600_defconfig b/configs/ts4600_defconfig
index aab0737..45b872b 100644
--- a/configs/ts4600_defconfig
+++ b/configs/ts4600_defconfig
@@ -17,5 +17,6 @@  CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ENV_IS_IN_MMC=y
+CONFIG_APBH_DMA=y
 CONFIG_MMC_MXS=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/xfi3_defconfig b/configs/xfi3_defconfig
index 6cdea5e..e335407 100644
--- a/configs/xfi3_defconfig
+++ b/configs/xfi3_defconfig
@@ -24,6 +24,7 @@  CONFIG_CMD_PING=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT2=y
 CONFIG_CMD_FAT=y
+CONFIG_APBH_DMA=y
 CONFIG_MMC_MXS=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
index 1b92c77..a95d4ce 100644
--- a/drivers/dma/Kconfig
+++ b/drivers/dma/Kconfig
@@ -19,4 +19,18 @@  config TI_EDMA3
 	  This driver support data transfer between memory
 	  regions.
 
+config APBH_DMA
+	bool "Support APBH DMA"
+	help
+	  Enable APBH DMA driver.
+
+if APBH_DMA
+config APBH_DMA_BURST
+	bool "Enable DMA BURST"
+
+config APBH_DMA_BURST8
+	bool "Enable DMA BURST8"
+
+endif
+
 endmenu # menu "DMA Support"
diff --git a/drivers/mtd/nand/Kconfig b/drivers/mtd/nand/Kconfig
index 97ec6cf..4453688 100644
--- a/drivers/mtd/nand/Kconfig
+++ b/drivers/mtd/nand/Kconfig
@@ -142,6 +142,9 @@  config NAND_MXS
 	bool "MXS NAND support"
 	depends on MX6 || MX7
 	imply CMD_NAND
+	select APBH_DMA
+	select APBH_DMA_BURST if ARCH_MX6 || ARCH_MX7
+	select APBH_DMA_BURST8 if ARCH_MX6 || ARCH_MX7
 	help
 	  This enables NAND driver for the NAND flash controller on the
 	  MXS processors.
diff --git a/include/configs/aristainetos-common.h b/include/configs/aristainetos-common.h
index 9b1a39d..69de44a 100644
--- a/include/configs/aristainetos-common.h
+++ b/include/configs/aristainetos-common.h
@@ -182,9 +182,6 @@ 
 #define CONFIG_SYS_NAND_ONFI_DETECTION
 
 /* DMA stuff, needed for GPMI/MXS NAND support */
-#define CONFIG_APBH_DMA
-#define CONFIG_APBH_DMA_BURST
-#define CONFIG_APBH_DMA_BURST8
 
 /* RTC */
 #define CONFIG_SYS_I2C_RTC_ADDR	0x68
diff --git a/include/configs/cm_fx6.h b/include/configs/cm_fx6.h
index 90cf024..39d166a 100644
--- a/include/configs/cm_fx6.h
+++ b/include/configs/cm_fx6.h
@@ -184,9 +184,6 @@ 
 #define CONFIG_SYS_MAX_NAND_DEVICE	1
 #define CONFIG_SYS_NAND_ONFI_DETECTION
 /* APBH DMA is required for NAND support */
-#define CONFIG_APBH_DMA
-#define CONFIG_APBH_DMA_BURST
-#define CONFIG_APBH_DMA_BURST8
 #endif
 
 /* Ethernet */
diff --git a/include/configs/colibri_imx7.h b/include/configs/colibri_imx7.h
index d4aaff6..5d9b212 100644
--- a/include/configs/colibri_imx7.h
+++ b/include/configs/colibri_imx7.h
@@ -170,9 +170,6 @@ 
 #define CONFIG_MTD_DEVICE	/* needed for mtdparts commands */
 
 /* DMA stuff, needed for GPMI/MXS NAND support */
-#define CONFIG_APBH_DMA
-#define CONFIG_APBH_DMA_BURST
-#define CONFIG_APBH_DMA_BURST8
 
 /* USB Configs */
 #define CONFIG_EHCI_HCD_INIT_AFTER_RESET
diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h
index 517ad08..6e994b5 100644
--- a/include/configs/gw_ventana.h
+++ b/include/configs/gw_ventana.h
@@ -73,9 +73,6 @@ 
   #define CONFIG_SYS_NAND_ONFI_DETECTION
 
   /* DMA stuff, needed for GPMI/MXS NAND support */
-  #define CONFIG_APBH_DMA
-  #define CONFIG_APBH_DMA_BURST
-  #define CONFIG_APBH_DMA_BURST8
 #endif
 
 #endif /* CONFIG_SPI_FLASH */
diff --git a/include/configs/imx6-engicam.h b/include/configs/imx6-engicam.h
index 5f43dfb..246a636 100644
--- a/include/configs/imx6-engicam.h
+++ b/include/configs/imx6-engicam.h
@@ -161,10 +161,6 @@ 
 /* MTD device */
 # define CONFIG_MTD_DEVICE
 # define CONFIG_MTD_PARTITIONS
-
-# define CONFIG_APBH_DMA
-# define CONFIG_APBH_DMA_BURST
-# define CONFIG_APBH_DMA_BURST8
 #endif
 
 /* Ethernet */
diff --git a/include/configs/imx6_logic.h b/include/configs/imx6_logic.h
index f0ff5b2..8b91a53 100644
--- a/include/configs/imx6_logic.h
+++ b/include/configs/imx6_logic.h
@@ -156,9 +156,6 @@ 
 # define CONFIG_MTD_PARTITIONS
 
 /* DMA stuff, needed for GPMI/MXS NAND support */
-#define CONFIG_APBH_DMA
-#define CONFIG_APBH_DMA_BURST
-#define CONFIG_APBH_DMA_BURST8
 
 /* EEPROM  contains serial no, MAC addr and other Logic PD info */
 #define CONFIG_I2C_EEPROM
diff --git a/include/configs/mx6sabreauto.h b/include/configs/mx6sabreauto.h
index 9982685..bba15a7 100644
--- a/include/configs/mx6sabreauto.h
+++ b/include/configs/mx6sabreauto.h
@@ -72,9 +72,6 @@ 
 #define CONFIG_SYS_NAND_ONFI_DETECTION
 
 /* DMA stuff, needed for GPMI/MXS NAND support */
-#define CONFIG_APBH_DMA
-#define CONFIG_APBH_DMA_BURST
-#define CONFIG_APBH_DMA_BURST8
 
 /* PMIC */
 #define CONFIG_POWER
diff --git a/include/configs/mx6sxsabreauto.h b/include/configs/mx6sxsabreauto.h
index 02d6acf..06e416b 100644
--- a/include/configs/mx6sxsabreauto.h
+++ b/include/configs/mx6sxsabreauto.h
@@ -125,9 +125,6 @@ 
 #define CONFIG_SYS_NAND_ONFI_DETECTION
 
 /* DMA stuff, needed for GPMI/MXS NAND support */
-#define CONFIG_APBH_DMA
-#define CONFIG_APBH_DMA_BURST
-#define CONFIG_APBH_DMA_BURST8
 
 /* Network */
 
diff --git a/include/configs/mx7dsabresd.h b/include/configs/mx7dsabresd.h
index fd39f22..3a9eaf9 100644
--- a/include/configs/mx7dsabresd.h
+++ b/include/configs/mx7dsabresd.h
@@ -197,9 +197,6 @@ 
 #define CONFIG_SYS_NAND_ONFI_DETECTION
 
 /* DMA stuff, needed for GPMI/MXS NAND support */
-#define CONFIG_APBH_DMA
-#define CONFIG_APBH_DMA_BURST
-#define CONFIG_APBH_DMA_BURST8
 #endif
 
 #define CONFIG_ENV_OFFSET		(12 * SZ_64K)
diff --git a/include/configs/mxs.h b/include/configs/mxs.h
index 21e51fc..c3e3f59 100644
--- a/include/configs/mxs.h
+++ b/include/configs/mxs.h
@@ -99,7 +99,6 @@ 
  */
 
 /* APBH DMA */
-#define CONFIG_APBH_DMA
 
 /* GPIO */
 #define CONFIG_MXS_GPIO
diff --git a/include/configs/pcm058.h b/include/configs/pcm058.h
index 6c0902a..ec74ed7 100644
--- a/include/configs/pcm058.h
+++ b/include/configs/pcm058.h
@@ -65,9 +65,6 @@ 
 #endif
 
 /* DMA stuff, needed for GPMI/MXS NAND support */
-#define CONFIG_APBH_DMA
-#define CONFIG_APBH_DMA_BURST
-#define CONFIG_APBH_DMA_BURST8
 
 /* Filesystem support */
 #define CONFIG_MTD_PARTITIONS
diff --git a/include/configs/pfla02.h b/include/configs/pfla02.h
index 83198a1..2001d5d 100644
--- a/include/configs/pfla02.h
+++ b/include/configs/pfla02.h
@@ -64,9 +64,6 @@ 
 #endif
 
 /* DMA stuff, needed for GPMI/MXS NAND support */
-#define CONFIG_APBH_DMA
-#define CONFIG_APBH_DMA_BURST
-#define CONFIG_APBH_DMA_BURST8
 
 /* Filesystem support */
 #define CONFIG_MTD_PARTITIONS
diff --git a/include/configs/platinum.h b/include/configs/platinum.h
index 24c8de9..339ff91 100644
--- a/include/configs/platinum.h
+++ b/include/configs/platinum.h
@@ -75,9 +75,6 @@ 
 #define CONFIG_SYS_NAND_ONFI_DETECTION
 
 /* DMA config, needed for GPMI/MXS NAND support */
-#define CONFIG_APBH_DMA
-#define CONFIG_APBH_DMA_BURST
-#define CONFIG_APBH_DMA_BURST8
 
 /* Environment in NAND */
 #define CONFIG_ENV_OFFSET		(16 << 20)
diff --git a/include/configs/titanium.h b/include/configs/titanium.h
index ea18cb6..0fe40ee 100644
--- a/include/configs/titanium.h
+++ b/include/configs/titanium.h
@@ -148,9 +148,6 @@ 
 #define CONFIG_SYS_NAND_ONFI_DETECTION
 
 /* DMA stuff, needed for GPMI/MXS NAND support */
-#define CONFIG_APBH_DMA
-#define CONFIG_APBH_DMA_BURST
-#define CONFIG_APBH_DMA_BURST8
 
 /* Environment in NAND */
 #define CONFIG_ENV_OFFSET		(16 << 20)
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index ef83c00..bc097db 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -31,9 +31,6 @@  CONFIG_AM335X_USB1_MODE
 CONFIG_AM437X_USB2PHY2_HOST
 CONFIG_ANDES_PCU
 CONFIG_ANDES_PCU_BASE
-CONFIG_APBH_DMA
-CONFIG_APBH_DMA_BURST
-CONFIG_APBH_DMA_BURST8
 CONFIG_APER_0_BASE
 CONFIG_APER_1_BASE
 CONFIG_APER_SIZE