Quantcast
Channel: Linux Device Hacking - uBoot
Viewing all articles
Browse latest Browse all 903

Netgear Stora: EHCI timed out on TD when loading uInitrd (3 replies)

$
0
0
Hi bodhi,

I have successfully installed the latest u-boot on my Netgear Stora, and have sucessfully booted debian 8 wheezy from a 2GB industrial grade USB stick from HGST. Thanks a lot for your effort and instructions!

However, repeating the same procedure using a 8GB commercial grade USB stick from Patriot, u-boot fails loading uInitrd. I find this rather strange since u-boot loads uImage (3166745 bytes) just fine immediately before failing to load uInitrd (7179935 bytes).

This is the complete boot sequense:
U-Boot 2016.05-tld-1 (Jun 12 2016 - 13:45:22 -0700)
Netgear-MS2110

SoC:   Kirkwood 88F6281_A1
DRAM:  128 MiB
WARNING: Caches not enabled
NAND:  256 MiB
In:    serial
Out:   serial
Err:   serial
Net:   egiga0
PHY reset timed out
88E1116 Initialized on egiga0
Hit any key to stop autoboot:  0
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 2 USB Device(s) found
       scanning usb for storage devices... 1 Storage Device(s) found

Reset IDE: ide_preinit failed

Partition Map for USB device 0  --   Partition Type: DOS

Part    Start Sector    Num Sectors     UUID            Type
  1     2048            15122432        b138172b-01     83
loading envs from usb 0 ...
** File not found /boot/uEnv.txt **

IDE device 0 not available
3166745 bytes read in 350 ms (8.6 MiB/s)
EHCI timed out on TD - token=0xd8d80
EHCI timed out on TD - token=0x80008d80
EHCI timed out on TD - token=0x128d80
EHCI timed out on TD - token=0x80008d80
EHCI timed out on TD - token=0x20008d80
EHCI timed out on TD - token=0x80008d80
EHCI timed out on TD - token=0x128d80
EHCI timed out on TD - token=0x80008d80
EHCI timed out on TD - token=0x20008d80
EHCI timed out on TD - token=0x80008d80
EHCI timed out on TD - token=0x128d80
EHCI timed out on TD - token=0x80008d80
 ** ext4fs_devread read error - block
## Booting kernel from Legacy Image at 00800000 ...
   Image Name:   Linux-4.4.0-kirkwood-tld-1
   Created:      2017-05-08  11:15:07 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3166681 Bytes = 3 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK

Starting kernel ...

Uncompressing Linux...

As expected, without a root file system, the linux kernel panics:

[    3.639815] rtc-pcf8563 0-0051: setting system clock to 1970-01-02 00:39:42 UTC (88782)
[    3.650259] Waiting 5 sec before mounting root device...
[    8.664286] VFS: Cannot open root device "sda1" or unknown-block(0,0): error -19
[    8.671719] Please append a correct "root=" boot option; here are the available partitions:
[    8.680182] 1f00            1024 mtdblock0  (driver?)
[    8.685329] 1f01            4096 mtdblock1  (driver?)
[    8.690418] 1f02          257024 mtdblock2  (driver?)
[    8.695572] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    8.703882] CPU: 0 PID: 1 Comm: swapper Not tainted 4.4.0-kirkwood-tld-1 #1
[    8.710869] Hardware name: Marvell Kirkwood (Flattened Device Tree)
[    8.717203] [<c0016784>] (unwind_backtrace) from [<c00129f8>] (show_stack+0x10/0x14)
[    8.724991] [<c00129f8>] (show_stack) from [<c00c2200>] (panic+0x80/0x214)
[    8.731908] [<c00c2200>] (panic) from [<c07d9280>] (mount_block_root+0x204/0x24c)
[    8.739438] [<c07d9280>] (mount_block_root) from [<c07d93b4>] (mount_root+0xec/0x118)
[    8.747311] [<c07d93b4>] (mount_root) from [<c07d9504>] (prepare_namespace+0x124/0x184)
[    8.755359] [<c07d9504>] (prepare_namespace) from [<c07d8e9c>] (kernel_init_freeable+0x208/0x258)
[    8.764287] [<c07d8e9c>] (kernel_init_freeable) from [<c05b16b4>] (kernel_init+0x8/0xe4)
[    8.772427] [<c05b16b4>] (kernel_init) from [<c000f090>] (ret_from_fork+0x14/0x24)
[    8.780039] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[   84.803920] random: nonblocking pool is initialized

The u-boot environment is
Netgear Stora> printenv
arcNumber=2743
baudrate=115200
bootcmd=run bootcmd_uenv; run bootcmd_usb; reset
bootcmd_uenv=run uenv_load; if test $uenv_loaded -eq 1; then run uenv_import; fi
bootcmd_usb=run usb_init; run set_bootargs_usb; run usb_boot;
bootdelay=5
console=ttyS0,115200
device=0:1
ethact=egiga0
ethaddr=b6:d0:5e:0f:a1:17
led_error=orange blinking
led_exit=green off
led_init=green blinking
mainlineLinux=yes
mtdids=nand0=orion_nand
mtdparts=mtdparts=orion_nand:1m(uboot),4m@1m(kernel),251m@5m(rootfs) rw
partition=nand0,2
rootdelay=5
rootfstype=ext2
set_bootargs_usb=setenv bootargs console=$console root=$usb_root rootdelay=$rootdelay rootfstype=$rootfstype $mtdparts
stderr=serial
stdin=serial
stdout=serial
uenv_import=echo importing envs ...; env import -t 0x810000
uenv_load=usb start; ide reset; setenv uenv_loaded 0; for devtype in usb ide; do for disknum in 0; do run uenv_read_disk; done; done
uenv_read=echo loading envs from $devtype $disknum ...; if load $devtype $disknum:1 0x810000 /boot/uEnv.txt; then setenv uenv_loaded 1; fi
uenv_read_disk=if $devtype part $disknum; then run uenv_read; fi
usb_boot=mw 0x800000 0 1; run usb_load_uimage; if run usb_load_uinitrd; then bootm 0x800000 0x1100000; else bootm 0x800000; fi
usb_init=usb start
usb_load_uimage=ext2load usb 0:1 0x800000 /boot/uImage
usb_load_uinitrd=ext2load usb 0:1 0x1100000 /boot/uInitrd
usb_root=/dev/sda1

Environment size: 1436/131068 bytes

In addition to its larger capasity, the Patriot "Tabi Lifestyle Series" USB stick supports USB 3.0, but if compatibility was an issue u-boot should have failed on both the uImage and uInitrd images. Right?

With the 2 GB HGST stick, u-boot reports
starting USB...
USB0:   USB EHCI 1.00
scanning bus 0 for devices... 2 USB Device(s) found
       scanning usb for storage devices... 1 Storage Device(s) found

Reset IDE: ide_preinit failed

Partition Map for USB device 0  --   Partition Type: DOS

Part    Start Sector    Num Sectors     UUID            Type
  1     2048            3909632         00091483-01     83
loading envs from usb 0 ...
** File not found /boot/uEnv.txt **

IDE device 0 not available
3154896 bytes read in 349 ms (8.6 MiB/s)
7179935 bytes read in 426 ms (16.1 MiB/s)
## Booting kernel from Legacy Image at 00800000 ...
   Image Name:   Linux-4.4.0-kirkwood-tld-1
   Created:      2016-02-19   5:55:25 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3154832 Bytes = 3 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 01100000 ...
   Image Name:   initramfs-4.4.0-kirkwood-tld-1
   Created:      2016-02-19   7:33:04 UTC
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    7179871 Bytes = 6.8 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK

Starting kernel ...

So the messages "Reset IDE: ide_preinit failed", "** File not found /boot/uEnv.txt **" and "IDE device 0 not available" can safely be ignored, but this error message puzzels me a bit:
 ** ext4fs_devread read error - block

It is true that this stick was once been formatted with ext4, but it has then been formatted both as fat32 and now ext3. Does the current u-boot always load uInitrd using ext4fs_devread() or does this error mean that the ext4 signature is somehow "sticky" on the USB stick?

It seems I'm not the first to experience this. So should I go and get a new USB stick, or have I stumbled over a bug in u-boot?

Regards,
Trond Melen

Viewing all articles
Browse latest Browse all 903

Latest Images

Trending Articles



Latest Images