by sambul13 » Mon Oct 29, 2012 5:34 pm
$this->bbcode_second_pass_quote('Kurlon', 'I')f you want to boot USB with SATA installed, you'll need to tweak the uboot env to account for the different device ID the USB drive will be assigned, so instead of setting the root entry to /dev/sda1, it'll likely be /dev/sdb1. The default boot env already preferences booting USB first so you won't have to alter the boot order.
Did you actually try that? If you did, can you be MORE specific, which env var you corrected before it booted like you said and mounted the Thumb's fs, not SATA'a?
I corrected
usb_root=/dev/sdb1 , because kernel assigns /dev/sdb to the thumb when SATA (with or without rootfs) is present. After that, if only USB thumb is hooked, kernel boots OK while still assigning it /dev/sda1 regardless of the Uboot setting. If SATA media collection drive without rootfs is also hooked, here we go with friendly Netconsole:
$this->bbcode_second_pass_code('', '[ 27.888554] List of all partitions:
[ 27.892109] 1f00 1024 mtdblock0 (driver?)
[ 27.897229] 1f01 4096 mtdblock1 (driver?)
[ 27.902356] 1f02 32768 mtdblock2 (driver?)
[ 27.907472] 1f03 224256 mtdblock3 (driver?)
[ 27.912593] 0800 58605120 sda driver: sd
[ 27.917276] 0801 26836551 sda1 00000000-0000-0000-0000-000000000000
[ 27.924410] 0802 4200997 sda2 00000000-0000-0000-0000-000000000000
[ 27.931543] 0803 27567540 sda3 00000000-0000-0000-0000-000000000000
[ 27.938670] 0810 3954688 sdb driver: sd
[ 27.943348] 0811 2621440 sdb1 00000000-0000-0000-0000-000000000000
[ 27.950483] 0812 131072 sdb2 00000000-0000-0000-0000-000000000000
[ 27.957597] 0813 1201152 sdb3 00000000-0000-0000-0000-000000000000
[ 27.964725] No filesystem could mount root, tried: ext2
[ 27.970134] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1)
[ 27.978474] [<c000d074>] (unwind_backtrace+0x0/0xe0) from [<c043603c>] (panic+0x80/0x1dc)
[ 27.986707] [<c043603c>] (panic+0x80/0x1dc) from [<c05c0cec>] (mount_block_root+0x234/0x284)
[ 27.995195] [<c05c0cec>] (mount_block_root+0x234/0x284) from [<c05c0ff8>] (prepare_namespace+0x15c/0x1bc)
[ 28.004812] [<c05c0ff8>] (prepare_namespace+0x15c/0x1bc) from [<c05c0974>] (kernel_init+0x1bc/0x1fc)
[ 28.013995] [<c05c0974>] (kernel_init+0x1bc/0x1fc) from [<c0009588>] (kernel_thread_exit+0x0/0x8)')
If SATA has rootfs, it will boot it and mount SATA volume as rootfs, as reported
here, despite Uboot tells to boot from USB. I don't need rootfs on SATA drive, and most users either, since 90% of Plugs are used mostly for media streaming a few hours/day. On GFN current kernel always assigns SATA drive /dev/sda1, while ignoring Uboot params to continue boot from USB thumb /dev/sdb1 . But... may be we need to correct a different Uboot var, like custom_parameters, etc.
$this->bbcode_second_pass_quote('pepedog', 'M')aybe a similar thing looking for uImage, then using the found device to say "that's my rootfs" and "load that uImage"?
Here is how Debian does it, when installed on a USB thumb hooked to GFN with SATA drive attached:
So we're back to Square1, namely ArchLinux ARM bug reports are always immediately closed without any attempt to fix, while claiming the solution exists, and generally any solutions are available via forum, but forgetting to point to it. I wonder, if Linux bugs were all fixed upstream through denial they exist and referral to mailing lists, how would ArchLinux progress look like?