NOMMU: Fix the RomFS Kconfig to ensure at least one backing store is selected

Fix the configuration of the RomFS to make sure that at least one 
backing store method is always selected.  This is done by rendering it 
down to a choice item that selects between Block, MTD and both.

This also works correctly in the case that CONFIG_MTD=m: MTD cannot be 
selected as a backing store unless CONFIG_ROMFS_FS is also 'm'.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
diff --git a/fs/romfs/Kconfig b/fs/romfs/Kconfig
index 802c742..ce2d6bc 100644
--- a/fs/romfs/Kconfig
+++ b/fs/romfs/Kconfig
@@ -1,6 +1,6 @@
 config ROMFS_FS
 	tristate "ROM file system support"
-	depends on BLOCK
+	depends on BLOCK || MTD
 	---help---
 	  This is a very small read-only file system mainly intended for
 	  initial ram disks of installation disks, but it could be used for
@@ -15,9 +15,19 @@
 	  If you don't know whether you need it, then you don't need it:
 	  answer N.
 
-config ROMFS_ON_BLOCK
-	bool "Block device-backed ROM file system support" if (ROMFS_ON_MTD && EMBEDDED)
-	depends on ROMFS_FS && BLOCK
+#
+# Select the backing stores to be supported
+#
+choice
+	prompt "RomFS backing stores"
+	depends on ROMFS_FS
+	default ROMFS_BACKED_BY_BLOCK
+	help
+	  Select the backing stores to be supported.
+
+config ROMFS_BACKED_BY_BLOCK
+	bool "Block device-backed ROM file system support"
+	depends on BLOCK
 	help
 	  This permits ROMFS to use block devices buffered through the page
 	  cache as the medium from which to retrieve data.  It does not allow
@@ -25,9 +35,8 @@
 
 	  If unsure, answer Y.
 
-config ROMFS_ON_MTD
+config ROMFS_BACKED_BY_MTD
 	bool "MTD-backed ROM file system support"
-	depends on ROMFS_FS
 	depends on MTD=y || (ROMFS_FS=m && MTD)
 	help
 	  This permits ROMFS to use MTD based devices directly, without the
@@ -38,3 +47,16 @@
 
 	  If unsure, answer Y.
 
+config ROMFS_BACKED_BY_BOTH
+	bool "Both the above"
+	depends on BLOCK && (MTD=y || (ROMFS_FS=m && MTD))
+endchoice
+
+
+config ROMFS_ON_BLOCK
+	bool
+	default y if ROMFS_BACKED_BY_BLOCK || ROMFS_BACKED_BY_BOTH
+
+config ROMFS_ON_MTD
+	bool
+	default y if ROMFS_BACKED_BY_MTD || ROMFS_BACKED_BY_BOTH