fs: Kconfig: Add a separate option for FS_CRAMFS

Rather than using CMD_CRAMFS for both the filesystem and its command, we
should have a separate option for each. This allows us to enable CRAMFS
support without the command, if desired, which reduces U-Boot's size
slightly.

Signed-off-by: Simon Glass <sjg@chromium.org>
[trini: imply FS_CRAMFS for keymile]
Signed-off-by: Tom Rini <trini@konsulko.com>
diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
index 8aa5428..4a7e36e 100644
--- a/arch/arm/mach-kirkwood/Kconfig
+++ b/arch/arm/mach-kirkwood/Kconfig
@@ -35,6 +35,7 @@
 	bool "KM_KIRKWOOD Board"
 	select BOARD_LATE_INIT
 	imply CMD_CRAMFS
+	imply FS_CRAMFS
 
 config TARGET_NET2BIG_V2
 	bool "LaCie 2Big Network v2 NAS Board"
diff --git a/arch/powerpc/cpu/mpc8260/Kconfig b/arch/powerpc/cpu/mpc8260/Kconfig
index 1a5ea73..47bae55 100644
--- a/arch/powerpc/cpu/mpc8260/Kconfig
+++ b/arch/powerpc/cpu/mpc8260/Kconfig
@@ -11,6 +11,7 @@
 config TARGET_KM82XX
 	bool "Support km82xx"
 	imply CMD_CRAMFS
+	imply FS_CRAMFS
 
 endchoice
 
diff --git a/arch/powerpc/cpu/mpc83xx/Kconfig b/arch/powerpc/cpu/mpc83xx/Kconfig
index 4890e13..7ebc27c 100644
--- a/arch/powerpc/cpu/mpc83xx/Kconfig
+++ b/arch/powerpc/cpu/mpc83xx/Kconfig
@@ -65,14 +65,17 @@
 config TARGET_KM8360
 	bool "Support km8360"
 	imply CMD_CRAMFS
+	imply FS_CRAMFS
 
 config TARGET_SUVD3
 	bool "Support suvd3"
 	imply CMD_CRAMFS
+	imply FS_CRAMFS
 
 config TARGET_TUXX1
 	bool "Support tuxx1"
 	imply CMD_CRAMFS
+	imply FS_CRAMFS
 
 config TARGET_TQM834X
 	bool "Support TQM834x"
diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig
index 4889633..31c0964 100644
--- a/arch/powerpc/cpu/mpc85xx/Kconfig
+++ b/arch/powerpc/cpu/mpc85xx/Kconfig
@@ -322,6 +322,7 @@
 	select ARCH_P2041
 	select PHYS_64BIT
 	imply CMD_CRAMFS
+	imply FS_CRAMFS
 
 config TARGET_XPEDITE520X
 	bool "Support xpedite520x"
diff --git a/cmd/Kconfig b/cmd/Kconfig
index 4145fcf..5451398 100644
--- a/cmd/Kconfig
+++ b/cmd/Kconfig
@@ -901,6 +901,7 @@
 
 config CMD_CRAMFS
 	bool "Enable the 'cramfs' command"
+	depends on FS_CRAMFS
 	help
 	  This provides commands for dealing with CRAMFS (Compressed ROM
 	  filesystem). CRAMFS is useful when space is tight since files are
diff --git a/configs/UCP1020_SPIFLASH_defconfig b/configs/UCP1020_SPIFLASH_defconfig
index 4e5e0c1..2b3e4bd 100644
--- a/configs/UCP1020_SPIFLASH_defconfig
+++ b/configs/UCP1020_SPIFLASH_defconfig
@@ -34,4 +34,5 @@
 CONFIG_FSL_ESPI=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
+CONFIG_FS_CRAMFS=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/UCP1020_defconfig b/configs/UCP1020_defconfig
index ae7cb25..df0f8cc 100644
--- a/configs/UCP1020_defconfig
+++ b/configs/UCP1020_defconfig
@@ -34,4 +34,5 @@
 CONFIG_FSL_ESPI=y
 CONFIG_USB=y
 CONFIG_USB_STORAGE=y
+CONFIG_FS_CRAMFS=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/sandbox_defconfig b/configs/sandbox_defconfig
index d6966d3..7db9807 100644
--- a/configs/sandbox_defconfig
+++ b/configs/sandbox_defconfig
@@ -169,6 +169,7 @@
 CONFIG_CONSOLE_TRUETYPE_CANTORAONE=y
 CONFIG_VIDEO_SANDBOX_SDL=y
 CONFIG_FS_CBFS=y
+CONFIG_FS_CRAMFS=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_TPM=y
 CONFIG_LZ4=y
diff --git a/configs/sandbox_noblk_defconfig b/configs/sandbox_noblk_defconfig
index 06ca3c6..d051fde 100644
--- a/configs/sandbox_noblk_defconfig
+++ b/configs/sandbox_noblk_defconfig
@@ -171,6 +171,7 @@
 CONFIG_CONSOLE_TRUETYPE_CANTORAONE=y
 CONFIG_VIDEO_SANDBOX_SDL=y
 CONFIG_FS_CBFS=y
+CONFIG_FS_CRAMFS=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_TPM=y
 CONFIG_LZ4=y
diff --git a/configs/sandbox_spl_defconfig b/configs/sandbox_spl_defconfig
index a8ddb99..ef41fce 100644
--- a/configs/sandbox_spl_defconfig
+++ b/configs/sandbox_spl_defconfig
@@ -175,6 +175,7 @@
 CONFIG_CONSOLE_TRUETYPE_CANTORAONE=y
 CONFIG_VIDEO_SANDBOX_SDL=y
 CONFIG_FS_CBFS=y
+CONFIG_FS_CRAMFS=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_TPM=y
 CONFIG_LZ4=y
diff --git a/fs/cramfs/Kconfig b/fs/cramfs/Kconfig
index e69de29..6c9f63d 100644
--- a/fs/cramfs/Kconfig
+++ b/fs/cramfs/Kconfig
@@ -0,0 +1,7 @@
+config FS_CRAMFS
+	bool "Enable CRAMFS filesystem support"
+	help
+	  This provides support for reading images from CRAMFS (Compressed ROM
+	  filesystem). CRAMFS is useful when space is tight since files are
+	  compressed. You can also enable CMD_CRAMFS to get command-line
+	  access.