[RFC] root=/dev/mtdblock at name

Leon Woestenberg leon.woestenberg at gmail.com
Tue Mar 18 09:46:27 EDT 2008


Hello,

On Fri, Oct 19, 2007 at 10:52 PM, Leon Woestenberg
<leon.woestenberg at gmail.com> wrote:
>
>  On 10/19/07, Jörn Engel <joern at logfs.org> wrote:
>  > On Fri, 19 October 2007 13:55:08 +0200, Leon Woestenberg wrote:
>  > > root=/dev/mtdblock at name
>
>  > What would that gain us that drivers/mtd/mtdsuper.c does not already
>  > offer?
>  >
>  Nothing, it seems, I had missed that development. Been too much
>  walking around in user land lately.
>
On  actual tries with 2.6.24 I have failed to get this to work:

CONFIG_CMDLINE=" root=/dev/mtd:rootfs rootfstype=jffs2"

drivers/mtd/mtdsuper.c:get_sb_mtd() suggests this should be possible.

However, I get the following output (see below). When I use
/dev/mtdblock7 it works.

What did I miss?

Thanks, regards, Leon.


[    0.000000] Kernel command line: irqdebug debug mem=32M at 0x0
root=/dev/mtd:rootfs panic=15 rootfstype=jffs2 console=ttyS0,115200n8
[    0.000000] PID hash table entries: 128 (order: 7, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Memory: 32MB = 32MB total
[    0.000000] Memory: 29852KB available (2344K code, 161K data, 88K init)
[    0.000000] Calibrating delay loop... 532.48 BogoMIPS (lpj=2662400)
[    0.250000] Mount-cache hash table entries: 512
[    0.250000] CPU: Testing write buffer coherency: ok
[    0.250000] net_namespace: 64 bytes
[    0.250000] NET: Registered protocol family 16
[    0.250000] IXP4xx: Using 16MiB expansion bus window size
[    0.300000] NET: Registered protocol family 2
[    0.310000] Time: OSTS clocksource has been installed.
[    0.390000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.390000] TCP established hash table entries: 1024 (order: 1, 8192 bytes)
[    0.390000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.390000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.390000] TCP reno registered
[    0.420000] IXP4xx Queue Manager initialized.
[    0.420000] NetWinder Floating Point Emulator V0.97 (double precision)
[    0.420000] squashfs: version 3.3 (2007/10/31) Phillip Lougher
[    0.420000] squashfs: LZMA suppport for slax.org by jro
[    0.420000] JFFS2 version 2.2. (NAND) �(c) 2001-2006 Red Hat, Inc.
[    0.420000] io scheduler noop registered
[    0.420000] io scheduler deadline registered (default)
[    0.420000] Serial: 8250/16550 driver $Revision: 1.90 $ 1 ports,
IRQ sharing disabled
[    0.430000] serial8250.0: ttyS0 at MMIO 0xc8000000 (irq = 15) is a XScale
[    0.430000] console [ttyS0] enabled
[    0.440000] RAMDISK driver initialized: 4 RAM disks of 10240K size
1024 blocksize
[    0.450000] loop: module loaded
[    0.460000] eth0: MII PHY 1 on NPE-B
[    0.460000] IXP4XX-Flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
[    0.470000]  Intel/Sharp Extended Query Table at 0x0031
[    0.470000] Using buffer write method
[    0.480000] cfi_cmdset_0001: Erase suspend on write enabled
[    0.480000] erase region 0: offset=0x0,size=0x20000,blocks=128
[    0.490000] Searching for RedBoot partition table in IXP4XX-Flash.0
at offset 0x80000
[    0.530000] 8 RedBoot partitions found on MTD device IXP4XX-Flash.0
[    0.530000] Creating 8 MTD partitions on "IXP4XX-Flash.0":
[    0.540000] 0x00000000-0x00080000 : "RedBoot"
[    0.540000] mtd: Giving out device 0 to RedBoot
[    0.550000] 0x00080000-0x0009f000 : "FIS directory"
[    0.560000] mtd: partition "FIS directory" doesn't end on an erase
block -- force read-only
[    0.560000] mtd: Giving out device 1 to FIS directory
[    0.570000] 0x0009f000-0x000a0000 : "RedBoot config"
[    0.580000] mtd: partition "RedBoot config" doesn't start on an
erase block boundary -- force read-only
[    0.580000] mtd: Giving out device 2 to RedBoot config
[    0.590000] 0x000a0000-0x000c0000 : "reserved"
[    0.600000] mtd: Giving out device 3 to reserved
[    0.600000] 0x000c0000-0x00400000 : "updater"
[    0.610000] mtd: Giving out device 4 to updater
[    0.610000] 0x00400000-0x00500000 : "nonvolatile"
[    0.620000] mtd: Giving out device 5 to nonvolatile
[    0.620000] 0x00500000-0x00700000 : "kernel"
[    0.630000] mtd: Giving out device 6 to kernel
[    0.630000] 0x00700000-0x01000000 : "rootfs"
[    0.640000] mtd: Giving out device 7 to rootfs
[    0.640000] i2c /dev entries driver
[    0.650000] Driver for 1-wire Dallas network protocol.
[    0.660000] TCP cubic registered
[    0.660000] NET: Registered protocol family 1
[    0.660000] NET: Registered protocol family 17
[    0.670000] RPC: Registered udp transport module.
[    0.670000] RPC: Registered tcp transport module.
[    0.680000] XScale DSP coprocessor detected.
[    0.680000] MTD: MTD device name "/dev/root".
[    0.690000] MTDSB: dev_name "/dev/root"
[    0.690000] MTDSB: path_lookup() returned 0, inode c1800170
[    0.700000] List of all partitions:
[    0.700000] 1f00        512 mtdblock0 (driver?)
[    0.710000] 1f01        124 mtdblock1 (driver?)
[    0.710000] 1f02          4 mtdblock2 (driver?)
[    0.720000] 1f03        128 mtdblock3 (driver?)
[    0.720000] 1f04       3328 mtdblock4 (driver?)
[    0.720000] 1f05       1024 mtdblock5 (driver?)
[    0.730000] 1f06       2048 mtdblock6 (driver?)
[    0.730000] 1f07       9216 mtdblock7 (driver?)
[    0.740000] No filesystem could mount root, tried:  jffs2
[    0.740000] Kernel panic - not syncing: VFS: Unable to mount root
fs on unknown-block(0,0)


-- 
Leon


More information about the linux-mtd mailing list