summaryrefslogtreecommitdiffstats
path: root/fs/romfs/Kconfig
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2009-02-12 10:40:10 +0000
committerDavid Woodhouse <David.Woodhouse@intel.com>2009-03-24 09:01:32 +0000
commitda4458bda237aa0cb1688f6c359477f203788f6a (patch)
tree9b76cb1ecb462cccc8412eef2af5f18dcee77b51 /fs/romfs/Kconfig
parent6e232cfce35a20a8702d9ac7709d35030c1b3271 (diff)
NOMMU: Make it possible for RomFS to use MTD devices directly
Change RomFS so that it can use MTD devices directly - without the intercession of the block layer - as well as using block devices. This permits RomFS: (1) to use the MTD direct mapping facility available under NOMMU conditions if the underlying device is directly accessible by the CPU (including XIP); (2) and thus to be used when the block layer is disabled. RomFS can be configured with support just for MTD devices, just for Block devices or for both. If RomFS is configured for both, then it will treat mtdblock device files as MTD backing stores, not block layer backing stores. I tested this using a CONFIG_MMU=n CONFIG_BLOCK=n kernel running on my FRV board with a RomFS image installed on the mtdram test device. I see my test program being run XIP: # cat /proc/maps ... c0c000b0-c0c01f8c r-xs 00000000 1f:00 144 /mnt/doshm ... GDB on the kernel can be used to show that these addresses are within the set-aside RAM space. Signed-off-by: David Howells <dhowells@redhat.com> Tested-by: Bernd Schmidt <bernd.schmidt@analog.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'fs/romfs/Kconfig')
-rw-r--r--fs/romfs/Kconfig24
1 files changed, 24 insertions, 0 deletions
diff --git a/fs/romfs/Kconfig b/fs/romfs/Kconfig
index 1a17020f9fa..802c742f002 100644
--- a/fs/romfs/Kconfig
+++ b/fs/romfs/Kconfig
@@ -14,3 +14,27 @@ config ROMFS_FS
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
+ 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
+ direct mapping of the medium.
+
+ If unsure, answer Y.
+
+config ROMFS_ON_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
+ intercession of the block layer (which may have been disabled). It
+ also allows direct mapping of MTD devices through romfs files under
+ NOMMU conditions if the underlying device is directly addressable by
+ the CPU.
+
+ If unsure, answer Y.
+