[meta-xilinx] Booting with UBIFS RootFS

Oleg K Dzhimiev oleg at elphel.com
Mon Jul 18 14:21:16 PDT 2016


Hi,

It's most likely ubi device wasn't attached (or the ubifs "test" partition
is missing - though you said you are able to mount it manually)

I'm on Yocto 2.0.1 + meta-xilinx layer, kernel version 4.0, board: elphel
10393 - +zynq chip + NAND flash - I added ubifs support to it not too long
ago.

So, I would check:
1. kernel .config and edit if anything is missing:

CONFIG_MTD_UBI=y
> CONFIG_UBIFS_FS=y
> CONFIG_UBIFS_FS_ADVANCED_COMPR=n
> #CONFIG_UBIFS_FS_LZO=y - default
> #CONFIG_UBIFS_FS_ZLIB=y - default
> CONFIG_MTD_NAND_OTP=y


2. Check your old bootlog, enable debug for ubi(?) The ubi driver messages
might be "on" by default. Here's my log:

[    1.754739] Bad block table found at page 524224, version 0x01
>
>
>
> [    1.760957] Bad block table found at page 524160, version 0x01
>
>
>
> [    1.767137] 5 ofpart partitions found on MTD device pl35x-nand
>
>
>
> [    1.772879] Creating 5 MTD partitions on "pl35x-nand":
>
>
>
> [    1.778023] 0x000000000000-0x000000100000 : "u-boot-spl"
>
>
>
> [    1.784380] 0x000000100000-0x000000500000 : "u-boot"
>
>
>
> [    1.790292] 0x000000500000-0x000000600000 : "device-tree"
>
>
>
> [    1.796522] 0x000000600000-0x000001600000 : "kernel"
>
>
>
> [    1.802395] 0x000001600000-0x000011600000 : "rootfs"
>
>
>
> [    1.810320] elphel393-pwr elphel393-pwr at 0: Probing elphel393-pwr
>
>
>
> [    1.822328] elphel393-pwr elphel393-pwr at 0: elphel393_pwr configuration
> done
>
>
> [    2.569758] elphel393-mem: Allocated 76800 pages for DMA at address
> 0xad00000
>
>
> [    2.583248] elphel393-mem: Coherent buffer vaddr:
>  0xCAD00000
>
>
> [    2.589986] elphel393-mem: Coherent buffer paddr:
>  0x0AD00000
>
>
> [    2.596723] elphel393-mem: Coherent buffer length:
> 0x12C00000
>
>
> [    2.603798] elphel393-mem: Probing elphel393-mem
>
>
>
> [    2.631080] H2D stream buffer vaddr:            0xEDC00000
>
>
>
> [    2.636477] H2D stream buffer paddr:            0x2DC00000
>
>
>
> [    2.641959] H2D stream buffer length:           0x00400000
>
>
>
> [    2.647427] D2H stream buffer vaddr:            0xED800000
>
>
>
> [    2.652882] D2H stream buffer paddr:            0x2D800000
>
>
>
> [    2.658363] D2H stream buffer length:           0x00400000
>
>
>
> [    2.663819] Bidirectional stream buffer vaddr:  0xED400000
>
>
>
> [    2.669299] Bidirectional stream buffer paddr:  0x2D400000
>
>
>
> [    2.674755] Bidirectional stream buffer length: 0x00400000
>
>
>
> [    2.696821] elphel393-init: /dev/mtd4: unlocked
>
>
>
> [    2.737305] elphel393_sensor_i2c: registered 5 i2c device classes
>
>
>
> [    2.743716] Elphel (R) model 353 Exif device driver - 125
>
>
>
> [    2.749196] circbuf driver elphel393-circbuf: registered MAJOR: 135
>
>
>
> [    2.755856] circbuf driver elphel393-circbuf: registered MAJOR: 130
>
>
>
> [    2.762068] circbuf driver elphel393-circbuf: using 314572800 bytes of
> DMA memory from pElphel_buf at address 0x0ad00000
>
>
> [    2.773908] CAN device driver interface
>
>
>
> [    2.779331] libphy: XEMACPS mii bus: probed
>
>
>
> [    2.791335] xemacps e000b000.ps7-ethernet: pdev->id -1, baseaddr
> 0xe000b000, irq 31
>
>
> [    2.799540] usbcore: registered new interface driver rtl8192cu
>
>
>
> [    2.805506] TCP: cubic registered
>
>
>
> [    2.808769] NET: Registered protocol family 17
>
>
>
> [    2.813177] can: controller area network core (rev 20120528 abi 9)
>
>
>
> [    2.819419] NET: Registered protocol family 29
>
>
>
> [    2.823784] can: raw protocol (rev 20120528)
>
>
>
> [    2.828054] can: broadcast manager protocol (rev 20120528 t)
>
>
>
> [    2.833682] can: netlink gateway (rev 20130117) max_hops=1
>
>
>
> [    2.839440] zynq_pm_remap_ocm: no compatible node found for
> 'xlnx,zynq-ocmc-1.0'
>
>
> [    2.846750] zynq_pm_suspend_init: Unable to map OCM.
>
>
>
> [    2.851745] Registering SWP/SWPB emulation handler
>
>
>
> [    2.858108] ubi0: attaching mtd4
>
>
>
> [    3.785262] ubi0: scanning is finished
>
>
>
> [    3.797826] ubi0: attached mtd4 (name "rootfs", size 256 MiB)
>
>
>
> [    3.803489] ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976
> bytes
>
>
> [    3.810367] ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size
> 2048
>
>
> [    3.817136] ubi0: VID header offset: 2048 (aligned 2048), data offset:
> 4096
>
>
> [    3.824059] ubi0: good PEBs: 2048, bad PEBs: 0, corrupted PEBs: 0
>
>
>
> [    3.830150] ubi0: user volume: 1, internal volumes: 1, max. volumes
> count: 128
>
>
> [    3.837354] ubi0: max/mean erase counter: 1/0, WL threshold: 4096,
> image sequence number: 1485386555
>
>
> [    3.846454] ubi0: available PEBs: 0, total reserved PEBs: 2048, PEBs
> reserved for bad PEB handling: 160
>
>
> [    3.855856] ubi0: background thread "ubi_bgt0d" started, PID 1134
>
>
>
> [    7.937813] xemacps e000b000.ps7-ethernet: Set clk to 124999999 Hz
>
>
>
> [    7.943914] xemacps e000b000.ps7-ethernet: link up (1000/FULL)
>
>
>
> [    7.976841] IP-Config: Guessing netmask 255.255.255.0
>
>
>
> [    7.981939] IP-Config: Complete:
>
>
>
> [    7.985092]      device=eth0, hwaddr=00:0e:64:10:c9:fe,
> ipaddr=192.168.0.8, mask=255.255.255.0, gw=255.255.255.255
>
>
> [    7.995448]      host=192.168.0.8, domain=, nis-domain=(none)
>
>
>
> [    8.001164]      bootserver=255.255.255.255,
> rootserver=255.255.255.255, rootpath=
>
>
> [    8.011869] Freeing unused kernel memory: 2392K (c077e000 - c09d4000)
>
>
>
> [    8.059760] udevd[1146]: starting version 182
>
>
>
> [    8.366871] UBIFS: background thread "ubifs_bgt0_0" started, PID 1942
>
>
>
> [    8.594648] UBIFS: recovery needed
>
>
>
> [    8.803164] UBIFS: recovery completed
>
>
>
> [    8.806907] UBIFS: mounted UBI device 0, volume 0, name
> "elphel393-rootfs"
>
>
> [    8.813712] UBIFS: LEB size: 126976 bytes (124 KiB), min./max. I/O unit
> sizes: 2048 bytes/2048 bytes
>
>
> [    8.831336] UBIFS: FS size: 237826048 bytes (226 MiB, 1873 LEBs),
> journal size 9023488 bytes (8 MiB, 72 LEBs)
>
>
> [    8.843058] UBIFS: reserved for root: 0 bytes (0 KiB)
>
>
>
> [    8.848173] UBIFS: media format: w4/r0 (latest is w4/r0), UUID
> 27160437-591E-4CC9-8BBC-7BD7896ACAD9, small LPT model


3. Posting my device tree bootargs just in case:

> bootargs = "cma=336M console=ttyPS0,115200 root=ubi0:elphel393-rootfs rw
> ip=192.168.0.8 earlyprintk rootwait rootfstype=ubifs ubi.mtd=4,2048";


Best regards,
Oleg Dzhimiev
Electronics Engineer
phone: +1 801 783 5555 x124
Elphel, Inc.

On 18 July 2016 at 13:10, <simon.goda at doulos.com> wrote:

> Hi
>
> I'm trying to boot a Zedboard using a 'core-image-minimal' filesystem in
> flash using Yocto 2.1.
>
> Using JFFS2, the kernel boots and mounts the filesystem with no issues.
>
> Using UBIFS, the kernel boots but the mount fails with the error shown
> below. I can, however, mount the same filesystem directly with no issues
> from the command line. It is only when trying to do this at boot-time that
> I see problems.
>
> In both cases I added an additional MTD partition to use for testing after
> the 4 defined in the original DTB. The fact that the JFFS2 filesystem works
> in this test partition suggests it is OK.
>
> UBIFS worked for me on a previous version (1.7.1) although I had to
> disable compression in the UBIFS image file.
>
> All the logs and information are below. I'd be grateful to know if anyone
> else has managed to boot a system using UBIFS with this version of the
> meta-xilinx kernel etc. or if anyone has any ideas what could be going
> wrong?
>
> Thanks in advance
> Simon Goda
>
>
> kernel version:
> 4.4.0-xilinx
>
> kernel boot params:
> console=ttyPS0,115200 rootfstype=ubifs ubi.mtd=5 root=ubi0:test rw
> rootwait earlyprintk
>
> MTD partitions:
> dev:    size   erasesize  name
> mtd0: 00100000 00010000 "qspi-fsbl-uboot"
> mtd1: 00500000 00010000 "qspi-linux"
> mtd2: 00020000 00010000 "qspi-device-tree"
> mtd3: 005e0000 00010000 "qspi-rootfs"
> mtd4: 00400000 00010000 "qspi-bitstream"
> mtd5: 01000000 00010000 "qspi-test"
>
>
> Error from serial:
> [    1.299518] VFS: Cannot open root device "ubi0:test" or
> unknown-block(0,0): error -19
> [    1.307335] Please append a correct "root=" boot option; here are the
> available partitions:
> [    1.315669] 0100           32768 ram0  (driver?)
> [    1.320223] 0101           32768 ram1
> [    1.320236] mmc0: new high speed SDHC card at address e624
> [    1.329272]  (driver?)
> [    1.330804] mmcblk0: mmc0:e624 SS08G 7.40 GiB
> [    1.336256] 0102           32768 ram2
> [    1.336298]  mmcblk0: p1 p2
> [    1.342519]  (driver?)
> [    1.345075] 0103           32768 ram3  (driver?)
> [    1.349649] 1f00            1024 mtdblock0  (driver?)
> [    1.354676] 1f01            5120 mtdblock1  (driver?)
> [    1.359712] 1f02             128 mtdblock2  (driver?)
> [    1.364764] 1f03            6016 mtdblock3  (driver?)
> [    1.369780] 1f04            4096 mtdblock4  (driver?)
> [    1.374832] 1f05           16384 mtdblock5  (driver?)
> [    1.379847] b300         7761920 mmcblk0  driver: mmcblk
> [    1.385167]   b301           16384 mmcblk0p1 4975795e-01
> [    1.390437]   b302         2306054 mmcblk0p2 4975795e-02
> [    1.395732] Kernel panic - not syncing: VFS: Unable to mount root fs on
> unknown-block(0,0)
> [    1.403979] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.4.0-xilinx #1
> [    1.410396] Hardware name: Xilinx Zynq Platform
> [    1.414943] [<c001663c>] (unwind_backtrace) from [<c0013018>]
> (show_stack+0x10/0x14)
> [    1.422649] [<c0013018>] (show_stack) from [<c020f724>]
> (dump_stack+0x88/0xc8)
> [    1.429850] [<c020f724>] (dump_stack) from [<c00aa3a8>]
> (panic+0xa0/0x204)
> [    1.436715] [<c00aa3a8>] (panic) from [<c0647234>]
> (mount_block_root+0x194/0x230)
> [    1.444174] [<c0647234>] (mount_block_root) from [<c0647588>]
> (prepare_namespace+0xa8/0x1d8)
> [    1.452592] [<c0647588>] (prepare_namespace) from [<c0646e70>]
> (kernel_init_freeable+0x1e4/0x1f4)
> [    1.461448] [<c0646e70>] (kernel_init_freeable) from [<c049814c>]
> (kernel_init+0x8/0xe8)
> [    1.469518] [<c049814c>] (kernel_init) from [<c000f678>]
> (ret_from_fork+0x14/0x3c)
> [    1.477064] CPU1: stopping
> [    1.479755] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 4.4.0-xilinx #1
> [    1.486173] Hardware name: Xilinx Zynq Platform
> [    1.490705] [<c001663c>] (unwind_backtrace) from [<c0013018>]
> (show_stack+0x10/0x14)
> [    1.498423] [<c0013018>] (show_stack) from [<c020f724>]
> (dump_stack+0x88/0xc8)
> [    1.505625] [<c020f724>] (dump_stack) from [<c0014d90>]
> (ipi_cpu_stop+0x58/0x68)
> [    1.513002] [<c0014d90>] (ipi_cpu_stop) from [<c00154f8>]
> (handle_IPI+0x88/0xb0)
> [    1.520380] [<c00154f8>] (handle_IPI) from [<c000946c>]
> (gic_handle_irq+0x84/0x88)
> [    1.527931] [<c000946c>] (gic_handle_irq) from [<c0013ad4>]
> (__irq_svc+0x54/0x90)
> [    1.535390] Exception stack(0xdf469f60 to 0xdf469fa8)
> [    1.540432] 9f60: 00000001 c05a24b0 00000001 1f561000 dfbe5618 00000000
> 57c1d5b2 00000000
> [    1.548591] 9f80: 579e983a 00000000 00000000 c06884fc 00000018 df469fb0
> c005a2fc c0356748
> [    1.556743] 9fa0: 20000013 ffffffff
> [    1.560232] [<c0013ad4>] (__irq_svc) from [<c0356748>]
> (cpuidle_enter_state+0x17c/0x2b4)
> [    1.568304] [<c0356748>] (cpuidle_enter_state) from [<c005a5b8>]
> (cpu_startup_entry+0x190/0x274)
> [    1.577061] [<c005a5b8>] (cpu_startup_entry) from [<0000950c>] (0x950c)
> [    1.583658] ---[ end Kernel panic - not syncing: VFS: Unable to mount
> root fs on unknown-block(0,0)
>
> --
> _______________________________________________
> meta-xilinx mailing list
> meta-xilinx at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-xilinx
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-xilinx/attachments/20160718/580551fd/attachment.html>


More information about the meta-xilinx mailing list