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

stefan at agner.ch stefan at agner.ch
Mon Feb 5 19:35:10 UTC 2018


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 at 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


More information about the U-Boot mailing list