Bladeren bron

fs: Migrate ext4 to Kconfig

Migrate the following symbols to Kconfig:

CONFIG_FS_EXT4
CONFIG_EXT4_WRITE

The definitions in config_fallbacks.h can now be expressed in Kconfig.

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
Tuomas Tynkkynen 6 jaren geleden
bovenliggende
commit
3d22bae57f

+ 3 - 0
cmd/Kconfig

@@ -1367,17 +1367,20 @@ config CMD_CRAMFS
 
 
 config CMD_EXT2
 config CMD_EXT2
 	bool "ext2 command support"
 	bool "ext2 command support"
+	select FS_EXT4
 	help
 	help
 	  Enables EXT2 FS command
 	  Enables EXT2 FS command
 
 
 config CMD_EXT4
 config CMD_EXT4
 	bool "ext4 command support"
 	bool "ext4 command support"
+	select FS_EXT4
 	help
 	help
 	  Enables EXT4 FS command
 	  Enables EXT4 FS command
 
 
 config CMD_EXT4_WRITE
 config CMD_EXT4_WRITE
 	depends on CMD_EXT4
 	depends on CMD_EXT4
 	bool "ext4 write command support"
 	bool "ext4 write command support"
+	select EXT4_WRITE
 	help
 	help
 	  Enables EXT4 FS write command
 	  Enables EXT4 FS write command
 
 

+ 1 - 0
configs/ds109_defconfig

@@ -22,3 +22,4 @@ CONFIG_SPI_FLASH_STMICRO=y
 CONFIG_SYS_NS16550=y
 CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_EHCI_HCD=y
+CONFIG_FS_EXT4=y

+ 1 - 0
configs/mx25pdk_defconfig

@@ -17,5 +17,6 @@ CONFIG_CMD_DATE=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_DOS_PARTITION=y
 CONFIG_DOS_PARTITION=y
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_ENV_IS_IN_MMC=y
+CONFIG_FS_EXT4=y
 CONFIG_FS_FAT=y
 CONFIG_FS_FAT=y
 CONFIG_OF_LIBFDT=y
 CONFIG_OF_LIBFDT=y

+ 11 - 11
doc/README.ext4

@@ -2,10 +2,10 @@ U-Boot supports access of both ext2 and ext4 filesystems, either in read-only
 mode or in read-write mode.
 mode or in read-write mode.
 
 
 First, to enable support for both ext4 (and, automatically, ext2 as well),
 First, to enable support for both ext4 (and, automatically, ext2 as well),
-but without selecting the corresponding commands, use one of:
+but without selecting the corresponding commands, enable one of the following:
 
 
-  #define CONFIG_FS_EXT4	(for read-only)
-  #define CONFIG_EXT4_WRITE	(for read-write)
+  CONFIG_FS_EXT4	(for read-only)
+  CONFIG_EXT4_WRITE	(for read-write)
 
 
 Next, to select the ext2-related commands:
 Next, to select the ext2-related commands:
 
 
@@ -20,22 +20,22 @@ or ext4-related commands:
 
 
 use one or both of:
 use one or both of:
 
 
-  #define CONFIG_CMD_EXT2
-  #define CONFIG_CMD_EXT4
+  CONFIG_CMD_EXT2
+  CONFIG_CMD_EXT4
 
 
-Selecting either of the above automatically defines CONFIG_FS_EXT4 if it
-wasn't defined already.
+Selecting either of the above automatically selects CONFIG_FS_EXT4 if it
+wasn't enabled already.
 
 
-In addition, to get the write access command "ext4write", use:
+In addition, to get the write access command "ext4write", enable:
 
 
-  #define CONFIG_CMD_EXT4_WRITE
+  CONFIG_CMD_EXT4_WRITE
 
 
-which automatically defines CONFIG_EXT4_WRITE if it wasn't defined
+which automatically selects CONFIG_EXT4_WRITE if it wasn't defined
 already.
 already.
 
 
 Also relevant are the generic filesystem commands, selected by:
 Also relevant are the generic filesystem commands, selected by:
 
 
-  #define CONFIG_CMD_FS_GENERIC
+  CONFIG_CMD_FS_GENERIC
 
 
 This does not automatically enable EXT4 support for you, you still need
 This does not automatically enable EXT4 support for you, you still need
 to do that yourself.
 to do that yourself.

+ 13 - 0
fs/ext4/Kconfig

@@ -0,0 +1,13 @@
+config FS_EXT4
+	bool "Enable ext4 filesystem support"
+	help
+	  This provides support for reading images from the ext4 filesystem.
+	  ext4 is a widely used general-purpose filesystem for Linux.
+	  You can also enable CMD_EXT4 to get access to ext4 commands.
+
+config EXT4_WRITE
+	bool "Enable ext4 filesystem write support"
+	depends on FS_EXT4
+	help
+	  This provides support for creating and writing new files to an
+	  existing ext4 filesystem partition.

+ 0 - 9
include/config_fallbacks.h

@@ -33,15 +33,6 @@
 #define CONFIG_FS_FAT
 #define CONFIG_FS_FAT
 #endif
 #endif
 
 
-#if (defined(CONFIG_CMD_EXT4) || defined(CONFIG_CMD_EXT2)) && \
-						!defined(CONFIG_FS_EXT4)
-#define CONFIG_FS_EXT4
-#endif
-
-#if defined(CONFIG_CMD_EXT4_WRITE) && !defined(CONFIG_EXT4_WRITE)
-#define CONFIG_EXT4_WRITE
-#endif
-
 /* Rather than repeat this expression each time, add a define for it */
 /* Rather than repeat this expression each time, add a define for it */
 #if defined(CONFIG_IDE) || \
 #if defined(CONFIG_IDE) || \
 	defined(CONFIG_SATA) || \
 	defined(CONFIG_SATA) || \

+ 0 - 2
include/configs/am335x_shc.h

@@ -17,8 +17,6 @@
 
 
 /* settings we don;t want on this board */
 /* settings we don;t want on this board */
 #undef CONFIG_SPL_AM33XX_ENABLE_RTC32K_OSC
 #undef CONFIG_SPL_AM33XX_ENABLE_RTC32K_OSC
-#undef CONFIG_CMD_EXT4
-#undef CONFIG_CMD_EXT4_WRITE
 #undef CONFIG_CMD_SPI
 #undef CONFIG_CMD_SPI
 
 
 #define CONFIG_CMD_CACHE
 #define CONFIG_CMD_CACHE

+ 0 - 8
include/configs/brppt1.h

@@ -243,13 +243,5 @@ MMCARGS
 #else
 #else
 #error "no storage for Environment defined!"
 #error "no storage for Environment defined!"
 #endif
 #endif
-/*
- * Common filesystems support.  When we have removable storage we
- * enabled a number of useful commands and support.
- */
-#if defined(CONFIG_MMC) || defined(CONFIG_USB_STORAGE)
-#define CONFIG_FS_EXT4
-#define CONFIG_EXT4_WRITE
-#endif /* CONFIG_MMC, ... */
 
 
 #endif	/* ! __CONFIG_BRPPT1_H__ */
 #endif	/* ! __CONFIG_BRPPT1_H__ */

+ 0 - 1
include/configs/dragonboard820c.h

@@ -60,7 +60,6 @@
 	"pxefile_addr_r=0x90100000\0"\
 	"pxefile_addr_r=0x90100000\0"\
 	BOOTENV
 	BOOTENV
 
 
-#define CONFIG_EXT4_WRITE
 #define CONFIG_ENV_SIZE			0x4000
 #define CONFIG_ENV_SIZE			0x4000
 #define CONFIG_ENV_VARS_UBOOT_CONFIG
 #define CONFIG_ENV_VARS_UBOOT_CONFIG
 
 

+ 0 - 2
include/configs/hikey.h

@@ -66,8 +66,6 @@
 /* SD/MMC configuration */
 /* SD/MMC configuration */
 #define CONFIG_BOUNCE_BUFFER
 #define CONFIG_BOUNCE_BUFFER
 
 
-#define CONFIG_FS_EXT4
-
 /* Command line configuration */
 /* Command line configuration */
 
 
 #define CONFIG_MTD_PARTITIONS
 #define CONFIG_MTD_PARTITIONS

+ 0 - 5
include/configs/mx25pdk.h

@@ -65,11 +65,6 @@
 #define CONFIG_CMDLINE_EDITING
 #define CONFIG_CMDLINE_EDITING
 #define CONFIG_SYS_LONGHELP
 #define CONFIG_SYS_LONGHELP
 
 
-/* U-Boot commands */
-
-/* Filesystem support */
-#define CONFIG_FS_EXT4
-
 /* Ethernet */
 /* Ethernet */
 #define CONFIG_FEC_MXC
 #define CONFIG_FEC_MXC
 #define CONFIG_FEC_MXC_PHYADDR		0x1f
 #define CONFIG_FEC_MXC_PHYADDR		0x1f

+ 0 - 3
include/configs/pic32mzdask.h

@@ -87,9 +87,6 @@
 /* FAT FS */
 /* FAT FS */
 #define CONFIG_SUPPORT_VFAT
 #define CONFIG_SUPPORT_VFAT
 
 
-/* EXT4 FS */
-#define CONFIG_FS_EXT4
-
 /* -------------------------------------------------
 /* -------------------------------------------------
  * Environment
  * Environment
  */
  */

+ 0 - 2
include/configs/rcar-gen2-common.h

@@ -13,8 +13,6 @@
 
 
 /* Support File sytems */
 /* Support File sytems */
 #define CONFIG_SUPPORT_VFAT
 #define CONFIG_SUPPORT_VFAT
-#define CONFIG_FS_EXT4
-#define CONFIG_EXT4_WRITE
 
 
 #define CONFIG_CMDLINE_TAG
 #define CONFIG_CMDLINE_TAG
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_SETUP_MEMORY_TAGS

+ 0 - 2
include/configs/rcar-gen3-common.h

@@ -19,8 +19,6 @@
 
 
 /* Support File sytems */
 /* Support File sytems */
 #define CONFIG_SUPPORT_VFAT
 #define CONFIG_SUPPORT_VFAT
-#define CONFIG_FS_EXT4
-#define CONFIG_EXT4_WRITE
 
 
 #define CONFIG_CMDLINE_TAG
 #define CONFIG_CMDLINE_TAG
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_SETUP_MEMORY_TAGS

+ 0 - 1
include/configs/rk3128_common.h

@@ -31,7 +31,6 @@
 #define CONFIG_BOUNCE_BUFFER
 #define CONFIG_BOUNCE_BUFFER
 
 
 #define CONFIG_SUPPORT_VFAT
 #define CONFIG_SUPPORT_VFAT
-#define CONFIG_FS_EXT4
 
 
 /* RAW SD card / eMMC locations. */
 /* RAW SD card / eMMC locations. */
 #define CONFIG_SYS_SPI_U_BOOT_OFFS	(128 << 10)
 #define CONFIG_SYS_SPI_U_BOOT_OFFS	(128 << 10)

+ 0 - 1
include/configs/rk3328_common.h

@@ -25,7 +25,6 @@
 #define CONFIG_BOUNCE_BUFFER
 #define CONFIG_BOUNCE_BUFFER
 
 
 #define CONFIG_SUPPORT_VFAT
 #define CONFIG_SUPPORT_VFAT
-#define CONFIG_FS_EXT4
 
 
 /* RAW SD card / eMMC locations. */
 /* RAW SD card / eMMC locations. */
 #define CONFIG_SYS_SPI_U_BOOT_OFFS	(128 << 10)
 #define CONFIG_SYS_SPI_U_BOOT_OFFS	(128 << 10)

+ 0 - 1
include/configs/rk3399_common.h

@@ -39,7 +39,6 @@
 #define CONFIG_ROCKCHIP_SDHCI_MAX_FREQ	200000000
 #define CONFIG_ROCKCHIP_SDHCI_MAX_FREQ	200000000
 
 
 #define CONFIG_SUPPORT_VFAT
 #define CONFIG_SUPPORT_VFAT
-#define CONFIG_FS_EXT4
 
 
 /* RAW SD card / eMMC locations. */
 /* RAW SD card / eMMC locations. */
 #define CONFIG_SYS_SPI_U_BOOT_OFFS	(128 << 10)
 #define CONFIG_SYS_SPI_U_BOOT_OFFS	(128 << 10)

+ 0 - 5
include/configs/s5p_goni.h

@@ -187,11 +187,6 @@
 #define CONFIG_SAMSUNG_ONENAND		1
 #define CONFIG_SAMSUNG_ONENAND		1
 #define CONFIG_SYS_ONENAND_BASE		0xB0000000
 #define CONFIG_SYS_ONENAND_BASE		0xB0000000
 
 
-/* write support for filesystems */
-#define CONFIG_EXT4_WRITE
-
-/* GPT */
-
 #define CONFIG_SYS_INIT_SP_ADDR	(CONFIG_SYS_LOAD_ADDR - 0x1000000)
 #define CONFIG_SYS_INIT_SP_ADDR	(CONFIG_SYS_LOAD_ADDR - 0x1000000)
 
 
 #define CONFIG_USB_GADGET_DWC2_OTG_PHY
 #define CONFIG_USB_GADGET_DWC2_OTG_PHY

+ 0 - 2
include/configs/sandbox.h

@@ -25,8 +25,6 @@
 
 
 #define CONFIG_LMB
 #define CONFIG_LMB
 
 
-#define CONFIG_FS_EXT4
-#define CONFIG_EXT4_WRITE
 #define CONFIG_HOST_MAX_DEVICES 4
 #define CONFIG_HOST_MAX_DEVICES 4
 
 
 /*
 /*

+ 0 - 5
include/configs/tegra-common-post.h

@@ -113,11 +113,6 @@
 #ifdef CONFIG_CMD_I2C
 #ifdef CONFIG_CMD_I2C
 #endif
 #endif
 
 
-/* remove partitions/filesystems */
-#ifdef CONFIG_FS_EXT4
-#undef CONFIG_FS_EXT4
-#endif
-
 /* remove USB */
 /* remove USB */
 #ifdef CONFIG_USB_EHCI_TEGRA
 #ifdef CONFIG_USB_EHCI_TEGRA
 #undef CONFIG_USB_EHCI_TEGRA
 #undef CONFIG_USB_EHCI_TEGRA

+ 0 - 2
scripts/config_whitelist.txt

@@ -601,7 +601,6 @@ CONFIG_ETHER_ON_FCC3
 CONFIG_ETHPRIME
 CONFIG_ETHPRIME
 CONFIG_ETH_BUFSIZE
 CONFIG_ETH_BUFSIZE
 CONFIG_ETH_RXSIZE
 CONFIG_ETH_RXSIZE
-CONFIG_EXT4_WRITE
 CONFIG_EXTRA_BOOTARGS
 CONFIG_EXTRA_BOOTARGS
 CONFIG_EXTRA_CLOCK
 CONFIG_EXTRA_CLOCK
 CONFIG_EXTRA_ENV
 CONFIG_EXTRA_ENV
@@ -751,7 +750,6 @@ CONFIG_FSL_VIA
 CONFIG_FSMC_NAND_BASE
 CONFIG_FSMC_NAND_BASE
 CONFIG_FSMTDBLK
 CONFIG_FSMTDBLK
 CONFIG_FSNOTIFY
 CONFIG_FSNOTIFY
-CONFIG_FS_EXT4
 CONFIG_FS_POSIX_ACL
 CONFIG_FS_POSIX_ACL
 CONFIG_FTAHBC020S
 CONFIG_FTAHBC020S
 CONFIG_FTAHBC020S_BASE
 CONFIG_FTAHBC020S_BASE