[ARMedslack] DreamPlug hang
Innes Read
armedslack at innes.veryspeedy.net
Sun Aug 21 15:12:03 UTC 2011
Hi,
Newbie alert! This is my first post and first steps with the Kirkwood
ARM stuff so please go easy on me.
I've just obtained a Dreamplug device, basically a slightly upgraded
Guruplug. Following the Armedslack install instructions I get a solidly
reproducible hang on initial kernel boot. For grins I saw someone on
the list had posted a 2.6.38.7 kernel and I installed the uImage for
that onto a memory card and booted... with exactly the same result. My
uneducated guess is that there is some module that is locking the system
up (wrong/missing) and/or I've forgotten something really important!
I'm happy to provide additional data and try suggestions out, in fact it
would be a great learning experience on how the initial kernel stuff
works. I've pasted a failing boot below, and following that is a
working one using the kernel supplied with the device. Here's the
failing boot from the U-Boot prompt. The uImage file is on a FAT16
partition, /dev/sdb1, and the uinitrd is the same place and also copied
to the second ext2 partition, /dev/sdb2 (or in RAM if doing TFTP):
run bootcmd_sdb
(Re)start USB...
USB: Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... 4 USB Device(s) found
scanning bus for storage devices... 2 Storage Device(s) found
reading uImage
2024580 bytes read
## Booting kernel from Legacy Image at 06400000 ...
Image Name: Linux-2.6.38.7-kirkwood
Created: 2011-05-26 7:29:53 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2024516 Bytes = 1.9 MiB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
[ 0.000000] Linux version 2.6.38.7-kirkwood (root at slackware) (gcc
version 4.5.2 (GCC) ) #1 PREEMPT Thu May 26 08:29:19 BST 2011
[ 0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE),
cr=00053977
[ 0.000000] CPU: VIVT data cache, VIVT instruction cache
[ 0.000000] Machine: Marvell GuruPlug Reference Board
[ 0.000000] Memory policy: ECC disabled, Data cache writeback
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on.
Total pages: 130048
[ 0.000000] Kernel command line: console=ttyS0,115200 root=/dev/sdb2
panic=10 rootwait
[ 0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144
bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072
bytes)
[ 0.000000] Memory: 512MB = 512MB total
[ 0.000000] Memory: 515308k/515308k available, 8980k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] DMA : 0xffc00000 - 0xffe00000 ( 2 MB)
[ 0.000000] vmalloc : 0xe0800000 - 0xfe800000 ( 480 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
[ 0.000000] modules : 0xbf000000 - 0xc0000000 ( 16 MB)
[ 0.000000] .init : 0xc0008000 - 0xc0029000 ( 132 kB)
[ 0.000000] .text : 0xc0029000 - 0xc03ce968 (3735 kB)
[ 0.000000] .data : 0xc03d0000 - 0xc03f7af8 ( 159 kB)
[ 0.000000] Preemptable hierarchical RCU implementation.
[ 0.000000] RCU-based detection of stalled CPUs is disabled.
[ 0.000000] Verbose stalled-CPUs detection is disabled.
[ 0.000000] NR_IRQS:114
[ 0.000000] sched_clock: 32 bits at 200MHz, resolution 5ns, wraps
every 21474ms
[ 0.000000] Console: colour dummy device 80x30
[ 3.656806] Calibrating delay loop... 1192.75 BogoMIPS (lpj=5963776)
[ 3.896687] pid_max: default: 32768 minimum: 301
[ 3.896820] Security Framework initialized
[ 3.896892] Mount-cache hash table entries: 512
[ 3.897193] Initializing cgroup subsys ns
[ 3.897205] ns_cgroup deprecated: consider using the 'clone_children'
flag without the ns_cgroup.
[ 3.897218] Initializing cgroup subsys cpuacct
[ 3.897233] Initializing cgroup subsys devices
[ 3.897242] Initializing cgroup subsys freezer
[ 3.897251] Initializing cgroup subsys net_cls
[ 3.897280] CPU: Testing write buffer coherency: ok
[ 3.899729] print_constraints: dummy:
[ 3.899900] NET: Registered protocol family 16
[ 3.901086] Kirkwood: MV88F6281-A1, TCLK=200000000.
[ 3.901099] Feroceon L2: Cache support initialised.
[ 3.910270] bio: create slab <bio-0> at 0
[ 3.911024] vgaarb: loaded
[ 3.912520] Switching to clocksource orion_clocksource
[ 3.916683] Switched to NOHz mode on CPU #0
[ 3.931135] NET: Registered protocol family 2
[ 3.931348] IP route cache hash table entries: 4096 (order: 2, 16384
bytes)
[ 3.932062] TCP established hash table entries: 16384 (order: 5,
131072 bytes)
[ 3.932415] TCP bind hash table entries: 16384 (order: 4, 65536 bytes)
[ 3.933112] TCP: Hash tables configured (established 16384 bind 16384)
[ 3.933125] TCP reno registered
[ 3.933138] UDP hash table entries: 256 (order: 0, 4096 bytes)
[ 3.933161] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[ 3.933454] NET: Registered protocol family 1
[ 3.934652] audit: initializing netlink socket (disabled)
[ 3.934688] type=2000 audit(0.270:1): initialized
[ 3.993557] VFS: Disk quotas dquot_6.5.2
[ 3.993672] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 3.993781] JFFS2 version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat,
Inc.
[ 3.994168] msgmni has been set to 1006
[ 3.995000] Block layer SCSI generic (bsg) driver version 0.4 loaded
(major 253)
[ 3.995015] io scheduler noop registered
[ 3.995024] io scheduler deadline registered
[ 3.995084] io scheduler cfq registered (default)
[ 4.170023] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[ 4.191940] serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
[ 4.565649] console [ttyS0] enabled
[ 4.577548] brd: module loaded
The system locks up absolutely solid at this point, every time, whether
I boot with the 2.6.38.7 kernel as above or if I boot, via TFTP, the
install kernel from Slackware 13.37. For comparison, here's the boot
from the stock kernel that comes with the Dreamplug:
U-Boot 2011.06-02334-g8f495d9-dirty (Mar 28 2011 - 05:21:06)
Marvell-DreamPlug
SoC: Kirkwood 88F6281_A0
DRAM: 512 MiB
SF: Detected MX25L1606 with page size 256, total 1 MiB
In: serial
Out: serial
Err: serial
Net: egiga0, egiga1
88E1121 Initialized on egiga0
88E1121 Initialized on egiga1
Hit any key to stop autoboot: 0
Marvell>> printenv
baudrate=115200
x_bootcmd_ethernet=ping 192.168.2.1
x_bootcmd_usb=usb start
x_bootcmd_kernel=fatload usb 0 0x6400000 uImage
x_bootargs=console=ttyS0,115200
x_bootargs_root=root=/dev/sda2 rootdelay=10
ethact=egiga0
ethaddr=F0:AD:4E:00:7B:4B
eth1addr=F0:AD:4E:00:7B:4C
ipaddr=192.168.1.14
serverip=192.168.1.13
arcNumber=2659
mainlineLinux=yes
bootdelay=10
bootcmd_sdb=setenv bootargs console=ttyS0,115200 root=/dev/sdb2 panic=10
rootwait; usb start; run boot_sdb;
boot_sdb=fatload usb 1 0x6400000 uImage; bootm 0x6400000;
bootcmd_sda=${bootcmd_eth}; ${x_bootcmd_usb}; ${x_bootcmd_kernel};
setenv bootargs ${x_bootargs} ${x_bootargs_root}; bootm 0x6400000;
bootcmd_eth=setenv ethact egiga0; ${x_bootcmd_ethernet}; setenv ethact
egiga1; ${x_bootcmd_ethernet}
clear_kernel_in_mem=echo Purging kernel in memory; mw 0x6400000 0x0 0x300000
bootcmd=run clear_kernel_in_mem; run bootcmd_sdb; run bootcmd_sda
stdin=serial
stdout=serial
stderr=serial
Environment size: 940/4092 bytes
Marvell>> run bootcmd_sda
(Re)start USB...
USB: Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... 4 USB Device(s) found
scanning bus for storage devices... 2 Storage Device(s) found
reading uImage
2712400 bytes read
## Booting kernel from Legacy Image at 06400000 ...
Image Name: Linux-2.6.33.6
Created: 2011-02-08 8:18:48 UTC
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2712336 Bytes = 2.6 MiB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Linux version 2.6.33.6 (root at localhost.localdomain) (gcc version 4.2.1)
#1 PREEMPT Tue Feb 8 03:18:41 EST 2011
CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053977
CPU: VIVT data cache, VIVT instruction cache
Machine: Marvell GuruPlug Reference Board
Memory policy: ECC disabled, Data cache writeback
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048
Kernel command line: console=ttyS0,115200 root=/dev/sda2 rootdelay=10
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 256MB 256MB = 512MB total
Memory: 513408KB available (4832K code, 862K data, 140K init, 0K highmem)
SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Hierarchical RCU implementation.
NR_IRQS:114
Console: colour dummy device 80x30
Calibrating delay loop... 1192.75 BogoMIPS (lpj=5963776)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
Kirkwood: MV88F6281-A1, TCLK=200000000.
Feroceon L2: Cache support initialised.
bio: create slab <bio-0> at 0
vgaarb: loaded
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
cfg80211: Using static regulatory domain info
cfg80211: Regulatory domain: 00
(start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
(2402000 KHz - 2472000 KHz @ 40000 KHz), (600 mBi, 2000 mBm)
(2457000 KHz - 2482000 KHz @ 20000 KHz), (600 mBi, 2000 mBm)
(2474000 KHz - 2494000 KHz @ 20000 KHz), (600 mBi, 2000 mBm)
(5170000 KHz - 5250000 KHz @ 40000 KHz), (600 mBi, 2000 mBm)
(5735000 KHz - 5835000 KHz @ 40000 KHz), (600 mBi, 2000 mBm)
cfg80211: Calling CRDA to update world regulatory domain
Switching to clocksource orion_clocksource
NET: Registered protocol family 2
IP route cache hash table entries: 4096 (order: 2, 16384 bytes)
TCP established hash table entries: 16384 (order: 5, 131072 bytes)
TCP bind hash table entries: 16384 (order: 4, 65536 bytes)
TCP: Hash tables configured (established 16384 bind 16384)
TCP reno registered
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
JFS: nTxBlock = 4012, nTxLock = 32102
msgmni has been set to 1003
alg: No test for stdrng (krng)
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 33) is a 16550A
console [ttyS0] enabled
brd: module loaded
loop: module loaded
No NAND device found.
MV-643xx 10/100/1000 ethernet driver version 1.4
mv643xx_eth smi: probed
net eth0: port 0 with MAC address f0:ad:4e:00:7b:4b
net eth1: port 0 with MAC address f0:ad:4e:00:7b:4c
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
orion-ehci orion-ehci.0: Marvell Orion EHCI
orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1
orion-ehci orion-ehci.0: irq 19, io mem 0xf1050000
orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver ums-datafab
usbcore: registered new interface driver ums-freecom
usbcore: registered new interface driver ums-jumpshot
usbcore: registered new interface driver ums-sddr09
usbcore: registered new interface driver ums-sddr55
mice: PS/2 mouse device common for all mice
rtc-mv rtc-mv: rtc core: registered rtc-mv as rtc0
i2c /dev entries driver
cpuidle: using governor ladder
cpuidle: using governor menu
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
mmc0: mvsdio driver initialized, lacking card detect (fall back to polling)
Registered led device: guruplug:red:health
Registered led device: guruplug:green:health
Registered led device: guruplug:red:wmode
Registered led device: guruplug:green:wmode
mv_xor_shared mv_xor_shared.0: Marvell shared XOR driver
mv_xor_shared mv_xor_shared.1: Marvell shared XOR driver
mv_xor mv_xor.0: Marvell XOR: ( xor cpy )
mmc0: new high speed SDIO card at address 0001
mv_xor mv_xor.1: Marvell XOR: ( xor fill cpy )
mv_xor mv_xor.2: Marvell XOR: ( xor cpy )
mv_xor mv_xor.3: Marvell XOR: ( xor fill cpy )
usbcore: registered new interface driver hiddev
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
oprofile: using timer interrupt.
TCP cubic registered
NET: Registered protocol family 17
lib80211: common routines for IEEE802.11 drivers
rtc-mv rtc-mv: setting system clock to 2011-08-21 14:12:27 UTC (1313935947)
Waiting 10sec before mounting root device...
usb 1-1: new high speed USB device using orion-ehci and address 2
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 4 ports detected
usb 1-1.1: new high speed USB device using orion-ehci and address 3
scsi0 : usb-storage 1-1.1:1.0
usb 1-1.4: new full speed USB device using orion-ehci and address 4
input: C-Media USB Headphone Set as
/devices/platform/orion-ehci.0/usb1/1-1/1-1.4/1-1.4:1.3/input/input0
generic-usb 0003:0D8C:000C.0001: input: USB HID v1.00 Device [C-Media
USB Headphone Set ] on usb-orion-ehci.0-1.4/input3
scsi 0:0:0:0: Direct-Access Generic STORAGE DEVICE 9910 PQ: 0 ANSI: 0
sd 0:0:0:0: Attached scsi generic sg0 type 0
scsi 0:0:0:1: Direct-Access Generic STORAGE DEVICE 9910 PQ: 0 ANSI: 0
sd 0:0:0:0: [sda] 3842048 512-byte logical blocks: (1.96 GB/1.83 GiB)
sd 0:0:0:1: Attached scsi generic sg1 type 0
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Assuming drive cache: write through
sd 0:0:0:1: [sdb] 16121856 512-byte logical blocks: (8.25 GB/7.68 GiB)
sd 0:0:0:1: [sdb] Write Protect is off
sd 0:0:0:1: [sdb] Assuming drive cache: write through
sd 0:0:0:0: [sda] Assuming drive cache: write through
sda: sda1 sda2
sda: p2 size 3653412 exceeds device capacity, limited to end of disk
sd 0:0:0:1: [sdb] Assuming drive cache: write through
sdb:
sd 0:0:0:0: [sda] Assuming drive cache: write through
sd 0:0:0:0: [sda] Attached SCSI removable disk
sdb1 sdb2
sd 0:0:0:1: [sdb] Assuming drive cache: write through
sd 0:0:0:1: [sdb] Attached SCSI removable disk
EXT3-fs (sda2): warning: maximal mount count reached, running e2fsck is
recommended
kjournald starting. Commit interval 5 seconds
EXT3-fs (sda2): using internal journal
EXT3-fs (sda2): mounted filesystem with writeback data mode
VFS: Mounted root (ext3 filesystem) on device 8:2.
Freeing init memory: 140K
[33m*[39;49m Filesystem type 'fusectl' is not supported. Skipping mount.
* Setting preliminary keymap... [80G
[74G[ OK ]
* Starting kernel event manager... [80G
[74G[ OK ]
* Loading hardware drivers... [80G Bluetooth: Core ver 2.15
NET: Registered protocol family 31
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
sata_mv sata_mv.0: version 1.28
sata_mv sata_mv.0: slots 32 ports 1
scsi1 : sata_mv
libertas_sdio: Libertas SDIO driver
ata1: SATA max UDMA/133 irq 21
libertas_sdio: Copyright Pierre Ossman
libertas_sdio mmc0:0001:1: firmware: requesting sd8688_helper.bin
ata1: SATA link down (SStatus 0 SControl F300)
libertas: can't load helper firmware
libertas: failed to load helper firmware
libertas_sdio: probe of mmc0:0001:1 failed with error -2
Bluetooth: vendor=0x2df, device=0x9105, class=255, fn=2
btmrvl_sdio mmc0:0001:2: firmware: requesting sd8688_helper.bin
btmrvl_sdio_download_helper: request_firmware(helper) failed, error code
= -2
btmrvl_sdio_download_fw: Failed to download helper!
btmrvl_sdio_probe: Downloading firmware failed!
eth1: link up, 100 Mb/s, full duplex, flow control disabled
uap_probe: vendor=0x02DF device=0x9104 class=0 function=1
uap_sdio mmc0:0001:1: firmware: requesting mrvl/helper_sd.bin
uap_sdio mmc0:0001:1: firmware: requesting mrvl/sd8688_ap.bin
UAP FW is active
usbcore: registered new interface driver snd-usb-audio
kjournald starting. Commit interval 5 seconds
EXT3-fs (sdb2): using internal journal
EXT3-fs (sdb2): mounted filesystem with writeback data mode
NET: Registered protocol family 10
ADDRCONF(NETDEV_UP): eth0: link is not ready
[74G[ OK ]
* Loading kernel modules... [80G * Loading manual drivers...
[80G
[74G[ OK ]
* Setting kernel variables (/etc/sysctl.conf)... [80G
[74G[ OK ]
* Setting kernel variables (/etc/sysctl.d/10-console-messages.conf)...
[80G
[74G[ OK ]
* Setting kernel variables (/etc/sysctl.d/10-network-security.conf)...
[80G
[74G[ OK ]
* Activating swap... [80G
[74G[ OK ]
* Starting early crypto disks... [80G
[74G[ OK ]
* Starting remaining crypto disks... [80G
[74G[ OK ]
* Checking file systems... [80G fsck 1.41.4 (27-Jan-2009)
[74G[ OK ]
* Mounting local filesystems... [80G
[74G[ OK ]
* Activating swapfile swap... [80G
[74G[ OK ]
* Configuring network interfaces... [80G
[74G[ OK ]
* Setting up console font and keymap... [80G
[74G[ OK ]
* Starting system log daemon... [80G
[74G[ OK ]
* Starting kernel log daemon... [80G
[74G[ OK ]
* Starting system message bus dbus Ubuntu 9.04 DreamPlug ttyS0
Cheers, Innes.
More information about the ARMedslack
mailing list