• David Howells's avatar
    NOMMU: Make it possible for RomFS to use MTD devices directly · da4458bd
    David Howells authored
    
    
    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: default avatarDavid Howells <dhowells@redhat.com>
    Tested-by: default avatarBernd Schmidt <bernd.schmidt@analog.com>
    Signed-off-by: default avatarDavid Woodhouse <David.Woodhouse@intel.com>
    da4458bd