MTD defconfigs/Kconfigs/Makefiles heavy cleanup
Subsystems (16)
PATCH v3 7/28 mtd: ensure MTD is compiled when there is a SPI NOR flash using MTD
In reply to Miquel RaynalQuoted 4 lines · On Wed, 5 Dec 2018 00:56:53 +0100 Miquel Raynal <[email protected]>…
MTD must be enabled when there is a SPI NOR flash using the
SPI_FLASH_MTDconfig entry.Signed-off-by Miquel Raynal <[email protected]>
With Vignesh's comment addressed
Miquel Raynal
maintainerPATCH v3 8/28 mtd: ensure UBI is compiled when using fastmap
In reply to Miquel RaynalUBI must be enabled when using fastmap, reflect this is defconfigs.
--- configs/am335x_igep003x_defconfig | 1 + configs/aristainetos2_defconfig | 1 + configs/aristainetos2b_defconfig | 1 + configs/aristainetos_defconfig | 1 + configs/colibri-imx6ull_defconfig | 1 + configs/colibri_imx7_defconfig | 1 + configs/colibri_t20_defconfig | 1 + configs/colibri_vf_defconfig | 1 + configs/draco_defconfig | 1 + configs/etamin_defconfig | 1 + configs/harmony_defconfig | 1 + configs/igep00x0_defconfig | 1 + configs/pxm2_defconfig | 1 + configs/rastaban_defconfig | 1 + configs/rut_defconfig | 1 + configs/socfpga_vining_fpga_defconfig | 1 + configs/thuban_defconfig | 1 + 17 files changed, 17 insertions(+)
configs/am335x_igep003x_defconfig +1 -0
@@ -44,6 +44,7 @@ CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_DRIVER_TI_CPSW=y CONFIG_MII=y
configs/aristainetos2_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_PHYLIB=y
configs/aristainetos2b_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_PHYLIB=y
configs/aristainetos_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_PHYLIB=y
configs/colibri-imx6ull_defconfig +1 -0
@@ -53,6 +53,7 @@ CONFIG_DM_MTD=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_MTD_RAW_NAND_MXS_DT=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_PHYLIB=y CONFIG_PHY_ADDR_ENABLE=y
configs/colibri_imx7_defconfig +1 -0
@@ -52,6 +52,7 @@ CONFIG_DM_I2C=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_PHYLIB=y CONFIG_PHY_MICREL=y
configs/colibri_t20_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_DFU_RAM=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y CONFIG_DM_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_DM_PMIC=y CONFIG_DM_REGULATOR=y
configs/colibri_vf_defconfig +1 -0
@@ -50,6 +50,7 @@ CONFIG_FSL_ESDHC=y CONFIG_NAND_VF610_NFC=y CONFIG_SYS_NAND_VF610_NFC_60_ECC_BYTES=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_PHYLIB=y CONFIG_PHY_MICREL=y
configs/draco_defconfig +1 -0
@@ -65,6 +65,7 @@ CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_DRIVER_TI_CPSW=y
configs/etamin_defconfig +1 -0
@@ -65,6 +65,7 @@ CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_DRIVER_TI_CPSW=y
configs/harmony_defconfig +1 -0
@@ -29,6 +29,7 @@ CONFIG_DEFAULT_DEVICE_TREE="tegra20-harmony" CONFIG_ENV_IS_IN_NAND=y CONFIG_SPL_DM=y CONFIG_DM_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_PCI=y CONFIG_DM_PCI=y
configs/igep00x0_defconfig +1 -0
@@ -36,6 +36,7 @@ CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SPL_NAND_SIMPLE=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_SMC911X=y CONFIG_SMC911X_BASE=0x2C000000
configs/pxm2_defconfig +1 -0
@@ -67,6 +67,7 @@ CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_DRIVER_TI_CPSW=y
configs/rastaban_defconfig +1 -0
@@ -65,6 +65,7 @@ CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_DRIVER_TI_CPSW=y
configs/rut_defconfig +1 -0
@@ -68,6 +68,7 @@ CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_DRIVER_TI_CPSW=y
configs/socfpga_vining_fpga_defconfig +1 -0
@@ -71,6 +71,7 @@ CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SPANSION=y CONFIG_SPI_FLASH_STMICRO=y # CONFIG_SPI_FLASH_USE_4K_SECTORS is not set +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_PHY_MICREL=y CONFIG_PHY_MICREL_KSZ90X1=y
configs/thuban_defconfig +1 -0
@@ -65,6 +65,7 @@ CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y +CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 CONFIG_DRIVER_TI_CPSW=y
Signature · 1 line
2.19.1
PATCH v3 8/28 mtd: ensure UBI is compiled when using fastmap
Quoted 3 lines · On Wed, 5 Dec 2018 00:56:54 +0100 Miquel Raynal <[email protected]>…
UBI must be enabled when using fastmap, reflect this is defconfigs.
Signed-off-by Miquel Raynal <[email protected]>
Miquel Raynal
maintainerPATCH v3 9/28 mtd: ensure MTD is compiled when UBI is used
In reply to Miquel RaynalMTD must be enabled when UBI is used, this is mandatory and will later be reflected thanks to a "depends on" in Kconfig. But first, defconfigs needs to be fixed.
--- configs/gardena-smart-gateway-mt7688-ram_defconfig | 1 + configs/gardena-smart-gateway-mt7688_defconfig | 1 + configs/harmony_defconfig | 1 + 3 files changed, 3 insertions(+)
configs/gardena-smart-gateway-mt7688-ram_defconfig +1 -0
@@ -37,6 +37,7 @@ CONFIG_DM_GPIO=y CONFIG_LED=y CONFIG_LED_BLINK=y CONFIG_LED_GPIO=y +CONFIG_MTD=y CONFIG_DM_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_GIGADEVICE=y
configs/gardena-smart-gateway-mt7688_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_DM_GPIO=y CONFIG_LED=y CONFIG_LED_BLINK=y CONFIG_LED_GPIO=y +CONFIG_MTD=y CONFIG_DM_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_GIGADEVICE=y
configs/harmony_defconfig +1 -0
@@ -28,6 +28,7 @@ CONFIG_OF_LIVE=y CONFIG_DEFAULT_DEVICE_TREE="tegra20-harmony" CONFIG_ENV_IS_IN_NAND=y CONFIG_SPL_DM=y +CONFIG_MTD=y CONFIG_DM_MTD=y CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y
Signature · 1 line
2.19.1
PATCH v3 9/28 mtd: ensure MTD is compiled when UBI is used
Quoted 3 lines · On Wed, 5 Dec 2018 00:56:55 +0100 Miquel Raynal <[email protected]>…
MTD must be enabled when UBI is used, this is mandatory and will later be reflected thanks to a "depends on" in
Kconfig. But first, defconfigs needs to be fixed.
^ need
Quoted 2 lines
Signed-off-by Miquel Raynal <[email protected]>
Miquel Raynal
maintainerPATCH v3 10/28 mtd: ensure UBI is compiled when CMD_UBI is selected
In reply to Miquel RaynalUBI must be enabled when CMD_UBI is used, this is mandatory and will later be reflected thanks to a "depends on" in Kconfig. But first, defconfigs needs to be fixed.
--- configs/am335x_baltos_defconfig | 1 + configs/am3517_evm_defconfig | 1 + configs/apf27_defconfig | 1 + configs/apx4devkit_defconfig | 1 + configs/at91sam9x5ek_dataflash_defconfig | 1 + configs/at91sam9x5ek_mmc_defconfig | 1 + configs/at91sam9x5ek_nandflash_defconfig | 1 + configs/at91sam9x5ek_spiflash_defconfig | 1 + configs/bk4r1_defconfig | 1 + configs/dns325_defconfig | 1 + configs/dockstar_defconfig | 1 + configs/ds414_defconfig | 1 + configs/ea20_defconfig | 1 + configs/eco5pk_defconfig | 1 + configs/ethernut5_defconfig | 1 + configs/gardena-smart-gateway-mt7688-ram_defconfig | 1 + configs/gardena-smart-gateway-mt7688_defconfig | 1 + configs/goflexhome_defconfig | 1 + configs/guruplug_defconfig | 1 + configs/gwventana_emmc_defconfig | 1 + configs/gwventana_gw5904_defconfig | 1 + configs/gwventana_nand_defconfig | 1 + configs/ib62x0_defconfig | 1 + configs/iconnect_defconfig | 1 + configs/igep0032_defconfig | 1 + configs/imx6dl_icore_nand_defconfig | 1 + configs/imx6q_icore_nand_defconfig | 1 + configs/imx6q_logic_defconfig | 1 + configs/imx6qdl_icore_mmc_defconfig | 1 + configs/imx6qdl_icore_nand_defconfig | 1 + configs/imx6ul_geam_nand_defconfig | 1 + configs/imx6ul_isiot_nand_defconfig | 1 + configs/ipam390_defconfig | 1 + configs/k2e_evm_defconfig | 1 + configs/k2e_hs_evm_defconfig | 1 + configs/k2g_evm_defconfig | 1 + configs/k2g_hs_evm_defconfig | 1 + configs/k2hk_evm_defconfig | 1 + configs/k2hk_hs_evm_defconfig | 1 + configs/k2l_evm_defconfig | 1 + configs/k2l_hs_evm_defconfig | 1 + configs/km_kirkwood_128m16_defconfig | 1 + configs/km_kirkwood_defconfig | 1 + configs/km_kirkwood_pci_defconfig | 1 + configs/kmcoge4_defconfig | 2 ++ configs/kmcoge5ne_defconfig | 1 + configs/kmcoge5un_defconfig | 1 + configs/kmeter1_defconfig | 1 + configs/kmlion1_defconfig | 2 ++ configs/kmnusa_defconfig | 1 + configs/kmopti2_defconfig | 1 + configs/kmsugp1_defconfig | 1 + configs/kmsupx5_defconfig | 1 + configs/kmsuv31_defconfig | 1 + configs/kmtegr1_defconfig | 1 + configs/kmtepr2_defconfig | 1 + configs/kmvect1_defconfig | 1 + configs/m53menlo_defconfig | 1 + configs/mcx_defconfig | 1 + configs/mgcoge3un_defconfig | 1 + configs/mt_ventoux_defconfig | 1 + configs/mx28evk_auart_console_defconfig | 1 + configs/mx28evk_defconfig | 1 + configs/mx28evk_nand_defconfig | 1 + configs/mx28evk_spi_defconfig | 1 + configs/nas220_defconfig | 1 + configs/nsa310s_defconfig | 1 + configs/omap35_logic_defconfig | 1 + configs/omap35_logic_somlv_defconfig | 1 + configs/omap3_beagle_defconfig | 1 + configs/omap3_evm_defconfig | 1 + configs/omap3_logic_defconfig | 1 + configs/omap3_logic_somlv_defconfig | 1 + configs/omap3_overo_defconfig | 1 + configs/omap3_pandora_defconfig | 1 + configs/omapl138_lcdk_defconfig | 1 + configs/openrd_base_defconfig | 1 + configs/openrd_client_defconfig | 1 + configs/openrd_ultimate_defconfig | 1 + configs/pcm052_defconfig | 1 + configs/pcm058_defconfig | 1 + configs/pfla02_defconfig | 1 + configs/platinum_picon_defconfig | 1 + configs/platinum_titanium_defconfig | 1 + configs/pogo_e02_defconfig | 1 + configs/portl2_defconfig | 1 + configs/sama5d3_xplained_mmc_defconfig | 1 + configs/sama5d3_xplained_nandflash_defconfig | 1 + configs/sheevaplug_defconfig | 1 + configs/socfpga_arria5_defconfig | 1 + configs/socfpga_cyclone5_defconfig | 1 + configs/socfpga_de0_nano_soc_defconfig | 1 + configs/socfpga_is1_defconfig | 1 + configs/socfpga_sockit_defconfig | 1 + configs/socfpga_socrates_defconfig | 1 + configs/socfpga_sr1500_defconfig | 1 + configs/suvd3_defconfig | 1 + configs/titanium_defconfig | 1 + configs/tricorder_defconfig | 1 + configs/tricorder_flash_defconfig | 1 + configs/tuge1_defconfig | 1 + configs/tuxx1_defconfig | 1 + configs/twister_defconfig | 1 + configs/uniphier_ld4_sld8_defconfig | 1 + configs/uniphier_v7_defconfig | 1 + configs/uniphier_v8_defconfig | 1 + configs/vct_platinum_onenand_defconfig | 1 + configs/vct_platinum_onenand_small_defconfig | 1 + configs/vct_platinumavc_onenand_defconfig | 1 + configs/vct_platinumavc_onenand_small_defconfig | 1 + configs/vct_premium_onenand_defconfig | 1 + configs/vct_premium_onenand_small_defconfig | 1 + configs/vf610twr_defconfig | 1 + configs/vf610twr_nand_defconfig | 1 + configs/x600_defconfig | 1 + include/environment.h | 4 ++-- 116 files changed, 119 insertions(+), 2 deletions(-)
configs/am335x_baltos_defconfig +1 -0
@@ -44,6 +44,7 @@ CONFIG_BOOTCOUNT_LIMIT=y CONFIG_SYS_OMAP24_I2C_SPEED=1000 CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_PHY_ADDR_ENABLE=y CONFIG_DRIVER_TI_CPSW=y
configs/am3517_evm_defconfig +1 -0
@@ -39,6 +39,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_DM_PCA953X=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SYS_NAND_U_BOOT_LOCATIONS=y
configs/apf27_defconfig +1 -0
@@ -41,6 +41,7 @@ CONFIG_FPGA_SPARTAN3=y CONFIG_MXC_GPIO=y CONFIG_MMC_MXC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXC=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
configs/apx4devkit_defconfig +1 -0
@@ -32,6 +32,7 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_NAND=y CONFIG_MMC_MXS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_MII=y
configs/at91sam9x5ek_dataflash_defconfig +1 -0
@@ -42,6 +42,7 @@ CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y
configs/at91sam9x5ek_mmc_defconfig +1 -0
@@ -42,6 +42,7 @@ CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y
configs/at91sam9x5ek_nandflash_defconfig +1 -0
@@ -42,6 +42,7 @@ CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y
configs/at91sam9x5ek_spiflash_defconfig +1 -0
@@ -42,6 +42,7 @@ CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_SPI_FLASH=y
configs/bk4r1_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_NAND_VF610_NFC=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_DM_SPI_FLASH=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SPI_FLASH_MTD=y
configs/dns325_defconfig +1 -0
@@ -29,6 +29,7 @@ CONFIG_OF_CONTROL=y CONFIG_DEFAULT_DEVICE_TREE="kirkwood-dns325" CONFIG_ENV_IS_IN_NAND=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_DM=y CONFIG_MVSATA_IDE=y
configs/dockstar_defconfig +1 -0
@@ -26,6 +26,7 @@ CONFIG_DEFAULT_DEVICE_TREE="kirkwood-dockstar" CONFIG_ENV_IS_IN_NAND=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_MVGBE=y CONFIG_MII=y
configs/ds414_defconfig +1 -0
@@ -43,6 +43,7 @@ CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SPL_OF_TRANSLATE=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_STMICRO=y
configs/ea20_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_DA8XX_GPIO=y CONFIG_SYS_I2C_DAVINCI=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DAVINCI=y CONFIG_SPI_FLASH=y
configs/eco5pk_defconfig +1 -0
@@ -31,6 +31,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_SYS_OMAP24_I2C_SPEED=400000 CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SPL_NAND_SIMPLE=y
configs/ethernut5_defconfig +1 -0
@@ -51,6 +51,7 @@ CONFIG_CLK_AT91=y CONFIG_DM_GPIO=y CONFIG_AT91_GPIO=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_NOR_FLASH=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_ATMEL=y
configs/gardena-smart-gateway-mt7688-ram_defconfig +1 -0
@@ -38,6 +38,7 @@ CONFIG_LED=y CONFIG_LED_BLINK=y CONFIG_LED_GPIO=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_DM_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_GIGADEVICE=y
configs/gardena-smart-gateway-mt7688_defconfig +1 -0
@@ -41,6 +41,7 @@ CONFIG_LED=y CONFIG_LED_BLINK=y CONFIG_LED_GPIO=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_DM_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_GIGADEVICE=y
configs/goflexhome_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_DM=y CONFIG_MVSATA_IDE=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_MVGBE=y CONFIG_MII=y
configs/guruplug_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_DM=y CONFIG_MVSATA_IDE=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_MVGBE=y CONFIG_MII=y
configs/gwventana_emmc_defconfig +1 -0
@@ -62,6 +62,7 @@ CONFIG_DWC_AHSATA=y CONFIG_SUPPORT_EMMC_RPMB=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_PHYLIB=y CONFIG_E1000=y CONFIG_MII=y
configs/gwventana_gw5904_defconfig +1 -0
@@ -62,6 +62,7 @@ CONFIG_DWC_AHSATA=y CONFIG_SUPPORT_EMMC_RPMB=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_PHYLIB=y CONFIG_MV88E61XX_SWITCH=y CONFIG_MV88E61XX_CPU_PORT=5
configs/gwventana_nand_defconfig +1 -0
@@ -64,6 +64,7 @@ CONFIG_DWC_AHSATA=y CONFIG_SUPPORT_EMMC_RPMB=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_PHYLIB=y
configs/ib62x0_defconfig +1 -0
@@ -30,6 +30,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_MVSATA_IDE=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_MVGBE=y CONFIG_MII=y
configs/iconnect_defconfig +1 -0
@@ -25,6 +25,7 @@ CONFIG_DEFAULT_DEVICE_TREE="kirkwood-iconnect" CONFIG_ENV_IS_IN_NAND=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_MVGBE=y CONFIG_MII=y
configs/igep0032_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_CMD_UBI=y CONFIG_NET_RANDOM_ETHADDR=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SPL_NAND_SIMPLE=y
configs/imx6dl_icore_nand_defconfig +1 -0
@@ -39,6 +39,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_SYS_I2C_MXC=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_PHYLIB=y
configs/imx6q_icore_nand_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_SYS_I2C_MXC=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_PHYLIB=y
configs/imx6q_logic_defconfig +1 -0
@@ -58,6 +58,7 @@ CONFIG_LED=y CONFIG_LED_GPIO=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_PHYLIB=y
configs/imx6qdl_icore_mmc_defconfig +1 -0
@@ -49,6 +49,7 @@ CONFIG_ENV_IS_IN_MMC=y CONFIG_SYS_I2C_MXC=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_PHYLIB=y
configs/imx6qdl_icore_nand_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_SYS_I2C_MXC=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_PHYLIB=y
configs/imx6ul_geam_nand_defconfig +1 -0
@@ -41,6 +41,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_SYS_I2C_MXC=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_PHYLIB=y
configs/imx6ul_isiot_nand_defconfig +1 -0
@@ -41,6 +41,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_SYS_I2C_MXC=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_PHYLIB=y
configs/ipam390_defconfig +1 -0
@@ -39,6 +39,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_DA8XX_GPIO=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DAVINCI=y CONFIG_DRIVER_TI_EMAC=y
configs/k2e_evm_defconfig +1 -0
@@ -39,6 +39,7 @@ CONFIG_SYS_I2C_DAVINCI=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y
configs/k2e_hs_evm_defconfig +1 -0
@@ -32,6 +32,7 @@ CONFIG_SYS_I2C_DAVINCI=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y
configs/k2g_evm_defconfig +1 -0
@@ -39,6 +39,7 @@ CONFIG_SYS_I2C_DAVINCI=y CONFIG_DM_MMC=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y
configs/k2g_hs_evm_defconfig +1 -0
@@ -32,6 +32,7 @@ CONFIG_SYS_I2C_DAVINCI=y CONFIG_DM_MMC=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y
configs/k2hk_evm_defconfig +1 -0
@@ -39,6 +39,7 @@ CONFIG_SYS_I2C_DAVINCI=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y
configs/k2hk_hs_evm_defconfig +1 -0
@@ -32,6 +32,7 @@ CONFIG_SYS_I2C_DAVINCI=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y
configs/k2l_evm_defconfig +1 -0
@@ -39,6 +39,7 @@ CONFIG_SYS_I2C_DAVINCI=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y
configs/k2l_hs_evm_defconfig +1 -0
@@ -31,6 +31,7 @@ CONFIG_SYS_I2C_DAVINCI=y CONFIG_TI_AEMIF=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y
configs/km_kirkwood_128m16_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_BOOTCOUNT_RAM=y CONFIG_BOOTCOUNT_BOOTLIMIT=3 # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y
configs/km_kirkwood_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_BOOTCOUNT_RAM=y CONFIG_BOOTCOUNT_BOOTLIMIT=3 # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y
configs/km_kirkwood_pci_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_BOOTCOUNT_RAM=y CONFIG_BOOTCOUNT_BOOTLIMIT=3 # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y
configs/kmcoge4_defconfig +2 -0
@@ -39,6 +39,8 @@ CONFIG_BOOTCOUNT_LIMIT=y CONFIG_BOOTCOUNT_BOOTLIMIT=3 CONFIG_SYS_BOOTCOUNT_ADDR=0xFB000020 # CONFIG_MMC is not set +CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SPANSION=y CONFIG_SPI_FLASH_STMICRO=y
configs/kmcoge5ne_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_BOOTCOUNT_BOOTLIMIT=3 CONFIG_SYS_BOOTCOUNT_ADDR=0xE011BFF8 # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_NOR_FLASH=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
configs/kmcoge5un_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_BOOTCOUNT_RAM=y CONFIG_BOOTCOUNT_BOOTLIMIT=3 # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y
configs/kmeter1_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_SYS_BOOTCOUNT_ADDR=0xE011BFF8 # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_FLASH_CFI_MTD=y
configs/kmlion1_defconfig +2 -0
@@ -39,6 +39,8 @@ CONFIG_BOOTCOUNT_LIMIT=y CONFIG_BOOTCOUNT_BOOTLIMIT=3 CONFIG_SYS_BOOTCOUNT_ADDR=0xFB000020 # CONFIG_MMC is not set +CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SPANSION=y CONFIG_SPI_FLASH_STMICRO=y
configs/kmnusa_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_BOOTCOUNT_RAM=y CONFIG_BOOTCOUNT_BOOTLIMIT=3 # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y
configs/kmopti2_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_SYS_BOOTCOUNT_ADDR=0xE0113FF8 # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_FLASH_CFI_MTD=y
configs/kmsugp1_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_BOOTCOUNT_RAM=y CONFIG_BOOTCOUNT_BOOTLIMIT=3 # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y
configs/kmsupx5_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_SYS_BOOTCOUNT_ADDR=0xE0113FF8 # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_FLASH_CFI_MTD=y
configs/kmsuv31_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_BOOTCOUNT_RAM=y CONFIG_BOOTCOUNT_BOOTLIMIT=3 # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y
configs/kmtegr1_defconfig +1 -0
@@ -34,6 +34,7 @@ CONFIG_BOOTCOUNT_BOOTLIMIT=3 CONFIG_SYS_BOOTCOUNT_ADDR=0xE0113FF8 # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_NOR_FLASH=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
configs/kmtepr2_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_SYS_BOOTCOUNT_ADDR=0xE0113FF8 # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_FLASH_CFI_MTD=y
configs/kmvect1_defconfig +1 -0
@@ -34,6 +34,7 @@ CONFIG_SYS_BOOTCOUNT_ADDR=0xE0113FF8 # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_FLASH_CFI_MTD=y
configs/m53menlo_defconfig +1 -0
@@ -46,6 +46,7 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_NAND=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXC=y CONFIG_PHYLIB=y
configs/mcx_defconfig +1 -0
@@ -37,6 +37,7 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_NAND=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SPL_NAND_SIMPLE=y
configs/mgcoge3un_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_BOOTCOUNT_RAM=y CONFIG_BOOTCOUNT_BOOTLIMIT=3 # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y
configs/mt_ventoux_defconfig +1 -0
@@ -37,6 +37,7 @@ CONFIG_FPGA_SPARTAN3=y CONFIG_SYS_OMAP24_I2C_SPEED=400000 CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SPL_NAND_SIMPLE=y
configs/mx28evk_auart_console_defconfig +1 -0
@@ -41,6 +41,7 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_MMC=y CONFIG_MMC_MXS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_SPI_FLASH=y
configs/mx28evk_defconfig +1 -0
@@ -41,6 +41,7 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_MMC=y CONFIG_MMC_MXS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_SPI_FLASH=y
configs/mx28evk_nand_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_NAND=y CONFIG_MMC_MXS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_SPI_FLASH=y
configs/mx28evk_spi_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_SPI_FLASH=y CONFIG_MMC_MXS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_SPI_FLASH=y
configs/nas220_defconfig +1 -0
@@ -30,6 +30,7 @@ CONFIG_OF_CONTROL=y CONFIG_DEFAULT_DEVICE_TREE="kirkwood-blackarmor-nas220" CONFIG_ENV_IS_IN_NAND=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_DM=y CONFIG_MVSATA_IDE=y
configs/nsa310s_defconfig +1 -0
@@ -27,6 +27,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_MVSATA_IDE=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_MVGBE=y CONFIG_MII=y
configs/omap35_logic_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_DM_I2C=y CONFIG_DM_MMC=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SYS_NAND_U_BOOT_LOCATIONS=y
configs/omap35_logic_somlv_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_DM_I2C=y CONFIG_DM_MMC=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_NOR_FLASH=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
configs/omap3_beagle_defconfig +1 -0
@@ -54,6 +54,7 @@ CONFIG_LED_STATUS_CMD=y CONFIG_TWL4030_LED=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SYS_NAND_U_BOOT_LOCATIONS=y
configs/omap3_evm_defconfig +1 -0
@@ -46,6 +46,7 @@ CONFIG_DM_MMC=y # CONFIG_SPL_DM_MMC is not set CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SYS_NAND_U_BOOT_LOCATIONS=y
configs/omap3_logic_defconfig +1 -0
@@ -41,6 +41,7 @@ CONFIG_DM_MMC=y CONFIG_MMC_OMAP_HS=y CONFIG_MMC_OMAP36XX_PINS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SYS_NAND_U_BOOT_LOCATIONS=y
configs/omap3_logic_somlv_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_DM_MMC=y CONFIG_MMC_OMAP_HS=y CONFIG_MMC_OMAP36XX_PINS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_NOR_FLASH=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
configs/omap3_overo_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_TWL4030_LED=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SPL_NAND_SIMPLE=y
configs/omap3_pandora_defconfig +1 -0
@@ -31,6 +31,7 @@ CONFIG_DM=y CONFIG_TWL4030_LED=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_DM_SERIAL=y
configs/omapl138_lcdk_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_DM_I2C_COMPAT=y CONFIG_SYS_I2C_DAVINCI=y CONFIG_DM_MMC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DAVINCI=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
configs/openrd_base_defconfig +1 -0
@@ -32,6 +32,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_MVSATA_IDE=y # CONFIG_MMC_HW_PARTITIONING is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_MVGBE=y CONFIG_MII=y
configs/openrd_client_defconfig +1 -0
@@ -30,6 +30,7 @@ CONFIG_OF_CONTROL=y CONFIG_DEFAULT_DEVICE_TREE="kirkwood-openrd-client" CONFIG_ENV_IS_IN_NAND=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_MVSATA_IDE=y # CONFIG_MMC_HW_PARTITIONING is not set
configs/openrd_ultimate_defconfig +1 -0
@@ -30,6 +30,7 @@ CONFIG_OF_CONTROL=y CONFIG_DEFAULT_DEVICE_TREE="kirkwood-openrd-ultimate" CONFIG_ENV_IS_IN_NAND=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_MVSATA_IDE=y # CONFIG_MMC_HW_PARTITIONING is not set
configs/pcm052_defconfig +1 -0
@@ -31,6 +31,7 @@ CONFIG_DM_GPIO=y CONFIG_VYBRID_GPIO=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_VF610_NFC=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
configs/pcm058_defconfig +1 -0
@@ -43,6 +43,7 @@ CONFIG_ENV_IS_IN_SPI_FLASH=y CONFIG_DM=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_DM_MTD=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y
configs/pfla02_defconfig +1 -0
@@ -42,6 +42,7 @@ CONFIG_CMD_UBI=y CONFIG_DM=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_DM_MTD=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y
configs/platinum_picon_defconfig +1 -0
@@ -47,6 +47,7 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_NAND=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_PHYLIB=y
configs/platinum_titanium_defconfig +1 -0
@@ -47,6 +47,7 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_NAND=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_PHYLIB=y
configs/pogo_e02_defconfig +1 -0
@@ -25,6 +25,7 @@ CONFIG_DEFAULT_DEVICE_TREE="kirkwood-pogo_e02" CONFIG_ENV_IS_IN_NAND=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_MVGBE=y CONFIG_MII=y
configs/portl2_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_BOOTCOUNT_RAM=y CONFIG_BOOTCOUNT_BOOTLIMIT=3 # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y
configs/sama5d3_xplained_mmc_defconfig +1 -0
@@ -59,6 +59,7 @@ CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_ETH=y
configs/sama5d3_xplained_nandflash_defconfig +1 -0
@@ -56,6 +56,7 @@ CONFIG_AT91_GPIO=y CONFIG_DM_MMC=y CONFIG_GENERIC_ATMEL_MCI=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_ATMEL=y CONFIG_DM_ETH=y
configs/sheevaplug_defconfig +1 -0
@@ -32,6 +32,7 @@ CONFIG_OF_CONTROL=y CONFIG_DEFAULT_DEVICE_TREE="kirkwood-sheevaplug" CONFIG_ENV_IS_IN_NAND=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_DM=y CONFIG_MVSATA_IDE=y
configs/socfpga_arria5_defconfig +1 -0
@@ -50,6 +50,7 @@ CONFIG_SYS_I2C_DW=y CONFIG_DM_MMC=y CONFIG_MMC_DW=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_SPANSION=y
configs/socfpga_cyclone5_defconfig +1 -0
@@ -50,6 +50,7 @@ CONFIG_SYS_I2C_DW=y CONFIG_DM_MMC=y CONFIG_MMC_DW=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_MACRONIX=y
configs/socfpga_de0_nano_soc_defconfig +1 -0
@@ -50,6 +50,7 @@ CONFIG_SYS_I2C_DW=y CONFIG_DM_MMC=y CONFIG_MMC_DW=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_PHY_MICREL=y CONFIG_PHY_MICREL_KSZ90X1=y CONFIG_DM_ETH=y
configs/socfpga_is1_defconfig +1 -0
@@ -47,6 +47,7 @@ CONFIG_DM_I2C=y CONFIG_SYS_I2C_DW=y # CONFIG_MMC is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_STMICRO=y
configs/socfpga_sockit_defconfig +1 -0
@@ -50,6 +50,7 @@ CONFIG_SYS_I2C_DW=y CONFIG_DM_MMC=y CONFIG_MMC_DW=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_MACRONIX=y
configs/socfpga_socrates_defconfig +1 -0
@@ -51,6 +51,7 @@ CONFIG_SYS_I2C_DW=y CONFIG_DM_MMC=y CONFIG_MMC_DW=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_MACRONIX=y
configs/socfpga_sr1500_defconfig +1 -0
@@ -52,6 +52,7 @@ CONFIG_SYS_I2C_DW=y CONFIG_DM_MMC=y CONFIG_MMC_DW=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_STMICRO=y
configs/suvd3_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_SYS_BOOTCOUNT_ADDR=0xE0113FF8 # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_FLASH_CFI_MTD=y
configs/titanium_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_NAND=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_MXS=y CONFIG_PHYLIB=y
configs/tricorder_defconfig +1 -0
@@ -38,6 +38,7 @@ CONFIG_LED_STATUS_CMD=y CONFIG_TWL4030_LED=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SPL_NAND_SIMPLE=y CONFIG_CONS_INDEX=3
configs/tricorder_flash_defconfig +1 -0
@@ -37,6 +37,7 @@ CONFIG_LED_STATUS_CMD=y CONFIG_TWL4030_LED=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SPL_NAND_SIMPLE=y CONFIG_CONS_INDEX=3
configs/tuge1_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_SYS_BOOTCOUNT_ADDR=0xE0113FF8 # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_FLASH_CFI_MTD=y
configs/tuxx1_defconfig +1 -0
@@ -33,6 +33,7 @@ CONFIG_SYS_BOOTCOUNT_ADDR=0xE0113FF8 # CONFIG_MMC is not set CONFIG_MTD_NOR_FLASH=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y CONFIG_FLASH_CFI_MTD=y
configs/twister_defconfig +1 -0
@@ -36,6 +36,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_SYS_OMAP24_I2C_SPEED=400000 CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_SPL_NAND_SIMPLE=y
configs/uniphier_ld4_sld8_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_MMC_UNIPHIER=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_CFI=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DENALI_DT=y CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=8
configs/uniphier_v7_defconfig +1 -0
@@ -39,6 +39,7 @@ CONFIG_MMC_UNIPHIER=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_CFI=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DENALI_DT=y CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=8
configs/uniphier_v8_defconfig +1 -0
@@ -38,6 +38,7 @@ CONFIG_MMC_SDHCI_CADENCE=y CONFIG_FLASH_CFI_DRIVER=y CONFIG_SYS_FLASH_CFI=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_DENALI_DT=y CONFIG_NAND_DENALI_SPARE_AREA_SKIP_BYTES=8
configs/vct_platinum_onenand_defconfig +1 -0
@@ -24,6 +24,7 @@ CONFIG_CMD_UBI=y # CONFIG_CMD_UBIFS is not set CONFIG_ENV_IS_IN_ONENAND=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SMC911X=y CONFIG_SMC911X_BASE=0x00000000 CONFIG_SMC911X_32_BIT=y
configs/vct_platinum_onenand_small_defconfig +1 -0
@@ -30,4 +30,5 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_ONENAND=y # CONFIG_NET is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SYS_NS16550=y
configs/vct_platinumavc_onenand_defconfig +1 -0
@@ -21,5 +21,6 @@ CONFIG_CMD_UBI=y # CONFIG_ISO_PARTITION is not set CONFIG_ENV_IS_IN_ONENAND=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SYS_NS16550=y # CONFIG_REGEX is not set
configs/vct_platinumavc_onenand_small_defconfig +1 -0
@@ -30,4 +30,5 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_ONENAND=y # CONFIG_NET is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SYS_NS16550=y
configs/vct_premium_onenand_defconfig +1 -0
@@ -24,6 +24,7 @@ CONFIG_CMD_UBI=y # CONFIG_CMD_UBIFS is not set CONFIG_ENV_IS_IN_ONENAND=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SMC911X=y CONFIG_SMC911X_BASE=0x00000000 CONFIG_SMC911X_32_BIT=y
configs/vct_premium_onenand_small_defconfig +1 -0
@@ -30,4 +30,5 @@ CONFIG_CMD_UBI=y CONFIG_ENV_IS_IN_ONENAND=y # CONFIG_NET is not set CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_SYS_NS16550=y
configs/vf610twr_defconfig +1 -0
@@ -34,6 +34,7 @@ CONFIG_DM_GPIO=y CONFIG_VYBRID_GPIO=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_VF610_NFC=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
configs/vf610twr_nand_defconfig +1 -0
@@ -34,6 +34,7 @@ CONFIG_DM_GPIO=y CONFIG_VYBRID_GPIO=y CONFIG_FSL_ESDHC=y CONFIG_MTD=y +CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y CONFIG_NAND_VF610_NFC=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y
configs/x600_defconfig +1 -0
@@ -48,6 +48,7 @@ CONFIG_SYS_I2C_DW=y # CONFIG_MMC is not set CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_MTD_UBI=y CONFIG_MTD_NOR_FLASH=y CONFIG_PHY_ADDR_ENABLE=y CONFIG_PHY_MICREL=y
include/environment.h +2 -2
@@ -99,8 +99,8 @@ extern unsigned long nand_env_oob_offset;# ifndef CONFIG_ENV_SIZE # error "Need to define CONFIG_ENV_SIZE when using CONFIG_ENV_IS_IN_UBI"# endif -# ifndef CONFIG_CMD_UBI -# error "Need to define CONFIG_CMD_UBI when using CONFIG_ENV_IS_IN_UBI" +# ifndef CONFIG_MTD_UBI +# error "Need to define CONFIG_MTD_UBI when using CONFIG_ENV_IS_IN_UBI"# endif #endif /* CONFIG_ENV_IS_IN_UBI */
Signature · 1 line
2.19.1
PATCH v3 10/28 mtd: ensure UBI is compiled when CMD_UBI is selected
Quoted 5 lines · On Wed, 5 Dec 2018 00:56:56 +0100 Miquel Raynal <[email protected]>…
UBI must be enabled when
CMD_UBIis used, this is mandatory and will later be reflected thanks to a "depends on" inKconfig. But first, defconfigs needs to be fixed.Signed-off-by Miquel Raynal <[email protected]>
Miquel Raynal
maintainerPATCH v3 11/28 mtd: ensure UBI is compiled when ENV_IS_IN_UBI is selected
In reply to Miquel RaynalUBI must be enabled when the environment is in UBI.
--- configs/CHIP_pro_defconfig | 2 ++ env/Kconfig | 2 ++ 2 files changed, 4 insertions(+)
configs/CHIP_pro_defconfig +2 -0
@@ -8,6 +8,7 @@ CONFIG_NR_DRAM_BANKS=1 CONFIG_SPL_I2C_SUPPORT=y # CONFIG_CMD_FLASH is not set CONFIG_CMD_MTDPARTS=y +CONFIG_CMD_UBI=y CONFIG_MTDIDS_DEFAULT="nand0=sunxi-nand.0" CONFIG_MTDPARTS_DEFAULT="mtdparts=sunxi-nand.0:256k(spl),256k(spl-backup),2m(uboot),2m(uboot-backup),-(UBI)" CONFIG_DEFAULT_DEVICE_TREE="sun5i-gr8-chip-pro"
@@ -17,6 +18,7 @@ CONFIG_ENV_UBI_VOLUME="uboot-env" # CONFIG_MMC is not set CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_MTD_UBI=y CONFIG_SYS_NAND_BLOCK_SIZE=0x40000 CONFIG_SYS_NAND_PAGE_SIZE=0x1000 CONFIG_SYS_NAND_OOBSIZE=0x100
env/Kconfig +2 -0
@@ -340,6 +340,8 @@ config ENV_IS_IN_SPI_FLASH config ENV_IS_IN_UBI bool "Environment in a UBI volume" depends on !CHAIN_OF_TRUST + depends on MTD_UBI + depends on CMD_UBI help Define this if you have an UBI volume that you want to use for the environment. This has the benefit of wear-leveling the environment
Signature · 1 line
2.19.1
PATCH v3 11/28 mtd: ensure UBI is compiled when ENV_IS_IN_UBI is selected
Quoted 3 lines · On Wed, 5 Dec 2018 00:56:57 +0100 Miquel Raynal <[email protected]>…
UBI must be enabled when the environment is in UBI.
Signed-off-by Miquel Raynal <[email protected]>
Miquel Raynal
maintainerPATCH v3 12/28 mtd: ensure MTD_RAW_NAND is compiled when ENV_IS_IN_NAND is selected
In reply to Miquel RaynalRaw NAND support must be enabled when the environment is in NAND.
--- configs/bk4r1_defconfig | 1 + configs/harmony_defconfig | 1 + 2 files changed, 2 insertions(+)
configs/bk4r1_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_NAND_VF610_NFC=y CONFIG_SYS_NAND_BUSWIDTH_16BIT=y CONFIG_DM_SPI_FLASH=y CONFIG_MTD=y +CONFIG_MTD_RAW_NAND=y CONFIG_MTD_UBI=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_STMICRO=y
configs/harmony_defconfig +1 -0
@@ -30,6 +30,7 @@ CONFIG_ENV_IS_IN_NAND=y CONFIG_SPL_DM=y CONFIG_MTD=y CONFIG_DM_MTD=y +CONFIG_MTD_RAW_NAND=y CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_PCI=y
Signature · 1 line
2.19.1
PATCH v3 12/28 mtd: ensure MTD_RAW_NAND is compiled when ENV_IS_IN_NAND is selected
Quoted 3 lines · On Wed, 5 Dec 2018 00:56:58 +0100 Miquel Raynal <[email protected]>…
Raw NAND support must be enabled when the environment is in NAND.
Signed-off-by Miquel Raynal <[email protected]>
Miquel Raynal
maintainerPATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
In reply to Miquel RaynalMTD support must be enabled when the environment is in NOR.
--- configs/armadillo-800eva_defconfig | 1 + 1 file changed, 1 insertion(+)
configs/armadillo-800eva_defconfig +1 -0
@@ -32,6 +32,7 @@ CONFIG_CMD_PING=y # CONFIG_CMD_MISC is not set CONFIG_ENV_IS_IN_FLASH=y # CONFIG_MMC is not set +CONFIG_MTD=y CONFIG_SH_ETHER=y CONFIG_SCIF_CONSOLE=y CONFIG_OF_LIBFDT=y
Signature · 1 line
2.19.1
PATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
Quoted 12 lines · On Wed, 5 Dec 2018 00:56:59 +0100 Miquel Raynal <[email protected]>…
MTD support must be enabled when the environment is in NOR.
Signed-off-by Miquel Raynal <[email protected]>--- configs/armadillo-800eva_defconfig | 1 + 1 file changed, 1 insertion(+)configs/armadillo-800eva_defconfig +0
-0
configs/armadillo-800eva_defconfig CONFIG_CMD_PING=y · line 35
Quoted 4 lines
configs/armadillo-800eva_defconfig +1
-0@@ -32,6 +32,7 @@ CONFIG_CMD_PING=y # CONFIG_CMD_MISC is not set CONFIG_ENV_IS_IN_FLASH=y # CONFIG_MMC is not set +CONFIG_MTD=y
Don't we need CONFIG_MTD_NOR_FLASH too?
Quoted 3 lines
configs/armadillo-800eva_defconfig +0
-0CONFIG_SH_ETHER=y CONFIG_SCIF_CONSOLE=y CONFIG_OF_LIBFDT=y
PATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
In reply to Miquel RaynalDear Miquel,
Quoted 1 line · In message <[email protected]> you wrote:
MTD support must be enabled when the environment is in NOR.
Environment in NOR must not, I repeat: must not ever depend on MTD!
For more than 19 years we have been using environment in NOR flash without the need for MTD support, which makes a lot of sense especially on smaller systems where resources are low and MTD is an expensive, but not really needed feature.
It is not acceptable to create a dependency that costs so much.
Best regards,
Wolfgang Denk
Signature · 6 lines
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Very ugly or very beautiful women should be flattered on their
understanding, and mediocre ones on their beauty.
-- Philip Earl of ChesterfieldMiquel Raynal
maintainerPATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
Hi Wolfgang,
Wolfgang Denk <[email protected]> wrote on Wed, 05 Dec 2018 13:06:10 +0100:
Quoted 7 lines
Dear Miquel,
Quoted 1 line · In message <[email protected]> you wrote:
MTD support must be enabled when the environment is in NOR.
Naked-by Wolfgang Denk <[email protected]>
Quoted 8 lines
Environment in NOR must not, I repeat: must not ever depend on MTD!
For more than 19 years we have been using environment in NOR flash without the need for MTD support, which makes a lot of sense especially on smaller systems where resources are low and MTD is an expensive, but not really needed feature.
It is not acceptable to create a dependency that costs so much.
I took a rather small configuration: stm32f429-discovery_defconfig which uses CONFIG_MTD_NOR_FLASH. Without CONFIG_MTD, u-boot.bin is 209416 bytes. With CONFIG_MTD, u-boot.bin is 214540 bytes. This is an additional 5124 bytes which represent about 2% of the entire size.
I am talking about U-Boot only, there is a CONFIG_SPL_MTD_SUPPORT option that must be enabled to compile MTD in the SPL so the change I propose do not enlarge the SPL.
Today, there are multiple boards having more than one type of MTD device (eg. raw NAND and SPI-NOR). In this case you need to compile two commands which interface only with the subsystem they have been written for. We propose to kill this approach and instead use an 'mtd' command which shares the same code for all MTD devices: less duplication, more users, and in the end, a reduced size. And I am not event talking about all the code that has been added over the years to "avoid using MTD" which enlarges the binary as well.
The current situation is unmaintainable. Any change in U-Boot under the drivers/mtd/ directory results in hours of debugging to fix broken dependencies and crappy configurations. It took me one week to port the SPI-mem/SPI-NAND layers (which rely on MTD) and to have a working 'mtd' command. It took me and Boris almost 4 weeks to fix the fallouts. Now, either we keep U-Boot MTD subsystem maintainable and in sync as much as possible with Linux to continue to benefit from evolutions/drivers/fixes at the cost of a little overhead, or we continue in the current path, with the results we know.
Thanks,
Miquèl
PATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
Quoted 38 lines · Miquel Raynal
Hi Wolfgang,
Wolfgang Denk <[email protected]> wrote on Wed, 05 Dec 2018 13:06:10 +0100:
Quoted 7 lines
Dear Miquel,
Quoted 1 line · In message <[email protected]> you wrote:
MTD support must be enabled when the environment is in NOR.
Naked-by Wolfgang Denk <[email protected]>Quoted 8 lines
Environment in NOR must not, I repeat: must not ever depend on MTD!
For more than 19 years we have been using environment in NOR flash without the need for MTD support, which makes a lot of sense especially on smaller systems where resources are low and MTD is an expensive, but not really needed feature.
It is not acceptable to create a dependency that costs so much.
I took a rather small configuration: stm32f429-discovery_defconfig which uses
CONFIG_MTD_NOR_FLASH. WithoutCONFIG_MTD, u-boot.bin is 209416 bytes. WithCONFIG_MTD, u-boot.bin is 214540 bytes. This is an additional 5124 bytes which represent about 2% of the entire size.I am talking about U-Boot only, there is a
CONFIG_SPL_MTD_SUPPORToption that must be enabled to compile MTD in the SPL so the change I propose do not enlarge the SPL.Today, there are multiple boards having more than one type of MTD device (eg. raw NAND and SPI-NOR). In this case you need to compile two commands which interface only with the subsystem they have been written for. We propose to kill this approach and instead use an 'mtd' command which shares the same code for all MTD devices: less duplication, more users, and in the end, a reduced size. And I am not event talking about all the code that has been added over the years to "avoid using MTD" which enlarges the binary as well.
Quoted 9 lines
The current situation is unmaintainable. Any change in U-Boot under the
drivers/mtd/directory results in hours of debugging to fix broken dependencies and crappy configurations. It took me one week to port the SPI-mem/SPI-NAND layers (which rely on MTD) and to have a working 'mtd' command. It took me and Boris almost 4 weeks to fix the fallouts. Now, either we keep U-Boot MTD subsystem maintainable and in sync as much as possible with Linux to continue to benefit from evolutions/drivers/fixes at the cost of a little overhead, or we continue in the current path, with the results we know.
I'm not really involved in U-Boot development, but watching the recent MTD changes and also from a user/board supplier point of view, I strongly support Miquèl's and Boris' approach.
Moving towards a unified MTD layer to replace all the historic solutions is definitely the right thing to do. Miquèl already mentioned the reasons in detail and saving a few bytes of binary size in my opinion does not justify enough for going without all the advantages.
Regards,
Frieder
PATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
Dear Frieder,
Quoted 4 lines · In message <[email protected]> you wrote:
Moving towards a unified MTD layer to replace all the historic solutions is definitely the right thing to do. Miquèl already mentioned the reasons in detail...
I fully agree on this. I just ask not to break fundamental principles of operation which have been in use forever.
Parallel NOR is memory - reading memory must not depend on MTD.
Best regards,
Wolfgang Denk
Signature · 7 lines
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de In the pitiful, multipage, connection-boxed form to which the flow- chart has today been elaborated, it has proved to be useless as a design tool -- programmers draw flowcharts after, not before, writing the programs they describe. - Fred Brooks, Jr.
PATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
In reply to Miquel RaynalDear Miquel,
Quoted 5 lines · In message <20181205153218.36f6ed4e@xps13> you wrote:
I took a rather small configuration: stm32f429-discovery_defconfig which uses
CONFIG_MTD_NOR_FLASH. WithoutCONFIG_MTD, u-boot.bin is 209416 bytes. WithCONFIG_MTD, u-boot.bin is 214540 bytes. This is an additional 5124 bytes which represent about 2% of the entire size.
So it's a 5 k code increase for zero benefit.
Quoted 3 lines
I am talking about U-Boot only, there is a
CONFIG_SPL_MTD_SUPPORToption that must be enabled to compile MTD in the SPL so the change I propose do not enlarge the SPL.
This is even worse - the SPL is frequently at the size limits.
Please understand that there is a fundamental difference between parallel NOR flash and things like NAND, SPI NOR etc. - the latter are storage devices, which are usually handled as block device or similar, i. e. you always need a driver to read data. Parallel NOR is not storage, it is _memory_, which is directly mapped int o memory. You can execute code from it.
Reading data from parallel NOR comes at zero overhead (except maybe for setting up the memory controller to map the NOR into the address space).
Adding a dependency on the MTD layer is broken.
Quoted 8 lines
Today, there are multiple boards having more than one type of MTD device (eg. raw NAND and SPI-NOR). In this case you need to compile two commands which interface only with the subsystem they have been written for. We propose to kill this approach and instead use an 'mtd' command which shares the same code for all MTD devices: less duplication, more users, and in the end, a reduced size. And I am not event talking about all the code that has been added over the years to "avoid using MTD" which enlarges the binary as well.
This is perfectly fine. But you must not break fundamental features that have been there ever since the beginning of the project.
Simple things - like reading the environment from parallel NOR (which boils down to calling ofa memcpy()) must not be bloated with unneeded layers like MTD - even if these are needed and useful elsewhere.
Please do not understand me wrong: I fully agree with the MTD rework in general, and I'm happy to see it happen. But please do it in a way not to break existing basic use cases.
Thanks.
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de An expert is a person who avoids the small errors while sweeping on to the grand fallacy.
PATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
Hello Wolfgang,
Quoted 10 lines · On Thu, 06 Dec 2018 09:06:05 +0100 Wolfgang Denk <[email protected]> wrote:
Dear Miquel,
Quoted 5 lines · In message <20181205153218.36f6ed4e@xps13> you wrote:
I took a rather small configuration: stm32f429-discovery_defconfig which uses
CONFIG_MTD_NOR_FLASH. WithoutCONFIG_MTD, u-boot.bin is 209416 bytes. WithCONFIG_MTD, u-boot.bin is 214540 bytes. This is an additional 5124 bytes which represent about 2% of the entire size.So it's a 5 k code increase for zero benefit.
There's no short term benefit, but the long term benefit is ease better maintainability.
Quoted 6 lines
Quoted 4 lines
I am talking about U-Boot only, there is a
CONFIG_SPL_MTD_SUPPORToption that must be enabled to compile MTD in the SPL so the change I propose do not enlarge the SPL.This is even worse - the SPL is frequently at the size limits.
I think you missed the *no*. There's no overhead at all for the SPL. Either the platform was already enabling CONFIG_SPL_MTD_SUPPORT and the MTD code was already compiled in before Miquel's patch, or this option is disabled, and the SPL still does *not* embed the MTD layer.
Quoted 7 lines
Please understand that there is a fundamental difference between parallel NOR flash and things like NAND, SPI NOR etc. - the latter are storage devices, which are usually handled as block device or similar, i. e. you always need a driver to read data. Parallel NOR is not storage, it is _memory_, which is directly mapped int o memory. You can execute code from it.
That's only partially true. Yes, you can read from a parallel NORs like if it was memory because memory controllers embedded in SoCs provide your a direct mmio mapping. That's not true for write accesses, as NORs need to be erased before you can write on it. The MTD layer is here to abstract that, such that flash users only have to know how to manipulate an MTD device instead of having one backend per flash-type (actually it's even one per-flash-type+mem-bus).
Quoted 4 lines
Reading data from parallel NOR comes at zero overhead (except maybe for setting up the memory controller to map the NOR into the address space).
The overhead can be minimal if we want (we can have a tiny MTD layer)
current:
flash_read()
proposed:
mtd_read() mtd_to_flash_read_wrapper() flash_read()
and when I say minimal, I mean both in term of size and perfs (we're talking about an indirect jump and a few extra instructions in mtd_to_flash_read_wrapper()).
The benefit, well, a single entry point for all kind of mtd accesses. That means we can have an MTD backend for env retrieval instead of one per flash type. Same goes for DFU backends, and maybe even for SPL boots.
To sum-up: less code to maintain. And I wouldn't be surprized if we were actually reducing the image footprint in some cases (when support for several flash types is enabled).
Quoted 15 lines
Adding a dependency on the MTD layer is broken.
Quoted 8 lines
Today, there are multiple boards having more than one type of MTD device (eg. raw NAND and SPI-NOR). In this case you need to compile two commands which interface only with the subsystem they have been written for. We propose to kill this approach and instead use an 'mtd' command which shares the same code for all MTD devices: less duplication, more users, and in the end, a reduced size. And I am not event talking about all the code that has been added over the years to "avoid using MTD" which enlarges the binary as well.
This is perfectly fine. But you must not break fundamental features that have been there ever since the beginning of the project.
Quoted 8 lines
Simple things - like reading the environment from parallel NOR (which boils down to calling ofa
memcpy()) must not be bloated with unneeded layers like MTD - even if these are needed and useful elsewhere.Please do not understand me wrong: I fully agree with the MTD rework in general, and I'm happy to see it happen. But please do it in a way not to break existing basic use cases.
Okay, maybe we can put aside the parallel NOR case for now, but I do think even parallel NOR accesses would benefit from the MTD layer.
Regards,
Boris
PATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
Dear Boris,
Quoted 10 lines · In message <20181206100016.706330ba@bbrezillon> you wrote:
Quoted 7 lines
Quoted 5 lines
I took a rather small configuration: stm32f429-discovery_defconfig which uses
CONFIG_MTD_NOR_FLASH. WithoutCONFIG_MTD, u-boot.bin is 209416 bytes. WithCONFIG_MTD, u-boot.bin is 214540 bytes. This is an additional 5124 bytes which represent about 2% of the entire size.So it's a 5 k code increase for zero benefit.
There's no short term benefit, but the long term benefit is ease better maintainability.
For MTD, yes. But a user of environment in NOR flash does not necessarily want MTD,
Parallel NOR flash is a traditional memory device - you find it frequently on older, resource-restricted systems. It is not so polular any more today - SPI NOR is much cheaper, comea with a smaller footprint of thr PCB and is much easier to route.
And on these older systems a 5 k code increase is often critical.
Especially if this should also affect the SPL.
Quoted 4 lines
I think you missed the *no*. There's no overhead at all for the SPL. Either the platform was already enabling
CONFIG_SPL_MTD_SUPPORTand the MTD code was already compiled in before Miquel's patch, or this option is disabled, and the SPL still does *not* embed the MTD layer.
So parallel NOR is still supported in the SPL _without_ MTD? Then why cannot we have the same support in U-Boot, too?
Quoted 10 lines
Quoted 6 lines
Please understand that there is a fundamental difference between parallel NOR flash and things like NAND, SPI NOR etc. - the latter are storage devices, which are usually handled as block device or similar, i. e. you always need a driver to read data. Parallel NOR is not storage, it is _memory_, which is directly mapped int o memory. You can execute code from it.
That's only partially true. Yes, you can read from a parallel NORs like if it was memory because memory controllers embedded in SoCs provide your a direct mmio mapping. That's not true for write accesses,
Right, but especially in the SPL read access is sufficient.
Quoted 4 lines
as NORs need to be erased before you can write on it. The MTD layer is here to abstract that, such that flash users only have to know how to manipulate an MTD device instead of having one backend per flash-type (actually it's even one per-flash-type+mem-bus).
I can't parse this. All we need is the ability to directly call the underlying flash driver. We don't need all the layers that MTD adds on top of that.
Quoted 9 lines
The overhead can be minimal if we want (we can have a tiny MTD layer)
current:
flash_read()proposed:
mtd_read() mtd_to_flash_read_wrapper() flash_read()
You write "can be minimal". Has this already been implemented, or is this just a promise for some (far) future add-on?
What is the (expected) size impact?
Quoted 1 line
The benefit, well, a single entry point for all kind of mtd accesses.
This is a benefit for MTD users, agreed. For the ENV_IS_IN_FLASH case, it replaces a simple call to memcpy(), at least for the boot time case (and for SPL). I don't see this as a benefit at all.
Quoted 6 lines
That means we can have an MTD backend for env retrieval instead of one per flash type. Same goes for DFU backends, and maybe even for SPL boots.
To sum-up: less code to maintain. And I wouldn't be surprized if we were actually reducing the image footprint in some cases (when support for several flash types is enabled).
Yes, I understand this argument.
Quoted 6 lines
Quoted 3 lines
Please do not understand me wrong: I fully agree with the MTD rework in general, and I'm happy to see it happen. But please do it in a way not to break existing basic use cases.
Okay, maybe we can put aside the parallel NOR case for now, but I do think even parallel NOR accesses would benefit from the MTD layer.
I agree that it benefits form an architectural and maintenance point of view. But it adds a new dependency with more than insignificant impact to systems where this has not been before, and where resources are tight.
Best regards,
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
A committee is a life form with six or more legs and no brain.
-- Lazarus Long, "Time Enough For Love"Miquel Raynal
maintainerPATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
Hi Wolfgang,
Wolfgang Denk <[email protected]> wrote on Thu, 06 Dec 2018 10:32:14 +0100:
Quoted 17 lines
Dear Boris,
Quoted 10 lines · In message <20181206100016.706330ba@bbrezillon> you wrote:
Quoted 7 lines
Quoted 5 lines
I took a rather small configuration: stm32f429-discovery_defconfig which uses
CONFIG_MTD_NOR_FLASH. WithoutCONFIG_MTD, u-boot.bin is 209416 bytes. WithCONFIG_MTD, u-boot.bin is 214540 bytes. This is an additional 5124 bytes which represent about 2% of the entire size.So it's a 5 k code increase for zero benefit.
There's no short term benefit, but the long term benefit is ease better maintainability.
For MTD, yes. But a user of environment in NOR flash does not necessarily want MTD,
Quoted 8 lines
Parallel NOR flash is a traditional memory device - you find it frequently on older, resource-restricted systems. It is not so polular any more today - SPI NOR is much cheaper, comea with a smaller footprint of thr PCB and is much easier to route.
And on these older systems a 5 k code increase is often critical.
Especially if this should also affect the SPL.
Please, stop repeating the SPL is a problem. I am not forcing MTD to be compiled in the SPL. You overlooked that point in our last three e-mails: MTD is *not* built in the SPL unless specifically requested. CONFIG_MTD has absolutely no impact on the SPL.
Now, let's talk about U-Boot size. I went through U-Boot MTD implementation to see where this 5k overhead was coming from. The explanation is short: nothing. My observation was wrong because of commands being automatically compiled ("default y"). By the way this is the kind of approach I want to get rid of because it is fundamentally wrong.
Here is a brief summary, still with stm32f429-discovery_defconfig:
* before my series (MTD_NOR_FLASH + CMD_FLASH)
* after my series without MTD (CONFIG_MTD_NOR_FLASH + CMD_FLASH)
* after my series with MTD (MTD_NOR_FLASH + CMD_FLASH + MTD)
In all cases, u-boot.bin is 214540 bytes. I suppose if you don't use anything from MTD, there is no additional symbol, the binary will not be enlarged. And when you use it, it is hard to tell how much bytes were added by MTD and how much bytes have been added by the feature using MTD.
Quoted 8 lines
Quoted 5 lines
I think you missed the *no*. There's no overhead at all for the SPL. Either the platform was already enabling
CONFIG_SPL_MTD_SUPPORTand the MTD code was already compiled in before Miquel's patch, or this option is disabled, and the SPL still does *not* embed the MTD layer.So parallel NOR is still supported in the SPL _without_ MTD? Then why cannot we have the same support in U-Boot, too?
Code duplication, maintainability, single interface, (hopefully) single command, etc
Quoted 8 lines
Quoted 8 lines
Quoted 7 lines
Please understand that there is a fundamental difference between parallel NOR flash and things like NAND, SPI NOR etc. - the latter are storage devices, which are usually handled as block device or similar, i. e. you always need a driver to read data. Parallel NOR is not storage, it is _memory_, which is directly mapped int o memory. You can execute code from it.
Quoted 5 lines
Quoted 3 lines
That's only partially true. Yes, you can read from a parallel NORs like if it was memory because memory controllers embedded in SoCs provide your a direct mmio mapping. That's not true for write accesses,
Right, but especially in the SPL read access is sufficient.
100% agreed, the SPL just needs read access. But we are talking about U-Boot itself here.
[...]
Quoted 11 lines
Quoted 6 lines
Quoted 3 lines
Please do not understand me wrong: I fully agree with the MTD rework in general, and I'm happy to see it happen. But please do it in a way not to break existing basic use cases.
Okay, maybe we can put aside the parallel NOR case for now, but I do think even parallel NOR accesses would benefit from the MTD layer.
I agree that it benefits form an architectural and maintenance point of view. But it adds a new dependency with more than insignificant impact to systems where this has not been before, and where resources are tight.
Do you see another significant impact that must prevent NOR flashes to depend on MTD?
Thanks,
Miquèl
PATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
Quoted 26 lines · Miquel Raynal
Hi Wolfgang,
Wolfgang Denk <[email protected]> wrote on Thu, 06 Dec 2018 10:32:14 +0100:
Quoted 22 lines
Dear Boris,
Quoted 10 lines · In message <20181206100016.706330ba@bbrezillon> you wrote:
Quoted 7 lines
Quoted 5 lines
I took a rather small configuration: stm32f429-discovery_defconfig which uses
CONFIG_MTD_NOR_FLASH. WithoutCONFIG_MTD, u-boot.bin is 209416 bytes. WithCONFIG_MTD, u-boot.bin is 214540 bytes. This is an additional 5124 bytes which represent about 2% of the entire size.So it's a 5 k code increase for zero benefit.
There's no short term benefit, but the long term benefit is ease better maintainability.
For MTD, yes. But a user of environment in NOR flash does not necessarily want MTD,
Parallel NOR flash is a traditional memory device - you find it frequently on older, resource-restricted systems. It is not so polular any more today - SPI NOR is much cheaper, comea with a smaller footprint of thr PCB and is much easier to route.
Quoted 8 lines
Quoted 3 lines
And on these older systems a 5 k code increase is often critical.
Especially if this should also affect the SPL.
Please, stop repeating the SPL is a problem. I am not forcing MTD to be compiled in the SPL. You overlooked that point in our last three e-mails: MTD is *not* built in the SPL unless specifically requested.
CONFIG_MTDhas absolutely no impact on the SPL.
Right, and this is the important part that you are indeed getting right. We must be careful about the SPL case. You are, so good, lets move on.
Quoted 12 lines
Now, let's talk about U-Boot size. I went through U-Boot MTD implementation to see where this 5k overhead was coming from. The explanation is short: nothing. My observation was wrong because of commands being automatically compiled ("default y"). By the way this is the kind of approach I want to get rid of because it is fundamentally wrong.
Here is a brief summary, still with stm32f429-discovery_defconfig:
* before my series (MTD_NOR_FLASH+CMD_FLASH)
* after my series without MTD (CONFIG_MTD_NOR_FLASH+CMD_FLASH)
* after my series with MTD (MTD_NOR_FLASH+CMD_FLASH+ MTD)
Quoted 5 lines
In all cases, u-boot.bin is 214540 bytes. I suppose if you don't use anything from MTD, there is no additional symbol, the binary will not be enlarged. And when you use it, it is hard to tell how much bytes were added by MTD and how much bytes have been added by the feature using MTD.
So when you aren't calling into the new code it gets discarded as expected, good. Thanks for digging.
Quoted 10 lines
Quoted 7 lines
Quoted 4 lines
I think you missed the *no*. There's no overhead at all for the SPL. Either the platform was already enabling
CONFIG_SPL_MTD_SUPPORTand the MTD code was already compiled in before Miquel's patch, or this option is disabled, and the SPL still does *not* embed the MTD layer.So parallel NOR is still supported in the SPL _without_ MTD? Then why cannot we have the same support in U-Boot, too?
Code duplication, maintainability, single interface, (hopefully) single command, etc
Right. And to be clear, in the main U-Boot case while we don't grow the binary for fun, we do grow the overall binary (for some board or another) with nearly every push because we're quite often doing "lets fix $X" or "let's add $Y" and rarely "Drop $X as it's linked but unused". Just like DM is resulting in an overall larger binary that's a more consistent and maintainable codebase, this too will result in some things growing in binary size. And we should review the framework with an eye towards "can we do this in a more simple or size-courteous way?" size growth in and of itself isn't a fatal problem.
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
Quoted 6 lines
Please understand that there is a fundamental difference between parallel NOR flash and things like NAND, SPI NOR etc. - the latter are storage devices, which are usually handled as block device or similar, i. e. you always need a driver to read data. Parallel NOR is not storage, it is _memory_, which is directly mapped int o memory. You can execute code from it.
Quoted 8 lines
Quoted 5 lines
Quoted 3 lines
That's only partially true. Yes, you can read from a parallel NORs like if it was memory because memory controllers embedded in SoCs provide your a direct mmio mapping. That's not true for write accesses,
Right, but especially in the SPL read access is sufficient.
100% agreed, the SPL just needs read access. But we are talking about U-Boot itself here.
So, new but related question. Are we dropping the write path in the case of SPL? The only case I can think of where SPL might be doing an MTD write would be bootcount stored in env, so we should be able to drop those paths in the normal case.
Quoted 6 lines
[...]
Quoted 4 lines
Quoted 4 lines
Quoted 3 lines
Please do not understand me wrong: I fully agree with the MTD rework in general, and I'm happy to see it happen. But please do it in a way not to break existing basic use cases.
Quoted 7 lines
Quoted 7 lines
Quoted 2 lines
Okay, maybe we can put aside the parallel NOR case for now, but I do think even parallel NOR accesses would benefit from the MTD layer.
I agree that it benefits form an architectural and maintenance point of view. But it adds a new dependency with more than insignificant impact to systems where this has not been before, and where resources are tight.
Frankly I'm concerned that we must have a lot of these boards that aren't actually functional today, or are overwriting something else in memory. Using buildman and the stm32f429-discovery with buildman, I see our growth from v2018.01 to v2018.11 is:
all +48781 bss -628 data +5592 rodata +3079 text +40738
Of course, that's not all inertia growth, there's lots of intentional new board-specific code. So lets try taurus (slightly reformatted output):
all +42136 bss +13344 data +4512 rodata +936 text +23344 spl/u-boot-spl:all +126 spl/u-boot-spl:bss +24 spl/u-boot-spl:rodata +38 spl/u-boot-spl:text +64
Here the board hasn't opted out of the EFI subsystem which has seen a good deal of desired growth (fixes and features).
So, if we're going to start actively worrying about resource constrained boards not fitting within resource _now_ step 1 is to identify them and step 2 is to make sure they're making use of the hooks we have to make exceeding a specific size a link time error. Step 3 will be dealing with however many boards we have that are failing today.
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: not available URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181206/9daef51c/attachment.sig>
PATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
Am 06.12.2018 um 16:59 schrieb Tom Rini:
Quoted 94 lines · Miquel Raynal
Quoted 26 lines
Hi Wolfgang,
Wolfgang Denk <[email protected]> wrote on Thu, 06 Dec 2018 10:32:14 +0100:
Quoted 22 lines
Dear Boris,
Quoted 10 lines · In message <20181206100016.706330ba@bbrezillon> you wrote:
Quoted 7 lines
Quoted 5 lines
I took a rather small configuration: stm32f429-discovery_defconfig which uses
CONFIG_MTD_NOR_FLASH. WithoutCONFIG_MTD, u-boot.bin is 209416 bytes. WithCONFIG_MTD, u-boot.bin is 214540 bytes. This is an additional 5124 bytes which represent about 2% of the entire size.So it's a 5 k code increase for zero benefit.
There's no short term benefit, but the long term benefit is ease better maintainability.
For MTD, yes. But a user of environment in NOR flash does not necessarily want MTD,
Parallel NOR flash is a traditional memory device - you find it frequently on older, resource-restricted systems. It is not so polular any more today - SPI NOR is much cheaper, comea with a smaller footprint of thr PCB and is much easier to route.
Quoted 8 lines
Quoted 3 lines
And on these older systems a 5 k code increase is often critical.
Especially if this should also affect the SPL.
Please, stop repeating the SPL is a problem. I am not forcing MTD to be compiled in the SPL. You overlooked that point in our last three e-mails: MTD is *not* built in the SPL unless specifically requested.
CONFIG_MTDhas absolutely no impact on the SPL.Right, and this is the important part that you are indeed getting right. We must be careful about the SPL case. You are, so good, lets move on.
Quoted 12 lines
Now, let's talk about U-Boot size. I went through U-Boot MTD implementation to see where this 5k overhead was coming from. The explanation is short: nothing. My observation was wrong because of commands being automatically compiled ("default y"). By the way this is the kind of approach I want to get rid of because it is fundamentally wrong.
Here is a brief summary, still with stm32f429-discovery_defconfig:
* before my series (MTD_NOR_FLASH+CMD_FLASH)
* after my series without MTD (CONFIG_MTD_NOR_FLASH+CMD_FLASH)
* after my series with MTD (MTD_NOR_FLASH+CMD_FLASH+ MTD)Quoted 5 lines
In all cases, u-boot.bin is 214540 bytes. I suppose if you don't use anything from MTD, there is no additional symbol, the binary will not be enlarged. And when you use it, it is hard to tell how much bytes were added by MTD and how much bytes have been added by the feature using MTD.
So when you aren't calling into the new code it gets discarded as expected, good. Thanks for digging.
Quoted 10 lines
Quoted 7 lines
Quoted 4 lines
I think you missed the *no*. There's no overhead at all for the SPL. Either the platform was already enabling
CONFIG_SPL_MTD_SUPPORTand the MTD code was already compiled in before Miquel's patch, or this option is disabled, and the SPL still does *not* embed the MTD layer.So parallel NOR is still supported in the SPL _without_ MTD? Then why cannot we have the same support in U-Boot, too?
Code duplication, maintainability, single interface, (hopefully) single command, etc
Right. And to be clear, in the main U-Boot case while we don't grow the binary for fun, we do grow the overall binary (for some board or another) with nearly every push because we're quite often doing "lets fix $X" or "let's add $Y" and rarely "Drop $X as it's linked but unused". Just like DM is resulting in an overall larger binary that's a more consistent and maintainable codebase, this too will result in some things growing in binary size. And we should review the framework with an eye towards "can we do this in a more simple or size-courteous way?" size growth in and of itself isn't a fatal problem.
Quoted 13 lines
Quoted 12 lines
Quoted 10 lines
Quoted 6 lines
Please understand that there is a fundamental difference between parallel NOR flash and things like NAND, SPI NOR etc. - the latter are storage devices, which are usually handled as block device or similar, i. e. you always need a driver to read data. Parallel NOR is not storage, it is _memory_, which is directly mapped int o memory. You can execute code from it.
That's only partially true. Yes, you can read from a parallel NORs like if it was memory because memory controllers embedded in SoCs provide your a direct mmio mapping. That's not true for write accesses,
Right, but especially in the SPL read access is sufficient.
Quoted 7 lines
Quoted 2 lines
100% agreed, the SPL just needs read access. But we are talking about U-Boot itself here.
So, new but related question. Are we dropping the write path in the case of SPL? The only case I can think of where SPL might be doing an MTD write would be bootcount stored in env, so we should be able to drop those paths in the normal case.
Based on my tests with Vignesh's series to port SF to MTD, I don't think we drop the write part in SPL. I also brought that up in that thread.
However, my (preliminary) test results of his work showed that SPL size is actually reduced when using his new 'spi-nor-tiny' code. And that's without trying to reduce MTD code size.
Regards,
Simon
Quoted 43 lines
Quoted 7 lines
[...]
Quoted 4 lines
Quoted 4 lines
Quoted 3 lines
Please do not understand me wrong: I fully agree with the MTD rework in general, and I'm happy to see it happen. But please do it in a way not to break existing basic use cases.
Quoted 7 lines
Quoted 7 lines
Quoted 2 lines
Okay, maybe we can put aside the parallel NOR case for now, but I do think even parallel NOR accesses would benefit from the MTD layer.
I agree that it benefits form an architectural and maintenance point of view. But it adds a new dependency with more than insignificant impact to systems where this has not been before, and where resources are tight.
Frankly I'm concerned that we must have a lot of these boards that aren't actually functional today, or are overwriting something else in memory. Using buildman and the stm32f429-discovery with buildman, I see our growth from v2018.01 to v2018.11 is:
all +48781 bss -628 data +5592 rodata +3079 text +40738Of course, that's not all inertia growth, there's lots of intentional new board-specific code. So lets try taurus (slightly reformatted output):
all +42136 bss +13344 data +4512 rodata +936 text +23344 spl/u-boot-spl:all +126 spl/u-boot-spl:bss +24 spl/u-boot-spl:rodata +38 spl/u-boot-spl:text +64Here the board hasn't opted out of the EFI subsystem which has seen a good deal of desired growth (fixes and features).
So, if we're going to start actively worrying about resource constrained boards not fitting within resource _now_ step 1 is to identify them and step 2 is to make sure they're making use of the hooks we have to make exceeding a specific size a link time error. Step 3 will be dealing with however many boards we have that are failing today.
_______________________________________________
U-Boot mailing list
U-Boot at lists.denx.de
https://lists.denx.de/listinfo/u-boot
Vignesh R
maintainerPATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
Quoted 6 lines · Simon Goldschmidt
Am 06.12.2018 um 16:59 schrieb Tom Rini:
Quoted 5 lines · Miquel Raynal
Quoted 4 lines
Hi Wolfgang,
Wolfgang Denk <[email protected]> wrote on Thu, 06 Dec 2018 10:32:14 +0100:
[...]
Quoted 22 lines
Quoted 14 lines
Quoted 14 lines
Quoted 13 lines
Quoted 11 lines
Quoted 6 lines
Please understand that there is a fundamental difference between parallel NOR flash and things like NAND, SPI NOR etc. - the latter are storage devices, which are usually handled as block device or similar, i. e. you always need a driver to read data. Parallel NOR is not storage, it is _memory_, which is directly mapped int o memory. You can execute code from it.
That's only partially true. Yes, you can read from a parallel NORs like
if it was memory because memory controllers embedded in SoCs provide your a direct mmio mapping. That's not true for write accesses,Right, but especially in the SPL read access is sufficient.
Quoted 7 lines
Quoted 2 lines
100% agreed, the SPL just needs read access. But we are talking about U-Boot itself here.
So, new but related question. Are we dropping the write path in the case of SPL? The only case I can think of where SPL might be doing an MTD write would be bootcount stored in env, so we should be able to drop those paths in the normal case.
Quoted 7 lines
Based on my tests with Vignesh's series to port SF to MTD, I don't think we drop the write part in SPL. I also brought that up in that thread.
However, my (preliminary) test results of his work showed that SPL size is actually reduced when using his new 'spi-nor-tiny' code. And that's without trying to reduce MTD code size.
To add, 'spi-nor-tiny' has only read path (write/erase returns -ENOTSUPP). There is an option to either use full stack(read+write+erase support) in SPL or use spi-nor-tiny. Boards with SPL size constraints can use spi-nor-tiny to reduces overall code size.
Signature · 2 lines
Regards Vignesh
Miquel Raynal
maintainerPATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
In reply to Tom RiniHi Tom, Wolfgang,
Tom Rini <[email protected]> wrote on Thu, 6 Dec 2018 10:59:25 -0500:
Quoted 129 lines · Miquel Raynal
Quoted 26 lines
Hi Wolfgang,
Wolfgang Denk <[email protected]> wrote on Thu, 06 Dec 2018 10:32:14 +0100:
Quoted 22 lines
Dear Boris,
Quoted 10 lines · In message <20181206100016.706330ba@bbrezillon> you wrote:
Quoted 7 lines
Quoted 5 lines
I took a rather small configuration: stm32f429-discovery_defconfig which uses
CONFIG_MTD_NOR_FLASH. WithoutCONFIG_MTD, u-boot.bin is 209416 bytes. WithCONFIG_MTD, u-boot.bin is 214540 bytes. This is an additional 5124 bytes which represent about 2% of the entire size.So it's a 5 k code increase for zero benefit.
There's no short term benefit, but the long term benefit is ease better maintainability.
For MTD, yes. But a user of environment in NOR flash does not necessarily want MTD,
Parallel NOR flash is a traditional memory device - you find it frequently on older, resource-restricted systems. It is not so polular any more today - SPI NOR is much cheaper, comea with a smaller footprint of thr PCB and is much easier to route.
Quoted 8 lines
Quoted 3 lines
And on these older systems a 5 k code increase is often critical.
Especially if this should also affect the SPL.
Please, stop repeating the SPL is a problem. I am not forcing MTD to be compiled in the SPL. You overlooked that point in our last three e-mails: MTD is *not* built in the SPL unless specifically requested.
CONFIG_MTDhas absolutely no impact on the SPL.Right, and this is the important part that you are indeed getting right. We must be careful about the SPL case. You are, so good, lets move on.
Quoted 12 lines
Now, let's talk about U-Boot size. I went through U-Boot MTD implementation to see where this 5k overhead was coming from. The explanation is short: nothing. My observation was wrong because of commands being automatically compiled ("default y"). By the way this is the kind of approach I want to get rid of because it is fundamentally wrong.
Here is a brief summary, still with stm32f429-discovery_defconfig:
* before my series (MTD_NOR_FLASH+CMD_FLASH)
* after my series without MTD (CONFIG_MTD_NOR_FLASH+CMD_FLASH)
* after my series with MTD (MTD_NOR_FLASH+CMD_FLASH+ MTD)Quoted 5 lines
In all cases, u-boot.bin is 214540 bytes. I suppose if you don't use anything from MTD, there is no additional symbol, the binary will not be enlarged. And when you use it, it is hard to tell how much bytes were added by MTD and how much bytes have been added by the feature using MTD.
So when you aren't calling into the new code it gets discarded as expected, good. Thanks for digging.
Quoted 10 lines
Quoted 7 lines
Quoted 4 lines
I think you missed the *no*. There's no overhead at all for the SPL. Either the platform was already enabling
CONFIG_SPL_MTD_SUPPORTand the MTD code was already compiled in before Miquel's patch, or this option is disabled, and the SPL still does *not* embed the MTD layer.So parallel NOR is still supported in the SPL _without_ MTD? Then why cannot we have the same support in U-Boot, too?
Code duplication, maintainability, single interface, (hopefully) single command, etc
Right. And to be clear, in the main U-Boot case while we don't grow the binary for fun, we do grow the overall binary (for some board or another) with nearly every push because we're quite often doing "lets fix $X" or "let's add $Y" and rarely "Drop $X as it's linked but unused". Just like DM is resulting in an overall larger binary that's a more consistent and maintainable codebase, this too will result in some things growing in binary size. And we should review the framework with an eye towards "can we do this in a more simple or size-courteous way?" size growth in and of itself isn't a fatal problem.
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
Quoted 6 lines
Please understand that there is a fundamental difference between parallel NOR flash and things like NAND, SPI NOR etc. - the latter are storage devices, which are usually handled as block device or similar, i. e. you always need a driver to read data. Parallel NOR is not storage, it is _memory_, which is directly mapped int o memory. You can execute code from it.
Quoted 8 lines
Quoted 5 lines
Quoted 3 lines
That's only partially true. Yes, you can read from a parallel NORs like if it was memory because memory controllers embedded in SoCs provide your a direct mmio mapping. That's not true for write accesses,
Right, but especially in the SPL read access is sufficient.
100% agreed, the SPL just needs read access. But we are talking about U-Boot itself here.
So, new but related question. Are we dropping the write path in the case of SPL? The only case I can think of where SPL might be doing an MTD write would be bootcount stored in env, so we should be able to drop those paths in the normal case.
Quoted 6 lines
[...]
Quoted 4 lines
Quoted 4 lines
Quoted 3 lines
Please do not understand me wrong: I fully agree with the MTD rework in general, and I'm happy to see it happen. But please do it in a way not to break existing basic use cases.
Quoted 7 lines
Quoted 7 lines
Quoted 2 lines
Okay, maybe we can put aside the parallel NOR case for now, but I do think even parallel NOR accesses would benefit from the MTD layer.
I agree that it benefits form an architectural and maintenance point of view. But it adds a new dependency with more than insignificant impact to systems where this has not been before, and where resources are tight.
Frankly I'm concerned that we must have a lot of these boards that aren't actually functional today, or are overwriting something else in memory. Using buildman and the stm32f429-discovery with buildman, I see our growth from v2018.01 to v2018.11 is:
all +48781 bss -628 data +5592 rodata +3079 text +40738Of course, that's not all inertia growth, there's lots of intentional new board-specific code. So lets try taurus (slightly reformatted output):
all +42136 bss +13344 data +4512 rodata +936 text +23344 spl/u-boot-spl:all +126 spl/u-boot-spl:bss +24 spl/u-boot-spl:rodata +38 spl/u-boot-spl:text +64
Quoted 9 lines
Here the board hasn't opted out of the EFI subsystem which has seen a good deal of desired growth (fixes and features).
So, if we're going to start actively worrying about resource constrained boards not fitting within resource _now_ step 1 is to identify them and step 2 is to make sure they're making use of the hooks we have to make exceeding a specific size a link time error. Step 3 will be dealing with however many boards we have that are failing today.
So what's our next move? I think Wolfgang had two points:
* NOR (and everything related to NOR) should not depend on MTD.
* Same for NAND.
For NAND this is already too late, NAND code already relies on MTD so I am just cleaning Makefiles/Kconfig/defconfigs to avoid the "xxx:
missing symbol" error. Now, what about NOR? We know that the overhead, today, is null, so do you allow me to make NOR depend on MTD or are you still opposed to that? I think U-Boot maintenance and future changes would be really eased.
Thanks,
Miquèl
PATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
Quoted 1 line · Miquel Raynal
Hi Tom, Wolfgang,
[snip]
Quoted 10 lines
So what's our next move? I think Wolfgang had two points:
* NOR (and everything related to NOR) should not depend on MTD.
* Same for NAND.For NAND this is already too late, NAND code already relies on MTD so I am just cleaning Makefiles/Kconfig/defconfigs to avoid the "xxx:
missing symbol" error. Now, what about NOR? We know that the overhead, today, is null, so do you allow me to make NOR depend on MTD or are you still opposed to that? I think U-Boot maintenance and future changes would be really eased.
Right, so moving forward, I think the plan is:
- For SPL, we acknowledge and continue to allow for one-off drivers that don't depend on MTD for NOR/NAND for read-only case.
- For full U-Boot, we continue with the path you're talking about that gives us the most long term benefits and where yes, NOR and NAND depend on MTD. We will do this in a way that doesn't grow the binary size needlessly but by the same token we aren't going to restrict NOR/NAND drivers more harshly than we do the entire rest of the project.
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: not available URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181207/b5aebf49/attachment.sig>
PATCH v3 13/28 mtd: ensure MTD is compiled when ENV_IS_IN_FLASH is selected
In reply to Miquel RaynalDear Miquel,
Quoted 3 lines · In message <20181206162300.7ccfddda@xps13> you wrote:
Do you see another significant impact that must prevent NOR flashes to depend on MTD?
My concern here is only resources. If the memory footprint really does not grow, I'm fine with that. But I somwhow doubt this is possible.
Best regards,
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de The aim of science is not to open the door to everlasting wisdom but to set a limit on everlasting error. - Bertolt Brecht
Miquel Raynal
maintainerPATCH v3 14/28 mtd: ensure CMD_NAND is compiled when its options are selected
In reply to Miquel RaynalIn some files, options of CMD_NAND are selected but not the command itself. Fix this inconsistency.
--- configs/apf27_defconfig | 1 + configs/aristainetos2_defconfig | 1 + configs/aristainetos2b_defconfig | 1 + configs/aristainetos_defconfig | 1 + configs/bg0900_defconfig | 1 + configs/bitmain_antminer_s9_defconfig | 1 + configs/bk4r1_defconfig | 1 + configs/colibri-imx6ull_defconfig | 1 + configs/colibri_imx7_defconfig | 1 + configs/gwventana_nand_defconfig | 1 + configs/imx6q_logic_defconfig | 1 + configs/m53menlo_defconfig | 1 + configs/mx28evk_auart_console_defconfig | 1 + configs/mx28evk_defconfig | 1 + configs/mx28evk_nand_defconfig | 1 + configs/mx28evk_spi_defconfig | 1 + configs/mx6sabreauto_defconfig | 1 + configs/mx6sxsabreauto_defconfig | 1 + configs/pcm052_defconfig | 1 + configs/pcm058_defconfig | 1 + configs/platinum_picon_defconfig | 1 + configs/platinum_titanium_defconfig | 1 + configs/titanium_defconfig | 1 + configs/vf610twr_defconfig | 1 + configs/vf610twr_nand_defconfig | 1 + configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig | 1 + configs/zynq_zc770_xm011_defconfig | 1 + configs/zynq_zc770_xm011_x16_defconfig | 1 + 28 files changed, 28 insertions(+)
configs/apf27_defconfig +1 -0
@@ -20,6 +20,7 @@ CONFIG_CMD_EEPROM=y # CONFIG_CMD_FLASH is not set CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_NAND_LOCK_UNLOCK=y CONFIG_CMD_DHCP=y
configs/aristainetos2_defconfig +1 -0
@@ -17,6 +17,7 @@ CONFIG_CMD_BOOTZ=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_SF=y CONFIG_CMD_USB=y
configs/aristainetos2b_defconfig +1 -0
@@ -17,6 +17,7 @@ CONFIG_CMD_BOOTZ=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_SF=y CONFIG_CMD_USB=y
configs/aristainetos_defconfig +1 -0
@@ -17,6 +17,7 @@ CONFIG_CMD_BOOTZ=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_SF=y CONFIG_CMD_USB=y
configs/bg0900_defconfig +1 -0
@@ -20,6 +20,7 @@ CONFIG_HUSH_PARSER=y CONFIG_CMD_BOOTZ=y # CONFIG_CMD_FLASH is not set CONFIG_CMD_GPIO=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_SF=y CONFIG_CMD_SPI=y
configs/bitmain_antminer_s9_defconfig +1 -0
@@ -28,6 +28,7 @@ CONFIG_CMD_FPGA_LOADMK=y CONFIG_CMD_FPGA_LOADP=y CONFIG_CMD_GPIO=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_LOCK_UNLOCK=y CONFIG_CMD_PART=y # CONFIG_CMD_SETEXPR is not set
configs/bk4r1_defconfig +1 -0
@@ -14,6 +14,7 @@ CONFIG_CMD_MEMTEST=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_SF=y CONFIG_CMD_DHCP=y
configs/colibri-imx6ull_defconfig +1 -0
@@ -27,6 +27,7 @@ CONFIG_CMD_GPT=y # CONFIG_RANDOM_UUID is not set CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_NAND_TORTURE=y CONFIG_CMD_USB=y
configs/colibri_imx7_defconfig +1 -0
@@ -25,6 +25,7 @@ CONFIG_CMD_DFU=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_NAND_TORTURE=y CONFIG_CMD_USB=y
configs/gwventana_nand_defconfig +1 -0
@@ -40,6 +40,7 @@ CONFIG_CMD_SPL_WRITE_SIZE=0x20000 CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_PCI=y CONFIG_CMD_USB=y
configs/imx6q_logic_defconfig +1 -0
@@ -35,6 +35,7 @@ CONFIG_CMD_MEMTEST=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_USB=y CONFIG_CMD_USB_SDP=y
configs/m53menlo_defconfig +1 -0
@@ -27,6 +27,7 @@ CONFIG_CMD_GREPENV=y CONFIG_CMD_FUSE=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_USB=y CONFIG_CMD_DHCP=y
configs/mx28evk_auart_console_defconfig +1 -0
@@ -20,6 +20,7 @@ CONFIG_CMD_BOOTZ=y # CONFIG_CMD_FLASH is not set CONFIG_CMD_GPIO=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_SF=y CONFIG_CMD_SPI=y
configs/mx28evk_defconfig +1 -0
@@ -20,6 +20,7 @@ CONFIG_CMD_BOOTZ=y # CONFIG_CMD_FLASH is not set CONFIG_CMD_GPIO=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_SF=y CONFIG_CMD_SPI=y
configs/mx28evk_nand_defconfig +1 -0
@@ -19,6 +19,7 @@ CONFIG_CMD_BOOTZ=y # CONFIG_CMD_FLASH is not set CONFIG_CMD_GPIO=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_SF=y CONFIG_CMD_SPI=y
configs/mx28evk_spi_defconfig +1 -0
@@ -19,6 +19,7 @@ CONFIG_CMD_BOOTZ=y # CONFIG_CMD_FLASH is not set CONFIG_CMD_GPIO=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_SF=y CONFIG_CMD_SPI=y
configs/mx6sabreauto_defconfig +1 -0
@@ -26,6 +26,7 @@ CONFIG_CMD_DFU=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_PART=y CONFIG_CMD_SF=y
configs/mx6sxsabreauto_defconfig +1 -0
@@ -12,6 +12,7 @@ CONFIG_CMD_BOOTZ=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_SF=y CONFIG_CMD_USB=y
configs/pcm052_defconfig +1 -0
@@ -14,6 +14,7 @@ CONFIG_CMD_MEMTEST=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_DHCP=y CONFIG_CMD_MII=y
configs/pcm058_defconfig +1 -0
@@ -30,6 +30,7 @@ CONFIG_SPL_YMODEM_SUPPORT=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_SF=y CONFIG_CMD_CACHE=y
configs/platinum_picon_defconfig +1 -0
@@ -27,6 +27,7 @@ CONFIG_CMD_BOOTZ=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_USB=y # CONFIG_CMD_SETEXPR is not set
configs/platinum_titanium_defconfig +1 -0
@@ -27,6 +27,7 @@ CONFIG_CMD_BOOTZ=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_USB=y # CONFIG_CMD_SETEXPR is not set
configs/titanium_defconfig +1 -0
@@ -15,6 +15,7 @@ CONFIG_CMD_BOOTZ=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y CONFIG_CMD_USB=y # CONFIG_CMD_SETEXPR is not set
configs/vf610twr_defconfig +1 -0
@@ -17,6 +17,7 @@ CONFIG_CMD_FUSE=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y # CONFIG_CMD_SETEXPR is not set CONFIG_CMD_DHCP=y
configs/vf610twr_nand_defconfig +1 -0
@@ -17,6 +17,7 @@ CONFIG_CMD_FUSE=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_TRIMFFS=y # CONFIG_CMD_SETEXPR is not set CONFIG_CMD_DHCP=y
configs/xilinx_zynqmp_zc1751_xm016_dc2_defconfig +1 -0
@@ -31,6 +31,7 @@ CONFIG_CMD_FPGA_LOADP=y CONFIG_CMD_GPIO=y CONFIG_CMD_GPT=y CONFIG_CMD_I2C=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_LOCK_UNLOCK=y CONFIG_CMD_USB=y CONFIG_CMD_TFTPPUT=y
configs/zynq_zc770_xm011_defconfig +1 -0
@@ -23,6 +23,7 @@ CONFIG_CMD_FPGA_LOADFS=y CONFIG_CMD_FPGA_LOADMK=y CONFIG_CMD_FPGA_LOADP=y CONFIG_CMD_GPIO=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_LOCK_UNLOCK=y # CONFIG_CMD_SETEXPR is not set # CONFIG_CMD_NET is not set
configs/zynq_zc770_xm011_x16_defconfig +1 -0
@@ -23,6 +23,7 @@ CONFIG_CMD_FPGA_LOADFS=y CONFIG_CMD_FPGA_LOADMK=y CONFIG_CMD_FPGA_LOADP=y CONFIG_CMD_GPIO=y +CONFIG_CMD_NAND=y CONFIG_CMD_NAND_LOCK_UNLOCK=y # CONFIG_CMD_SETEXPR is not set # CONFIG_CMD_NET is not set
Signature · 1 line
2.19.1
PATCH v3 14/28 mtd: ensure CMD_NAND is compiled when its options are selected
Quoted 4 lines · On Wed, 5 Dec 2018 00:57:00 +0100 Miquel Raynal <[email protected]>…
In some files, options of
CMD_NANDare selected but not the command itself. Fix this inconsistency.Signed-off-by Miquel Raynal <[email protected]>
Miquel Raynal
maintainerPATCH v3 15/28 mtd: ensure MTD is compiled when CMD_MTDPARTS is selected
In reply to Miquel RaynalMTD support must be enabled when using mtdparts. Indeed, functions like get_mtd_info(), get_mtd_device() and put_mtd_device() are in drivers/mtd/mtd_uboot.c and are built only with CONFIG_MTD.
--- configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig | 1 + configs/BSC9131RDB_SPIFLASH_defconfig | 1 + configs/lion-rk3368_defconfig | 1 + configs/sandbox64_defconfig | 1 + configs/sandbox_defconfig | 1 + 5 files changed, 5 insertions(+)
configs/BSC9131RDB_SPIFLASH_SYSCLK100_defconfig +1 -0
@@ -26,6 +26,7 @@ CONFIG_MTDPARTS_DEFAULT="mtdparts=ff800000.flash:1m(uboot),8m(kernel),512k(dtb), CONFIG_ENV_IS_IN_SPI_FLASH=y CONFIG_FSL_CAAM=y # CONFIG_MMC is not set +CONFIG_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SPANSION=y CONFIG_PHY_MARVELL=y
configs/BSC9131RDB_SPIFLASH_defconfig +1 -0
@@ -26,6 +26,7 @@ CONFIG_MTDPARTS_DEFAULT="mtdparts=ff800000.flash:1m(uboot),8m(kernel),512k(dtb), CONFIG_ENV_IS_IN_SPI_FLASH=y CONFIG_FSL_CAAM=y # CONFIG_MMC is not set +CONFIG_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_SPANSION=y CONFIG_PHY_MARVELL=y
configs/lion-rk3368_defconfig +1 -0
@@ -68,6 +68,7 @@ CONFIG_TPL_CLK=y CONFIG_ROCKCHIP_GPIO=y CONFIG_MMC_DW=y CONFIG_MMC_DW_ROCKCHIP=y +CONFIG_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_MACRONIX=y CONFIG_SPI_FLASH_WINBOND=y
configs/sandbox64_defconfig +1 -0
@@ -115,6 +115,7 @@ CONFIG_PWRSEQ=y CONFIG_SPL_PWRSEQ=y CONFIG_I2C_EEPROM=y CONFIG_MMC_SANDBOX=y +CONFIG_MTD=y CONFIG_SPI_FLASH_SANDBOX=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y
configs/sandbox_defconfig +1 -0
@@ -120,6 +120,7 @@ CONFIG_PWRSEQ=y CONFIG_SPL_PWRSEQ=y CONFIG_I2C_EEPROM=y CONFIG_MMC_SANDBOX=y +CONFIG_MTD=y CONFIG_SPI_FLASH_SANDBOX=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y
Signature · 1 line
2.19.1
PATCH v3 15/28 mtd: ensure MTD is compiled when CMD_MTDPARTS is selected
Quoted 5 lines · On Wed, 5 Dec 2018 00:57:01 +0100 Miquel Raynal <[email protected]>…
MTD support must be enabled when using mtdparts. Indeed, functions like
get_mtd_info(),get_mtd_device()andput_mtd_device()are indrivers/mtd/mtd_uboot.cand are built only withCONFIG_MTD.Signed-off-by Miquel Raynal <[email protected]>
Miquel Raynal
maintainerPATCH v3 16/28 configs: move CONFIG_MTD in defconfigs when set in arch includes
In reply to Miquel RaynalLet's be consistent and always declare CONFIG_MTD from the defconfig file when needed.
--- configs/socfpga_stratix10_defconfig | 1 + configs/turris_mox_defconfig | 1 + include/configs/mvebu_armada-37xx.h | 1 - include/configs/socfpga_stratix10_socdk.h | 1 - 4 files changed, 2 insertions(+), 2 deletions(-)
configs/socfpga_stratix10_defconfig +1 -0
@@ -38,6 +38,7 @@ CONFIG_DM_I2C=y CONFIG_SYS_I2C_DW=y CONFIG_DM_MMC=y CONFIG_MMC_DW=y +CONFIG_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_SPANSION=y
configs/turris_mox_defconfig +1 -0
@@ -42,6 +42,7 @@ CONFIG_DM_MMC=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_SDMA=y CONFIG_MMC_SDHCI_XENON=y +CONFIG_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_MACRONIX=y CONFIG_SPI_FLASH_SPANSION=y
include/configs/mvebu_armada-37xx.h +0 -1
@@ -64,7 +64,6 @@#define CONFIG_SF_DEFAULT_SPEED 1000000#define CONFIG_SF_DEFAULT_MODE SPI_MODE_0#define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE -#define CONFIG_MTD /* needed for mtdparts commands */ #define CONFIG_MTD_PARTITIONS /* required for UBI partition support */ /* Environment in SPI NOR flash */
include/configs/socfpga_stratix10_socdk.h +0 -1
@@ -76,7 +76,6 @@#endif /* CONFIG_ENV_IS_IN_SPI_FLASH */ #ifndef CONFIG_SPL_BUILD -#define CONFIG_MTD #define CONFIG_MTD_PARTITIONS #define MTDIDS_DEFAULT "nor0=ff705000.spi.0"#endif /* CONFIG_SPL_BUILD */
Signature · 1 line
2.19.1
PATCH v3 16/28 configs: move CONFIG_MTD in defconfigs when set in arch includes
Quoted 4 lines · On Wed, 5 Dec 2018 00:57:02 +0100 Miquel Raynal <[email protected]>…
Let's be consistent and always declare
CONFIG_MTDfrom the defconfig file when needed.Signed-off-by Miquel Raynal <[email protected]>
One comment below.
Quoted 48 lines
--- configs/socfpga_stratix10_defconfig | 1 + configs/turris_mox_defconfig | 1 + include/configs/mvebu_armada-37xx.h | 1 - include/configs/socfpga_stratix10_socdk.h | 1 - 4 files changed, 2 insertions(+), 2 deletions(-)configs/socfpga_stratix10_defconfig +1
-0@@ -38,6 +38,7 @@ CONFIG_DM_I2C=y CONFIG_SYS_I2C_DW=y CONFIG_DM_MMC=y CONFIG_MMC_DW=y +CONFIG_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_SPANSION=yconfigs/turris_mox_defconfig +1
-0@@ -42,6 +42,7 @@ CONFIG_DM_MMC=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_SDMA=y CONFIG_MMC_SDHCI_XENON=y +CONFIG_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_MACRONIX=y CONFIG_SPI_FLASH_SPANSION=yinclude/configs/mvebu_armada-37xx.h +0
-1@@ -64,7 +64,6 @@#define CONFIG_SF_DEFAULT_SPEED 1000000#define CONFIG_SF_DEFAULT_MODE SPI_MODE_0#define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE -#define CONFIG_MTD /* needed for mtdparts commands */ #define CONFIG_MTD_PARTITIONS /* required for UBI partition support */ /* Environment in SPI NOR flash */ include/configs/socfpga_stratix10_socdk.h +0
-0
include/configs/socfpga_stratix10_socdk.h line 79
Quoted 5 lines
include/configs/socfpga_stratix10_socdk.h +0
-1@@ -76,7 +76,6 @@#endif /* CONFIG_ENV_IS_IN_SPI_FLASH */ #ifndef CONFIG_SPL_BUILD -#define CONFIG_MTD #define CONFIG_MTD_PARTITIONS
Do you get rid of CONFIG_MTD_PARTITIONS at some point?
Quoted 2 lines
include/configs/socfpga_stratix10_socdk.h +0
-0#define MTDIDS_DEFAULT "nor0=ff705000.spi.0"#endif /* CONFIG_SPL_BUILD */
Miquel Raynal
maintainerPATCH v3 16/28 configs: move CONFIG_MTD in defconfigs when set in arch includes
Hi Boris,
Boris Brezillon <[email protected]> wrote on Wed, 5 Dec 2018 11:17:28 +0100:
Quoted 62 lines
Quoted 4 lines · On Wed, 5 Dec 2018 00:57:02 +0100 Miquel Raynal <[email protected]>…
Let's be consistent and always declare
CONFIG_MTDfrom the defconfig file when needed.Signed-off-by Miquel Raynal <[email protected]>Reviewed-by Boris Brezillon <[email protected]>One comment below.
Quoted 50 lines
--- configs/socfpga_stratix10_defconfig | 1 + configs/turris_mox_defconfig | 1 + include/configs/mvebu_armada-37xx.h | 1 - include/configs/socfpga_stratix10_socdk.h | 1 - 4 files changed, 2 insertions(+), 2 deletions(-)configs/socfpga_stratix10_defconfig +1
-0@@ -38,6 +38,7 @@ CONFIG_DM_I2C=y CONFIG_SYS_I2C_DW=y CONFIG_DM_MMC=y CONFIG_MMC_DW=y +CONFIG_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_SPANSION=yconfigs/turris_mox_defconfig +1
-0@@ -42,6 +42,7 @@ CONFIG_DM_MMC=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_SDMA=y CONFIG_MMC_SDHCI_XENON=y +CONFIG_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_MACRONIX=y CONFIG_SPI_FLASH_SPANSION=yinclude/configs/mvebu_armada-37xx.h +0
-1@@ -64,7 +64,6 @@#define CONFIG_SF_DEFAULT_SPEED 1000000#define CONFIG_SF_DEFAULT_MODE SPI_MODE_0#define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE -#define CONFIG_MTD /* needed for mtdparts commands */ #define CONFIG_MTD_PARTITIONS /* required for UBI partition support */ /* Environment in SPI NOR flash */ include/configs/socfpga_stratix10_socdk.h +0
-0@@ -76,7 +76,6 @@#endif /* CONFIG_ENV_IS_IN_SPI_FLASH */
Quoted 5 lines
include/configs/socfpga_stratix10_socdk.h line 79
Quoted 3 lines
include/configs/socfpga_stratix10_socdk.h +0
-1#ifndef CONFIG_SPL_BUILD -#define CONFIG_MTD #define CONFIG_MTD_PARTITIONS Do you get rid of
CONFIG_MTD_PARTITIONSat some point?
Not anymore, but I could probably add a patch for that.
Quoted 4 lines
include/configs/socfpga_stratix10_socdk.h line 81
Quoted 3 lines
include/configs/socfpga_stratix10_socdk.h +0
-0#define MTDIDS_DEFAULT "nor0=ff705000.spi.0"#endif /* CONFIG_SPL_BUILD */
Thanks,
Miquèl
Miquel Raynal
maintainerPATCH v3 16/28 configs: move CONFIG_MTD in defconfigs when set in arch includes
In reply to Boris BrezillonHi Boris,
Boris Brezillon <[email protected]> wrote on Wed, 5 Dec 2018 11:17:28 +0100:
Quoted 62 lines
Quoted 4 lines · On Wed, 5 Dec 2018 00:57:02 +0100 Miquel Raynal <[email protected]>…
Let's be consistent and always declare
CONFIG_MTDfrom the defconfig file when needed.Signed-off-by Miquel Raynal <[email protected]>Reviewed-by Boris Brezillon <[email protected]>One comment below.
Quoted 50 lines
--- configs/socfpga_stratix10_defconfig | 1 + configs/turris_mox_defconfig | 1 + include/configs/mvebu_armada-37xx.h | 1 - include/configs/socfpga_stratix10_socdk.h | 1 - 4 files changed, 2 insertions(+), 2 deletions(-)configs/socfpga_stratix10_defconfig +1
-0@@ -38,6 +38,7 @@ CONFIG_DM_I2C=y CONFIG_SYS_I2C_DW=y CONFIG_DM_MMC=y CONFIG_MMC_DW=y +CONFIG_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_SPANSION=yconfigs/turris_mox_defconfig +1
-0@@ -42,6 +42,7 @@ CONFIG_DM_MMC=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_SDMA=y CONFIG_MMC_SDHCI_XENON=y +CONFIG_MTD=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_MACRONIX=y CONFIG_SPI_FLASH_SPANSION=yinclude/configs/mvebu_armada-37xx.h +0
-1@@ -64,7 +64,6 @@#define CONFIG_SF_DEFAULT_SPEED 1000000#define CONFIG_SF_DEFAULT_MODE SPI_MODE_0#define CONFIG_ENV_SPI_MODE CONFIG_SF_DEFAULT_MODE -#define CONFIG_MTD /* needed for mtdparts commands */ #define CONFIG_MTD_PARTITIONS /* required for UBI partition support */ /* Environment in SPI NOR flash */ include/configs/socfpga_stratix10_socdk.h +0
-0@@ -76,7 +76,6 @@#endif /* CONFIG_ENV_IS_IN_SPI_FLASH */
Quoted 5 lines
include/configs/socfpga_stratix10_socdk.h line 79
Quoted 3 lines
include/configs/socfpga_stratix10_socdk.h +0
-1#ifndef CONFIG_SPL_BUILD -#define CONFIG_MTD #define CONFIG_MTD_PARTITIONS Do you get rid of
CONFIG_MTD_PARTITIONSat some point?
Not anymore. I know it would be preferable to push all MTD configurations in defconfigs but precisely in this case the definition is enclosed in a "#ifndef CONFIG_SPL_BUILD" condition, which makes the move to defconfig inconsistent. This is the reason why I decided to keep this definition in header files for now (another one in Armada 37xx header).
Quoted 4 lines
include/configs/socfpga_stratix10_socdk.h line 81
Quoted 3 lines
include/configs/socfpga_stratix10_socdk.h +0
-0#define MTDIDS_DEFAULT "nor0=ff705000.spi.0"#endif /* CONFIG_SPL_BUILD */
Thanks,
Miquèl
Miquel Raynal
maintainerPATCH v3 17/28 configs: remove raw NAND core from k2g defconfigs
In reply to Miquel RaynalDue to previous Makefile organization, the raw NAND subdirectory was not compiled in if CMD_NAND was not enabled. Because the Denali driver does not compile with these boards (undefined environment offset), remove the dependency within the defconfig over the controller driver (was ignored anyway in the past).
--- configs/k2g_evm_defconfig | 1 - configs/k2g_hs_evm_defconfig | 1 - 2 files changed, 2 deletions(-)
configs/k2g_evm_defconfig +0 -1
@@ -41,7 +41,6 @@ CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y -CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y
configs/k2g_hs_evm_defconfig +0 -1
@@ -34,7 +34,6 @@ CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y -CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y
Signature · 1 line
2.19.1
PATCH v3 17/28 configs: remove raw NAND core from k2g defconfigs
Quoted 5 lines · On Wed, 5 Dec 2018 00:57:03 +0100 Miquel Raynal <[email protected]>…
Due to previous
Makefileorganization, the raw NAND subdirectory was not compiled in ifCMD_NANDwas not enabled. Because the Denali driver does not compile with these boards (undefined environment offset), remove the dependency within the defconfig over the controller driver (was ignored anyway in the past).
Maybe this should be moved before the Makefile re-organization if this the build of those defconfigs.
Quoted 31 lines
Signed-off-by Miquel Raynal <[email protected]>--- configs/k2g_evm_defconfig | 1 - configs/k2g_hs_evm_defconfig | 1 - 2 files changed, 2 deletions(-)configs/k2g_evm_defconfig +0
-1@@ -41,7 +41,6 @@ CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y -CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=yconfigs/k2g_hs_evm_defconfig +0
-1@@ -34,7 +34,6 @@ CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_UBI=y CONFIG_MTD_RAW_NAND=y -CONFIG_NAND_DAVINCI=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y
Miquel Raynal
maintainerPATCH v3 17/28 configs: remove raw NAND core from k2g defconfigs
Hi Boris,
Boris Brezillon <[email protected]> wrote on Wed, 5 Dec 2018 11:19:49 +0100:
Quoted 11 lines
Quoted 5 lines · On Wed, 5 Dec 2018 00:57:03 +0100 Miquel Raynal <[email protected]>…
Due to previous
Makefileorganization, the raw NAND subdirectory was not compiled in ifCMD_NANDwas not enabled. Because the Denali driver does not compile with these boards (undefined environment offset), remove the dependency within the defconfig over the controller driver (was ignored anyway in the past).Maybe this should be moved before the
Makefilere-organization if this the build of those defconfigs.
I will move the first Makefile change at the end and probably squash it with the two others, so this will happen before any Makefile change.
Thanks,
Miquèl
Miquel Raynal
maintainerPATCH v3 18/28 configs: remove MTD support from bcm11130 and M54418TWR defconfigs
In reply to Miquel RaynalWhile the right Kconfig entries were selected, because of the missing CMD_NAND symbol the raw NAND core was never compiled. Remove it from the defconfigs otherwise the build will fail.
--- configs/M54418TWR_nand_mii_defconfig | 1 - configs/M54418TWR_nand_rmii_defconfig | 1 - configs/M54418TWR_nand_rmii_lowfreq_defconfig | 1 - configs/bcm11130_nand_defconfig | 2 -- 4 files changed, 5 deletions(-)
configs/M54418TWR_nand_mii_defconfig +0 -1
@@ -20,7 +20,6 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_MTD=y -CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y CONFIG_MII=y
configs/M54418TWR_nand_rmii_defconfig +0 -1
@@ -20,7 +20,6 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_MTD=y -CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y CONFIG_MII=y
configs/M54418TWR_nand_rmii_lowfreq_defconfig +0 -1
@@ -20,7 +20,6 @@ CONFIG_CMD_MII=y CONFIG_CMD_PING=y CONFIG_CMD_CACHE=y CONFIG_MTD=y -CONFIG_MTD_RAW_NAND=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_ATMEL=y CONFIG_MII=y
configs/bcm11130_nand_defconfig +0 -2
@@ -24,8 +24,6 @@ CONFIG_ENV_IS_IN_MMC=y CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_SDMA=y CONFIG_MMC_SDHCI_KONA=y -CONFIG_MTD=y -CONFIG_MTD_RAW_NAND=y CONFIG_SYS_NS16550=y CONFIG_USB=y CONFIG_USB_GADGET=y
Signature · 1 line
2.19.1
PATCH v3 18/28 configs: remove MTD support from bcm11130 and M54418TWR defconfigs
Quoted 3 lines · On Wed, 5 Dec 2018 00:57:04 +0100 Miquel Raynal <[email protected]>…
While the right
Kconfigentries were selected, because of the missingCMD_NANDsymbol the raw NAND core was never compiled. Remove it from the defconfigs otherwise the build will fail.
See my comment on patch 17.
Miquel Raynal
maintainerPATCH v3 19/28 mtd: nand: add includes in NAND core to avoid warnings
In reply to Miquel RaynalBecause of the include's game, when some files are compiled for a SPI NAND device, no warning appears. But when it is for a raw NAND device, GCC complains. Fix these warning by including <common.h>.
--- drivers/mtd/nand/bbt.c | 1 + drivers/mtd/nand/core.c | 1 + 2 files changed, 2 insertions(+)
drivers/mtd/nand/bbt.c +1 -0
@@ -9,6 +9,7 @@#define pr_fmt (fmt) "nand-bbt: " fmt +#include <common.h> #include <linux/mtd/nand.h> #ifndef __UBOOT__#include <linux/slab.h>
drivers/mtd/nand/core.c +1 -0
@@ -9,6 +9,7 @@#define pr_fmt (fmt) "nand: " fmt +#include <common.h> #ifndef __UBOOT__#include <linux/module.h> #endif
Signature · 1 line
2.19.1
PATCH v3 19/28 mtd: nand: add includes in NAND core to avoid warnings
Quoted 5 lines · On Wed, 5 Dec 2018 00:57:05 +0100 Miquel Raynal <[email protected]>…
Because of the include's game, when some files are compiled for a SPI NAND device, no warning appears. But when it is for a raw NAND device, GCC complains. Fix these warning by including <
common.h>.Signed-off-by Miquel Raynal <[email protected]>
Quoted 29 lines
--- drivers/mtd/nand/bbt.c | 1 + drivers/mtd/nand/core.c | 1 + 2 files changed, 2 insertions(+)drivers/mtd/nand/bbt.c +1
-0@@ -9,6 +9,7 @@#define pr_fmt (fmt) "nand-bbt: " fmt +#include <common.h> #include <linux/mtd/nand.h> #ifndef __UBOOT__#include <linux/slab.h> drivers/mtd/nand/core.c +1
-0@@ -9,6 +9,7 @@#define pr_fmt (fmt) "nand: " fmt +#include <common.h> #ifndef __UBOOT__#include <linux/module.h> #endif
Miquel Raynal
maintainerPATCH v3 20/28 dfu: add dependency on the NAND core
In reply to Miquel RaynalCONFIG_DFU_NAND needs the NAND core being compiled.
Also fix the colibri_vf defconfig to reflect this dependency.
--- configs/colibri_vf_defconfig | 1 + drivers/dfu/Kconfig | 1 + 2 files changed, 2 insertions(+)
configs/colibri_vf_defconfig +1 -0
@@ -50,6 +50,7 @@ CONFIG_FSL_ESDHC=y CONFIG_NAND_VF610_NFC=y CONFIG_SYS_NAND_VF610_NFC_60_ECC_BYTES=y CONFIG_MTD=y +CONFIG_MTD_RAW_NAND=y CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_PHYLIB=y
drivers/dfu/Kconfig +1 -0
@@ -31,6 +31,7 @@ config DFU_MMC config DFU_NAND bool "NAND back end for DFU" depends on CMD_MTDPARTS + depends on MTD_RAW_NAND help This option enables using DFU to read and write to NAND based storage.
Signature · 1 line
2.19.1
PATCH v3 20/28 dfu: add dependency on the NAND core
Quoted 5 lines · On Wed, 5 Dec 2018 00:57:06 +0100 Miquel Raynal <[email protected]>…
CONFIG_DFU_NANDneeds the NAND core being compiled.Also fix the
colibri_vfdefconfig to reflect this dependency.Signed-off-by Miquel Raynal <[email protected]>
BTW, it would be great to have an MTD backend instead of having one per type of flash ;-).
Quoted 29 lines
--- configs/colibri_vf_defconfig | 1 + drivers/dfu/Kconfig | 1 + 2 files changed, 2 insertions(+)configs/colibri_vf_defconfig +1
-0@@ -50,6 +50,7 @@ CONFIG_FSL_ESDHC=y CONFIG_NAND_VF610_NFC=y CONFIG_SYS_NAND_VF610_NFC_60_ECC_BYTES=y CONFIG_MTD=y +CONFIG_MTD_RAW_NAND=y CONFIG_MTD_UBI=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_PHYLIB=ydrivers/dfu/Kconfig +1
-0@@ -31,6 +31,7 @@ config DFU_MMC config DFU_NAND bool "NAND back end for DFU" depends on CMD_MTDPARTS + depends on MTD_RAW_NAND help This option enables using DFU to read and write to NAND based storage.
Miquel Raynal
maintainerPATCH v3 21/28 mtd: nor: NOR flashes depend on MTD
In reply to Miquel RaynalA NOR flash needs the MTD core, ensure this dependency is met by adding a "depends on" in Kconfig. This is fine since defconfigs have been fixed.
--- drivers/mtd/Kconfig | 1 + 1 file changed, 1 insertion(+)
drivers/mtd/Kconfig +1 -0
@@ -19,6 +19,7 @@ config DM_MTD config MTD_NOR_FLASH bool "Enable parallel NOR flash support" + depends on MTD help Enable support for parallel NOR flash.
Signature · 1 line
2.19.1
PATCH v3 21/28 mtd: nor: NOR flashes depend on MTD
Quoted 14 lines · On Wed, 5 Dec 2018 00:57:07 +0100 Miquel Raynal <[email protected]>…
A NOR flash needs the MTD core, ensure this dependency is met by adding a "depends on" in
Kconfig. This is fine since defconfigs have been fixed.Signed-off-by Miquel Raynal <[email protected]>--- drivers/mtd/Kconfig | 1 + 1 file changed, 1 insertion(+)drivers/mtd/Kconfig +0
-0
drivers/mtd/Kconfig config DM_MTD · line 25
Quoted 7 lines
drivers/mtd/Kconfig +1
-0@@ -19,6 +19,7 @@ config DM_MTD config MTD_NOR_FLASH bool "Enable parallel NOR flash support" + depends on MTD help Enable support for parallel NOR flash.
Don't know if this applies here, but if you have almost all options in Kconfig that depend on MTD, you can add an
if MTD
endif
section.
Miquel Raynal
maintainerPATCH v3 21/28 mtd: nor: NOR flashes depend on MTD
Hi Boris,
Boris Brezillon <[email protected]> wrote on Wed, 5 Dec 2018 11:31:44 +0100:
Quoted 28 lines
Quoted 14 lines · On Wed, 5 Dec 2018 00:57:07 +0100 Miquel Raynal <[email protected]>…
A NOR flash needs the MTD core, ensure this dependency is met by adding a "depends on" in
Kconfig. This is fine since defconfigs have been fixed.Signed-off-by Miquel Raynal <[email protected]>--- drivers/mtd/Kconfig | 1 + 1 file changed, 1 insertion(+)drivers/mtd/Kconfig +0
-0drivers/mtd/Kconfig config DM_MTD · line 25
Quoted 7 lines
drivers/mtd/Kconfig +1
-0@@ -19,6 +19,7 @@ config DM_MTD config MTD_NOR_FLASH bool "Enable parallel NOR flash support" + depends on MTD help Enable support for parallel NOR flash.Don't know if this applies here, but if you have almost all options in
Kconfigthat depend on MTD, you can add an
Quoted 4 lines
if MTD
endifsection.
Unfortunately, not yet. There are still a lot of MTD drivers that do not rely (at least in Kconfig) on CONFIG_MTD. This is inconsistent and should be fixed. I don't think I will do it in this series though.
Thanks,
Miquèl
PATCH v3 21/28 mtd: nor: NOR flashes depend on MTD
In reply to Miquel RaynalDear Miquel Raynal,
Quoted 3 lines · In message <[email protected]> you wrote:
A NOR flash needs the MTD core, ensure this dependency is met by adding a "depends on" in
Kconfig. This is fine since defconfigs have been fixed.
If such a dependeny exists, it must be fixed. This is not acceptable.
Best regards,
Wolfgang Denk
Signature · 4 lines
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de A fail-safe circuit will destroy others. -- Klipstein
Miquel Raynal
maintainerPATCH v3 22/28 mtd: nand: remove dependency on commands in Kconfig
In reply to Miquel RaynalNow that the defconfigs have been fixed, remove the dependencies on commands in Kconfig. The necessary symbols are enabled so this will not break anything.
--- drivers/mtd/nand/Makefile | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)
drivers/mtd/nand/Makefile +1 -3
@@ -2,7 +2,5 @@ nandcore-objs := core.o bbt.o obj-$(CONFIG_MTD_NAND_CORE) += nandcore.o -ifneq (,$(findstring y,$(CONFIG_CMD_NAND)$(CONFIG_CMD_MTD))) -obj-y += raw/ -endif +obj-$(CONFIG_MTD_RAW_NAND) += raw/ obj-$(CONFIG_MTD_SPI_NAND) += spi/
Signature · 1 line
2.19.1
PATCH v3 22/28 mtd: nand: remove dependency on commands in Kconfig
Quoted 2 lines · On Wed, 5 Dec 2018 00:57:08 +0100 Miquel Raynal <[email protected]>…
Now that the defconfigs have been fixed, remove the dependencies on commands in
Kconfig.
That's not what I'm seeing in this diff ;-).
Quoted 21 lines
The necessary symbols are enabled so this will
not break anything.Signed-off-by Miquel Raynal <[email protected]>--- drivers/mtd/nand/Makefile | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)drivers/mtd/nand/Makefile +1
-3@@ -2,7 +2,5 @@ nandcore-objs := core.o bbt.o obj-$(CONFIG_MTD_NAND_CORE) += nandcore.o -ifneq (,$(findstring y,$(CONFIG_CMD_NAND)$(CONFIG_CMD_MTD))) -obj-y += raw/ -endif +obj-$(CONFIG_MTD_RAW_NAND) += raw/ obj-$(CONFIG_MTD_SPI_NAND) += spi/
Miquel Raynal
maintainerPATCH v3 23/28 mtd: ubi: remove dependency on command in Kconfig
In reply to Miquel RaynalNow that the defconfigs have been fixed, remove the dependencies on commands in Kconfig. The necessary symbols are enabled so this will not break anything.
--- drivers/mtd/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/mtd/Makefile +1 -1
@@ -24,5 +24,5 @@ ifeq ($(CONFIG_SPL_BUILD)$(CONFIG_TPL_BUILD),) obj-y += nand/ obj-y += onenand/ obj-y += spi/ -obj-$(CONFIG_CMD_UBI) += ubi/ +obj-$(CONFIG_MTD_UBI) += ubi/ endif
Signature · 1 line
2.19.1
PATCH v3 23/28 mtd: ubi: remove dependency on command in Kconfig
Quoted 2 lines · On Wed, 5 Dec 2018 00:57:09 +0100 Miquel Raynal <[email protected]>…
Now that the defconfigs have been fixed, remove the dependencies on commands in
Kconfig.
No changes in Kconfig in this patch.
Quoted 19 lines
The necessary symbols are enabled so this will
not break anything.Signed-off-by Miquel Raynal <[email protected]>--- drivers/mtd/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)drivers/mtd/Makefile +1
-1@@ -24,5 +24,5 @@ ifeq ($(CONFIG_SPL_BUILD)$(CONFIG_TPL_BUILD),) obj-y += nand/ obj-y += onenand/ obj-y += spi/ -obj-$(CONFIG_CMD_UBI) += ubi/ +obj-$(CONFIG_MTD_UBI) += ubi/ endif
Miquel Raynal
maintainerPATCH v3 24/28 cmd: mtdparts: show Kconfig options only if the command is selected
In reply to Miquel RaynalGuard mtdparts options with an if/endif statement in Kconfig. Also move the Kconfig entry of the option right after the entry of the command.
--- cmd/Kconfig | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-)
cmd/Kconfig +11 -10
@@ -1741,6 +1741,17 @@ config CMD_MTDPARTS declare the partitions in the mtdparts environment variable but better use the MTD stack and the 'mtd' command instead. +if CMD_MTDPARTS +config CMD_MTDPARTS_SPREAD + bool "Padd partition size to take account of bad blocks" + help + This enables the 'spread' sub-command of the mtdparts command. + This command will modify the existing mtdparts variable by increasing + the size of the partitions such that 1) each partition's net size is + at least as large as the size specified in the mtdparts variable and + 2) each partition starts on a good block. +endif + config MTDIDS_DEFAULT string "Default MTD IDs" depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH
@@ -1755,16 +1766,6 @@ config MTDPARTS_DEFAULT Defines a default MTD partitioning scheme in the Linux MTD command line partitions format -config CMD_MTDPARTS_SPREAD - bool "Padd partition size to take account of bad blocks" - depends on CMD_MTDPARTS - help - This enables the 'spread' sub-command of the mtdparts command. - This command will modify the existing mtdparts variable by increasing - the size of the partitions such that 1) each partition's net size is - at least as large as the size specified in the mtdparts variable and - 2) each partition starts on a good block. - config CMD_REISER bool "reiser - Access to reiserfs filesystems" help
Signature · 1 line
2.19.1
PATCH v3 24/28 cmd: mtdparts: show Kconfig options only if the command is selected
Quoted 14 lines · On Wed, 5 Dec 2018 00:57:10 +0100 Miquel Raynal <[email protected]>…
Guard mtdparts options with an if/endif statement in
Kconfig. Also move theKconfigentry of the option right after the entry of the command.Signed-off-by Miquel Raynal <[email protected]>--- cmd/Kconfig | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-)cmd/Kconfig +0
-0
cmd/Kconfig config CMD_MTDPARTS · line 1746
Quoted 6 lines
cmd/Kconfig +3
-0@@ -1741,6 +1741,17 @@ config CMD_MTDPARTS declare the partitions in the mtdparts environment variable but better use the MTD stack and the 'mtd' command instead. +if CMD_MTDPARTS +config CMD_MTDPARTS_SPREAD + bool "Padd partition size to take account of bad blocks"
We usually use "depends on" in such cases
depends on CMD_MTDPARTS
Quoted 28 lines
cmd/Kconfig +8
-10+ help + This enables the 'spread' sub-command of the mtdparts command. + This command will modify the existing mtdparts variable by increasing + the size of the partitions such that 1) each partition's net size is + at least as large as the size specified in the mtdparts variable and + 2) each partition starts on a good block. +endif + config MTDIDS_DEFAULT string "Default MTD IDs" depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH@@ -1755,16 +1766,6 @@ config MTDPARTS_DEFAULT Defines a default MTD partitioning scheme in the Linux MTD command line partitions format -config CMD_MTDPARTS_SPREAD - bool "Padd partition size to take account of bad blocks" - depends on CMD_MTDPARTS - help - This enables the 'spread' sub-command of the mtdparts command. - This command will modify the existing mtdparts variable by increasing - the size of the partitions such that 1) each partition's net size is - at least as large as the size specified in the mtdparts variable and - 2) each partition starts on a good block. - config CMD_REISER bool "reiser - Access to reiserfs filesystems" help
Miquel Raynal
maintainerPATCH v3 25/28 cmd: nand/sf: isolate legacy code
In reply to Miquel RaynalThe 'sf' command is not supposed to rely on the MTD stack, but both 'sf' and 'nand' commands use helpers located in mtd_uboot.c. Despite their location, these functions do not depend at all on the MTD stack.
This file (drivers/mtd/mtd_uboot.c) is only compiled if CONFIG_MTD is selected, which is incoherent with the current situation. Solve this by mobing these three functions (which are only used by the above two commands) out of mtd_uboot.c and put them in a C file only compiled with cmd/sf.c and cmd/nand.c.
--- cmd/Makefile | 4 +- cmd/legacy-mtd-utils.c | 99 +++++++++++++++++++++++++++++++++++++++++ cmd/legacy-mtd-utils.h | 14 ++++++ cmd/nand.c | 2 + cmd/sf.c | 2 + drivers/mtd/mtd_uboot.c | 94 -------------------------------------- include/linux/mtd/mtd.h | 6 --- 7 files changed, 119 insertions(+), 102 deletions(-) create mode 100644 cmd/legacy-mtd-utils.c create mode 100644 cmd/legacy-mtd-utils.h
cmd/Makefile +2 -2
@@ -94,7 +94,7 @@ obj-$(CONFIG_CMD_MMC_SPI) += mmc_spi.o obj-$(CONFIG_MP) += mp.o obj-$(CONFIG_CMD_MTD) += mtd.o obj-$(CONFIG_CMD_MTDPARTS) += mtdparts.o -obj-$(CONFIG_CMD_NAND) += nand.o +obj-$(CONFIG_CMD_NAND) += nand.o legacy-mtd-utils.o obj-$(CONFIG_CMD_NET) += net.o obj-$(CONFIG_CMD_ONENAND) += onenand.o obj-$(CONFIG_CMD_OSD) += osd.o
@@ -115,7 +115,7 @@ obj-$(CONFIG_CMD_ROCKUSB) += rockusb.o obj-$(CONFIG_SANDBOX) += host.o obj-$(CONFIG_CMD_SATA) += sata.o obj-$(CONFIG_CMD_NVME) += nvme.o -obj-$(CONFIG_CMD_SF) += sf.o +obj-$(CONFIG_CMD_SF) += sf.o legacy-mtd-utils.o obj-$(CONFIG_CMD_SCSI) += scsi.o disk.o obj-$(CONFIG_CMD_SHA1SUM) += sha1sum.o obj-$(CONFIG_CMD_SETEXPR) += setexpr.o
cmd/legacy-mtd-utils.c new file +99 -0
99 lines not on this page · raw message
cmd/legacy-mtd-utils.h new file +14 -0
@@ -0,0 +1,14 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ + +#ifndef __LEGACY_MTD_UTILS_H +#define __LEGACY_MTD_UTILS_H + +int get_part (const char *partname,int *idx,loff_t *off,loff_t *size, +loff_t *maxsize,int devtype); +int mtd_arg_off (const char *arg,int *idx,loff_t *off,loff_t *size, +loff_t *maxsize,int devtype,uint64_t chipsize); +int mtd_arg_off_size (int argc,char *const argv[],int *idx,loff_t *off, +loff_t *size,loff_t *maxsize,int devtype, +uint64_t chipsize); + +#endif /* LEGACY_MTD_UTILS_H */
cmd/nand.c +2 -0
@@ -29,6 +29,8 @@#include <jffs2/jffs2.h> #include <nand.h> +#include "legacy-mtd-utils.h" +#if defined(CONFIG_CMD_MTDPARTS )/* partition handling routines */
cmd/sf.c +2 -0
@@ -18,6 +18,8 @@#include <asm/io.h> #include <dm/device-internal.h> +#include "legacy-mtd-utils.h" +static struct spi_flash *flash;/*
drivers/mtd/mtd_uboot.c +0 -94
103 lines not on this page · raw message
include/linux/mtd/mtd.h +0 -6
@@ -571,12 +571,6 @@ struct mtd_info *__mtd_next_device(int i); (mtd) !=NULL ; \ (mtd) = __mtd_next_device(mtd->index + 1)) -int mtd_arg_off (const char *arg,int *idx,loff_t *off,loff_t *size, -loff_t *maxsize,int devtype,uint64_t chipsize); -int mtd_arg_off_size (int argc,char *const argv[],int *idx,loff_t *off, -loff_t *size,loff_t *maxsize,int devtype, -uint64_t chipsize); -/* drivers/mtd/mtdcore.c */ void mtd_get_len_incl_bad(struct mtd_info *mtd, uint64_t offset, const uint64_t length, uint64_t *len_incl_bad,
Signature · 1 line
2.19.1
PATCH v3 25/28 cmd: nand/sf: isolate legacy code
Quoted 7 lines · On Wed, 5 Dec 2018 00:57:11 +0100 Miquel Raynal <[email protected]>…
The 'sf' command is not supposed to rely on the MTD stack, but both 'sf' and 'nand' commands use helpers located in
mtd_uboot.c. Despite their location, these functions do not depend at all on the MTD stack.This file (
drivers/mtd/mtd_uboot.c) is only compiled ifCONFIG_MTDis selected, which is incoherent with the current situation. Solve this
^inconsistent
Quoted 1 line
by mobing these three functions (which are only used by the above two
^ moving
Quoted 30 lines
commands) out of
mtd_uboot.cand put them in a C file only compiled withcmd/sf.candcmd/nand.c.Signed-off-by Miquel Raynal <[email protected]>--- cmd/Makefile | 4 +- cmd/legacy-mtd-utils.c | 99 +++++++++++++++++++++++++++++++++++++++++ cmd/legacy-mtd-utils.h | 14 ++++++ cmd/nand.c | 2 + cmd/sf.c | 2 + drivers/mtd/mtd_uboot.c | 94 -------------------------------------- include/linux/mtd/mtd.h | 6 --- 7 files changed, 119 insertions(+), 102 deletions(-) create mode 100644 cmd/legacy-mtd-utils.c create mode 100644 cmd/legacy-mtd-utils.hcmd/Makefile +1
-1@@ -94,7 +94,7 @@ obj-$(CONFIG_CMD_MMC_SPI) += mmc_spi.o obj-$(CONFIG_MP) += mp.o obj-$(CONFIG_CMD_MTD) += mtd.o obj-$(CONFIG_CMD_MTDPARTS) += mtdparts.o -obj-$(CONFIG_CMD_NAND) += nand.o +obj-$(CONFIG_CMD_NAND) += nand.o legacy-mtd-utils.o obj-$(CONFIG_CMD_NET) += net.o obj-$(CONFIG_CMD_ONENAND) += onenand.o obj-$(CONFIG_CMD_OSD) += osd.o
cmd/Makefile obj-$(CONFIG_CMD_ROCKUSB) += rockusb.o · line 118
Quoted 5 lines
cmd/Makefile +1
-1@@ -115,7 +115,7 @@ obj-$(CONFIG_CMD_ROCKUSB) += rockusb.o obj-$(CONFIG_SANDBOX) += host.o obj-$(CONFIG_CMD_SATA) += sata.o obj-$(CONFIG_CMD_NVME) += nvme.o -obj-$(CONFIG_CMD_SF) += sf.o +obj-$(CONFIG_CMD_SF) += sf.o legacy-mtd-utils.o
That won't work if you enable both CMD_SF and CMD_NAND. The linker will complain that some symbols are duplicated.
Either you add a new hidden Kconfig option that is selected by CMD_NAND and CMD_SF, or you use the ifeq trick:
ifeq (,$(findstring y,$(CONFIG_CMD_NAND)$(CONFIG_CMD_SF))) obj-y += legacy-mtd-utils.o
endif
PATCH v3 25/28 cmd: nand/sf: isolate legacy code
Hello,
Quoted 1 line · Boris Brezillon
ifeq (,$(findstring y,$(CONFIG_CMD_NAND)$(CONFIG_CMD_SF)))
This could be "simplified" as:
ifneq ($(CONFIG_CMD_NAND)$(CONFIG_CMD_SF),)
if either of the options is 'y', the string is non-empty, so the condition will be true.
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
Miquel Raynal
maintainerPATCH v3 25/28 cmd: nand/sf: isolate legacy code
Hello,
Thomas Petazzoni <[email protected]> wrote on Wed, 5 Dec 2018 11:53:52 +0100:
Quoted 4 lines
Hello,
On Wed, 5 Dec 2018 11:37:54 +0100, Boris Brezillon wrote:
Quoted 8 lines
Quoted 1 line
ifeq (,$(findstring y,$(CONFIG_CMD_NAND)$(CONFIG_CMD_SF)))
This could be "simplified" as:
ifneq ($(CONFIG_CMD_NAND)$(CONFIG_CMD_SF),)
if either of the options is 'y', the string is non-empty, so the condition will be true.
Thank you both of you, I will use this trick to avoid build failures with the situation raised by Boris.
Thanks,
Miquèl
Miquel Raynal
maintainerPATCH v3 26/28 cmd: make MTD commands depend on MTD
In reply to Miquel RaynalDefconfigs have been fixed, now we can add proper dependencies in Kconfig. SPI FLASH is still not dependent on MTD (deeper rework needed).
--- cmd/Kconfig | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)
cmd/Kconfig +7 -3
@@ -679,6 +679,7 @@ config CMD_FDC config CMD_FLASH bool "flinfo, erase, protect" default y + depends on MTD help NOR flash support. flinfo - print FLASH memory information
@@ -868,6 +869,7 @@ config CMD_MMC_SWRITE config CMD_MTD bool "mtd" + depends on MTD select MTD_PARTITIONS help MTD commands support.
@@ -875,6 +877,7 @@ config CMD_MTD config CMD_NAND bool "nand" default y if NAND_SUNXI + depends on MTD_RAW_NAND help NAND support.
@@ -915,6 +918,7 @@ config CMD_MMC_SPI config CMD_ONENAND bool "onenand - access to onenand device" + depends on MTD help OneNAND is a brand of NAND ('Not AND' gate) flash which provides various useful features. This command allows reading, writing,
@@ -1733,7 +1737,7 @@ config CMD_JFFS2 config CMD_MTDPARTS bool "MTD partition support" - select MTD if (CMD_NAND || NAND) + depends on MTD help MTD partitioning tool support. It is strongly encouraged to avoid using this command
@@ -1754,14 +1758,14 @@ endif config MTDIDS_DEFAULT string "Default MTD IDs" - depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH + depends on MTD || SPI_FLASH help Defines a default MTD IDs list for use with MTD partitions in the Linux MTD command line partitions format. config MTDPARTS_DEFAULT string "Default MTD partition scheme" - depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH + depends on MTD || SPI_FLASH help Defines a default MTD partitioning scheme in the Linux MTD command line partitions format
Signature · 1 line
2.19.1
PATCH v3 26/28 cmd: make MTD commands depend on MTD
Quoted 54 lines · On Wed, 5 Dec 2018 00:57:12 +0100 Miquel Raynal <[email protected]>…
Defconfigs have been fixed, now we can add proper dependencies in
Kconfig. SPI FLASH is still not dependent on MTD (deeper rework needed).Signed-off-by Miquel Raynal <[email protected]>--- cmd/Kconfig | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)cmd/Kconfig +5
-1@@ -679,6 +679,7 @@ config CMD_FDC config CMD_FLASH bool "flinfo, erase, protect" default y + depends on MTD help NOR flash support. flinfo - print FLASH memory information@@ -868,6 +869,7 @@ config CMD_MMC_SWRITE config CMD_MTD bool "mtd" + depends on MTD select MTD_PARTITIONS help MTD commands support.@@ -875,6 +877,7 @@ config CMD_MTD config CMD_NAND bool "nand" default y if NAND_SUNXI + depends on MTD_RAW_NAND help NAND support.@@ -915,6 +918,7 @@ config CMD_MMC_SPI config CMD_ONENAND bool "onenand - access to onenand device" + depends on MTD help OneNAND is a brand of NAND ('Not AND' gate) flash which provides various useful features. This command allows reading, writing,@@ -1733,7 +1737,7 @@ config CMD_JFFS2 config CMD_MTDPARTS bool "MTD partition support" - select MTD if (CMD_NAND || NAND) + depends on MTD help MTD partitioning tool support. It is strongly encouraged to avoid using this command
cmd/Kconfig endif · line 1761
Quoted 5 lines
cmd/Kconfig +1
-1@@ -1754,14 +1758,14 @@ endif config MTDIDS_DEFAULT string "Default MTD IDs" - depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH + depends on MTD || SPI_FLASH
Can't we have MTD enabled without MTD_PARTITIONS? I guess we don't need to expose these options if MTD_PARTITIONS is disabled.
Quoted 11 lines
cmd/Kconfig +1
-1help Defines a default MTD IDs list for use with MTD partitions in the Linux MTD command line partitions format. config MTDPARTS_DEFAULT string "Default MTD partition scheme" - depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH + depends on MTD || SPI_FLASH help Defines a default MTD partitioning scheme in the Linux MTD command line partitions format
Miquel Raynal
maintainerPATCH v3 26/28 cmd: make MTD commands depend on MTD
Hi Boris,
Boris Brezillon <[email protected]> wrote on Wed, 5 Dec 2018 11:42:08 +0100:
Quoted 58 lines
Quoted 55 lines · On Wed, 5 Dec 2018 00:57:12 +0100 Miquel Raynal <[email protected]>…
Defconfigs have been fixed, now we can add proper dependencies in
Kconfig. SPI FLASH is still not dependent on MTD (deeper rework needed).Signed-off-by Miquel Raynal <[email protected]>--- cmd/Kconfig | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)cmd/Kconfig +5
-1@@ -679,6 +679,7 @@ config CMD_FDC config CMD_FLASH bool "flinfo, erase, protect" default y + depends on MTD help NOR flash support. flinfo - print FLASH memory information@@ -868,6 +869,7 @@ config CMD_MMC_SWRITE config CMD_MTD bool "mtd" + depends on MTD select MTD_PARTITIONS help MTD commands support.@@ -875,6 +877,7 @@ config CMD_MTD config CMD_NAND bool "nand" default y if NAND_SUNXI + depends on MTD_RAW_NAND help NAND support.@@ -915,6 +918,7 @@ config CMD_MMC_SPI config CMD_ONENAND bool "onenand - access to onenand device" + depends on MTD help OneNAND is a brand of NAND ('Not AND' gate) flash which provides various useful features. This command allows reading, writing,@@ -1733,7 +1737,7 @@ config CMD_JFFS2 config CMD_MTDPARTS bool "MTD partition support" - select MTD if (CMD_NAND || NAND) + depends on MTD help MTD partitioning tool support. It is strongly encouraged to avoid using this command@@ -1754,14 +1758,14 @@ endif
Quoted 7 lines
cmd/Kconfig endif · line 1761
Quoted 4 lines
cmd/Kconfig +1
-1config MTDIDS_DEFAULT string "Default MTD IDs" - depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH + depends on MTD || SPI_FLASHCan't we have MTD enabled without
MTD_PARTITIONS? I guess we don't need to expose these options ifMTD_PARTITIONSis disabled.
That's the theory. (Travis) Experience shows that adding a dependency on MTD_PARTITIONS when removing the dependency on the above commands is too restrictive and some header files using MTDIDS/MTDPARTS_DEFAULT will produce build issues. This is insane but I did not want to debug this issue and, anyway, it is harmless to have these strings defined.
Quoted 5 lines
Quoted 5 lines
cmd/Kconfig +0
-0help Defines a default MTD IDs list for use with MTD partitions in the Linux MTD command line partitions format.
Quoted 8 lines
cmd/Kconfig endif · line 1771
Quoted 7 lines
cmd/Kconfig +1
-1config MTDPARTS_DEFAULT string "Default MTD partition scheme" - depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH + depends on MTD || SPI_FLASH help Defines a default MTD partitioning scheme in the Linux MTD command line partitions format
Thanks,
Miquèl
PATCH v3 26/28 cmd: make MTD commands depend on MTD
Quoted 71 lines · On Wed, 5 Dec 2018 11:48:32 +0100 Miquel Raynal <[email protected]>…
Hi Boris,
Boris Brezillon <[email protected]> wrote on Wed, 5 Dec 2018 11:42:08 +0100:
Quoted 58 lines
Quoted 55 lines · On Wed, 5 Dec 2018 00:57:12 +0100 Miquel Raynal <[email protected]>…
Defconfigs have been fixed, now we can add proper dependencies in
Kconfig. SPI FLASH is still not dependent on MTD (deeper rework needed).Signed-off-by Miquel Raynal <[email protected]>--- cmd/Kconfig | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)cmd/Kconfig +5
-1@@ -679,6 +679,7 @@ config CMD_FDC config CMD_FLASH bool "flinfo, erase, protect" default y + depends on MTD help NOR flash support. flinfo - print FLASH memory information@@ -868,6 +869,7 @@ config CMD_MMC_SWRITE config CMD_MTD bool "mtd" + depends on MTD select MTD_PARTITIONS help MTD commands support.@@ -875,6 +877,7 @@ config CMD_MTD config CMD_NAND bool "nand" default y if NAND_SUNXI + depends on MTD_RAW_NAND help NAND support.@@ -915,6 +918,7 @@ config CMD_MMC_SPI config CMD_ONENAND bool "onenand - access to onenand device" + depends on MTD help OneNAND is a brand of NAND ('Not AND' gate) flash which provides various useful features. This command allows reading, writing,@@ -1733,7 +1737,7 @@ config CMD_JFFS2 config CMD_MTDPARTS bool "MTD partition support" - select MTD if (CMD_NAND || NAND) + depends on MTD help MTD partitioning tool support. It is strongly encouraged to avoid using this command@@ -1754,14 +1758,14 @@ endifQuoted 7 lines
cmd/Kconfig endif · line 1761
Quoted 4 lines
cmd/Kconfig +1
-1config MTDIDS_DEFAULT string "Default MTD IDs" - depends on MTD_PARTITIONS || CMD_MTDPARTS || CMD_NAND || CMD_FLASH + depends on MTD || SPI_FLASHCan't we have MTD enabled without
MTD_PARTITIONS? I guess we don't need to expose these options ifMTD_PARTITIONSis disabled.
Quoted 6 lines
That's the theory. (Travis) Experience shows that adding a dependency on
MTD_PARTITIONSwhen removing the dependency on the above commands is too restrictive and some header files using MTDIDS/MTDPARTS_DEFAULT will produce build issues. This is insane but I did not want to debug this issue and, anyway, it is harmless to have these strings defined.
Fair enough.
Miquel Raynal
maintainerPATCH v3 27/28 mtd: simplify Makefile
In reply to Miquel RaynalNow that we do not rely on the command enabled to compile core files, let's simplify the MTD root Makefile.
--- drivers/mtd/Makefile | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)
drivers/mtd/Makefile +1 -3
@@ -3,9 +3,7 @@ # (C) Copyright 2000-2007 # Wolfgang Denk, DENX Software Engineering, wd at denx.de. -ifneq (,$(findstring y,$(CONFIG_MTD)$(CONFIG_CMD_NAND)$(CONFIG_CMD_ONENAND)$(CONFIG_CMD_SF)$(CONFIG_CMD_MTD))) -obj-y += mtdcore.o mtd_uboot.o -endif +obj-$(CONFIG_MTD) += mtdcore.o mtd_uboot.o obj-$(CONFIG_DM_MTD) += mtd-uclass.o obj-$(CONFIG_MTD_PARTITIONS) += mtdpart.o obj-$(CONFIG_MTD_CONCAT) += mtdconcat.o
Signature · 1 line
2.19.1
Miquel Raynal
maintainerPATCH v3 28/28 mtd: properly handle SPL kbuild lines
In reply to Miquel RaynalInstead of compiling just a few files from the root Makefile, rework the MTD Makefile tree to take into account SPL's needs.
--- drivers/Makefile | 6 +----- drivers/mtd/Makefile | 44 ++++++++++++++++++++++++++------------- drivers/mtd/nand/Makefile | 4 ++++ 3 files changed, 35 insertions(+), 19 deletions(-)
drivers/Makefile +1 -5
@@ -6,12 +6,11 @@ obj-$(CONFIG_$(SPL_TPL_)DRIVERS_MISC_SUPPORT) += misc/ sysreset/ firmware/ obj-$(CONFIG_$(SPL_TPL_)I2C_SUPPORT) += i2c/ obj-$(CONFIG_$(SPL_TPL_)LED) += led/ obj-$(CONFIG_$(SPL_TPL_)MMC_SUPPORT) += mmc/ -obj-$(CONFIG_$(SPL_TPL_)NAND_SUPPORT) += mtd/nand/ +obj-y += mtd/ obj-$(CONFIG_$(SPL_TPL_)PHY) += phy/ obj-$(CONFIG_$(SPL_TPL_)PINCTRL) += pinctrl/ obj-$(CONFIG_$(SPL_TPL_)RAM) += ram/ obj-$(CONFIG_$(SPL_TPL_)SERIAL_SUPPORT) += serial/ -obj-$(CONFIG_$(SPL_TPL_)SPI_FLASH_SUPPORT) += mtd/spi/ obj-$(CONFIG_$(SPL_TPL_)SPI_SUPPORT) += spi/ obj-$(CONFIG_$(SPL_TPL_)TIMER) += timer/ obj-$(CONFIG_$(SPL_TPL_)VIRTIO) += virtio/
@@ -33,9 +32,6 @@ obj-$(CONFIG_SPL_POWER_SUPPORT) += power/ power/pmic/ obj-$(CONFIG_SPL_POWER_SUPPORT) += power/regulator/ obj-$(CONFIG_SPL_POWER_DOMAIN) += power/domain/ obj-$(CONFIG_SPL_DM_RESET) += reset/ -obj-$(CONFIG_SPL_MTD_SUPPORT) += mtd/ -obj-$(CONFIG_SPL_ONENAND_SUPPORT) += mtd/onenand/ -obj-$(CONFIG_SPL_UBI) += mtd/ubispl/ obj-$(CONFIG_SPL_DMA_SUPPORT) += dma/ obj-$(CONFIG_SPL_ETH_SUPPORT) += net/ obj-$(CONFIG_SPL_ETH_SUPPORT) += net/phy/
drivers/mtd/Makefile +30 -14
54 lines not on this page · raw message
drivers/mtd/nand/Makefile +4 -0
@@ -1,6 +1,10 @@ # SPDX-License-Identifier: GPL-2.0+ +ifeq ($(CONFIG_SPL_BUILD)$(CONFIG_TPL_BUILD),) nandcore-objs := core.o bbt.o obj-$(CONFIG_MTD_NAND_CORE) += nandcore.o obj-$(CONFIG_MTD_RAW_NAND) += raw/ obj-$(CONFIG_MTD_SPI_NAND) += spi/ +else +obj-$(CONFIG_$(SPL_TPL_)NAND_SUPPORT) += raw/ +endif
Signature · 1 line
2.19.1
PATCH v3 28/28 mtd: properly handle SPL kbuild lines
Hi Miquel,
Quoted 3 lines · On Wed, 5 Dec 2018 00:57:14 +0100 Miquel Raynal <[email protected]>…
Instead of compiling just a few files from the root
Makefile, rework the MTDMakefiletree to take into account SPL's needs.
As mentioned in my review of patch 1, I think patch 1, 27 and 28 could be merged in a single patch that would be placed at the end of this series as the final (real) Makefile cleanup.
BTW, good job! I can only imagine how painful it was to do this without breaking builds.
Regards,
Boris