Hello,
I am trying to boot the cubietruck with a minimal ramdisk. However, it seems to hang at
"Starting kernel..." whenever I pass bootz a ramdisk load address.
I have built the latest cubietruck config from here:
https://github.com/cubieboard/u-boot-sunxi
Here is the boot log: (bootz 0x40008000 0x42000000 0x41000000)
U-Boot 2014.01-09730-gb5bd4c9 (Mar 09 2014 - 05:55:17) Allwinner Technology
CPU: Allwinner A20 (SUN7I)
Board: Cubietruck
I2C: ready
DRAM: 2 GiB
WARNING: Caches not enabled
MMC: SUNXI SD/MMC: 0
*** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Net: mii0
Warning: failed to set MAC address
Hit any key to stop autoboot: 0
sun7i# setenv ethaddr 00:11:22:33:44:a3
sun7i# setenv autoload no
sun7i# dhcp
Waiting for PHY auto negotiation to complete... done
ENET Speed is 1000 Mbps - FULL duplex connection
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 192.168.1.218
sun7i# setenv serverip 192.168.1.1
sun7i# tftp 0x40008000 192.168.1.1:cubie/zImage
Using mii0 device
TFTP from server 192.168.1.1; our IP address is 192.168.1.218
Filename 'cubie/zImage'.
Load address: 0x40008000
Loading: #################################################################
#########################################################
2.7 MiB/s
done
Bytes transferred = 1779480 (1b2718 hex)
sun7i# tftp 0x42000000 192.168.1.1:cubie/buildroot.cpio.gz
Using mii0 device
TFTP from server 192.168.1.1; our IP address is 192.168.1.218
Filename 'cubie/buildroot.cpio.gz'.
Load address: 0x42000000
Loading: ############################################
2.7 MiB/s
done
Bytes transferred = 642602 (9ce2a hex)
sun7i# tftp 0x41000000 192.168.1.1:cubie/sun7i-a20-cubietruck.dtb
Using mii0 device
TFTP from server 192.168.1.1; our IP address is 192.168.1.218
Filename 'cubie/sun7i-a20-cubietruck.dtb'.
Load address: 0x41000000
Loading: #
2 MiB/s
done
Bytes transferred = 12304 (3010 hex)
sun7i# setenv bootargs console=ttyS0,115200 debug earlyprintk rw root=/dev/ram0
rw
sun7i# bootz 0x40008000 0x42000000 0x41000000
Kernel image @ 0x40008000 [ 0x000000 - 0x1b2718 ]
## Loading init Ramdisk from Legacy Image at 42000000 ...
Image Name:
Created: 2014-03-09 14:53:18 UTC
Image Type: ARM Linux RAMDisk Image (uncompressed)
Data Size: 642538 Bytes = 627.5 KiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 41000000
Booting using the fdt blob at 0x41000000
Loading Ramdisk to bfdc9000, end bfe65dea ... OK
Loading Device Tree to 40ff9000, end 40fff00f ... OK
Starting kernel ...
Now if I boot with bootz 0x40008000 - 0x41000000 everything works fine:
U-Boot 2014.01-09730-gb5bd4c9 (Mar 09 2014 - 05:55:17) Allwinner Technology
CPU: Allwinner A20 (SUN7I)
Board: Cubietruck
I2C: ready
DRAM: 2 GiB
WARNING: Caches not enabled
MMC: SUNXI SD/MMC: 0
*** Warning - bad CRC, using default environment
In: serial
Out: serial
Err: serial
Net: mii0
Warning: failed to set MAC address
Hit any key to stop autoboot: 0
sun7i# setenv ethaddr 00:11:22:33:44:a3
sun7i# setenv autoload no
sun7i# dhcp
Waiting for PHY auto negotiation to complete.. done
ENET Speed is 1000 Mbps - FULL duplex connection
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 192.168.1.218
sun7i# setenv serverip 192.168.1.1
sun7i# tftp 0x40008000 192.168.1.1:cubie/zImage
Using mii0 device
TFTP from server 192.168.1.1; our IP address is 192.168.1.218
Filename 'cubie/zImage'.
Load address: 0x40008000
Loading: #################################################################
#########################################################
2.7 MiB/s
done
Bytes transferred = 1779480 (1b2718 hex)
sun7i# tftp 0x42000000 192.168.1.1:cubie/buildroot.cpio.gz
Using mii0 device
TFTP from server 192.168.1.1; our IP address is 192.168.1.218
Filename 'cubie/buildroot.cpio.gz'.
Load address: 0x42000000
Loading: ############################################
2.7 MiB/s
done
Bytes transferred = 642602 (9ce2a hex)
sun7i# tftp 0x41000000 192.168.1.1:cubie/sun7i-a20-cubietruck.dtb
Using mii0 device
TFTP from server 192.168.1.1; our IP address is 192.168.1.218
Filename 'cubie/sun7i-a20-cubietruck.dtb'.
Load address: 0x41000000
Loading: #
2 MiB/s
done
Bytes transferred = 12304 (3010 hex)
sun7i# setenv bootargs console=ttyS0,115200 debug earlyprintk rw root=/dev/ram0
rw
sun7i# bootz 0x40008000 - 0x41000000
Kernel image @ 0x40008000 [ 0x000000 - 0x1b2718 ]
## Flattened Device Tree blob at 41000000
Booting using the fdt blob at 0x41000000
Loading Device Tree to 40ff9000, end 40fff00f ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 3.14.0-rc5-00287-gca62eec
(buildsl...@vps-1147942-19228.manage.myhosting.com) (gcc version 4.7.1
(Ubuntu/Linaro 4.7.1-5ubuntu1~ppa1) ) #1 SMP Sat Mar 8 20:49:39 EST 2014
[ 0.000000] CPU: ARMv7 Processor [410fc074] revision 4 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing
instruction cache
[ 0.000000] Machine model: Cubietech Cubietruck
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] On node 0 totalpages: 524288
[ 0.000000] free_area_init_node: node 0, pgdat c0351040, node_mem_map
ee7fb000
[ 0.000000] Normal zone: 1520 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 194560 pages, LIFO batch:31
[ 0.000000] HighMem zone: 2576 pages used for memmap
[ 0.000000] HighMem zone: 329728 pages, LIFO batch:31
[ 0.000000] PERCPU: Embedded 5 pages/cpu @ee7db000 s6592 r0 d13888 u32768
[ 0.000000] pcpu-alloc: s6592 r0 d13888 u32768 alloc=8*4096
[ 0.000000] pcpu-alloc: [0] 0 [0] 1
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total
pages: 522768
[ 0.000000] Kernel command line: console=ttyS0,115200 debug earlyprintk rw
root=/dev/ram0 rw
[ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Memory: 2076248K/2097152K available (2544K kernel code, 150K
rwdata, 496K rodata, 170K init, 216K bss, 20904K reserved, 1318912K highmem)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xf0000000 - 0xff000000 ( 240 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xef800000 ( 760 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] .text : 0xc0008000 - 0xc03004fc (3042 kB)
[ 0.000000] .init : 0xc0301000 - 0xc032b9c0 ( 171 kB)
[ 0.000000] .data : 0xc032c000 - 0xc0351b00 ( 151 kB)
[ 0.000000] .bss : 0xc0351b08 - 0xc0387b0c ( 217 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
[ 0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000026] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every
178956969942ns
[ 0.000156] sched_clock: 32 bits at 160MHz, resolution 6ns, wraps every
26843545593ns
[ 0.000309] Console: colour dummy device 80x30
[ 0.000343] Calibrating delay loop... 1915.28 BogoMIPS (lpj=9576448)
[ 0.060072] pid_max: default: 32768 minimum: 301
[ 0.060248] Mount-cache hash table entries: 512
[ 0.060876] CPU: Testing write buffer coherency: ok
[ 0.061163] /cpus/cpu@0 missing clock-frequency property
[ 0.061177] /cpus/cpu@1 missing clock-frequency property
[ 0.061189] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.061221] Setting up static identity map for 0x40269d20 - 0x40269d78
[ 0.062171] CPU1: failed to boot: -38
[ 0.062200] Brought up 1 CPUs
[ 0.062206] SMP: Total of 1 processors activated.
[ 0.062212] CPU: All CPU(s) started in SVC mode.
[ 0.062798] devtmpfs: initialized
[ 0.066438] VFP support v0.3: implementor 41 architecture 2 part 30 variant
7 rev 4
[ 0.066644] pinctrl core: initialized pinctrl subsystem
[ 0.066838] regulator-dummy: no parameters
[ 0.067050] NET: Registered protocol family 16
[ 0.067303] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.071596] bio: create slab <bio-0> at 0
[ 0.072828] Switched to clocksource timer
[ 0.079137] NET: Registered protocol family 2
[ 0.079646] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.079723] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[ 0.079844] TCP: Hash tables configured (established 8192 bind 8192)
[ 0.079920] TCP: reno registered
[ 0.079935] UDP hash table entries: 512 (order: 2, 16384 bytes)
[ 0.079989] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[ 0.080243] NET: Registered protocol family 1
[ 0.080637] RPC: Registered named UNIX socket transport module.
[ 0.080648] RPC: Registered udp transport module.
[ 0.080655] RPC: Registered tcp transport module.
[ 0.080660] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.081559] futex hash table entries: 512 (order: 3, 32768 bytes)
[ 0.081955] Clockevents: could not switch to one-shot mode: dummy_timer is
not functional.
[ 0.081973] Could not switch to high resolution mode on CPU 0
[ 0.082169] bounce pool size: 64 pages
[ 0.089719] Block layer SCSI generic (bsg) driver version 0.4 loaded (major
253)
[ 0.089736] io scheduler noop registered
[ 0.089743] io scheduler deadline registered
[ 0.089919] io scheduler cfq registered (default)
[ 0.091688] sunxi-pinctrl 1c20800.pinctrl: initialized sunXi PIO driver
[ 0.132262] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.154795] 1c28000.serial: ttyS0 at MMIO 0x1c28000 (irq = 33, base_baud =
1500000) is a U6_16550A
[ 0.634967] console [ttyS0] enabled
[ 0.639260] mousedev: PS/2 mouse device common for all mice
[ 0.645127] i2c /dev entries driver
[ 0.650160] sunxi-wdt 1c20c90.watchdog: Watchdog enabled (timeout=16 sec,
nowayout=0)
[ 0.659334] TCP: cubic registered
[ 0.662688] NET: Registered protocol family 17
[ 0.667215] Registering SWP/SWPB emulation handler
[ 0.672446] regulator-dummy: disabling
[ 0.677235] List of all partitions:
[ 0.680728] No filesystem could mount root, tried:
[ 0.685665] Kernel panic - not syncing: VFS: Unable to mount root fs on
unknown-block(0,0)
[ 0.693922] CPU: 0 PID: 1 Comm: swapper/0 Not tainted
3.14.0-rc5-00287-gca62eec #1
[ 0.701509] [<c00133ac>] (unwind_backtrace) from [<c0010f80>]
(show_stack+0x10/0x14)
[ 0.709249] [<c0010f80>] (show_stack) from [<c0265a8c>]
(dump_stack+0x70/0x8c)
[ 0.716467] [<c0265a8c>] (dump_stack) from [<c02636f8>] (panic+0x90/0x1e8)
[ 0.723340] [<c02636f8>] (panic) from [<c0302188>]
(mount_block_root+0x1f4/0x230)
[ 0.730819] [<c0302188>] (mount_block_root) from [<c03022b8>]
(mount_root+0xf4/0x114)
[ 0.738643] [<c03022b8>] (mount_root) from [<c0302404>]
(prepare_namespace+0x12c/0x190)
[ 0.746641] [<c0302404>] (prepare_namespace) from [<c0301db4>]
(kernel_init_freeable+0x180/0x1c8)
[ 0.755506] [<c0301db4>] (kernel_init_freeable) from [<c0262bd8>]
(kernel_init+0x8/0xec)
[ 0.763591] [<c0262bd8>] (kernel_init) from [<c000e278>]
(ret_from_fork+0x14/0x3c)
I use this buildroot ramdisk on many other platforms, so it should work on the
cubie. Anyone else ran into this?
Cheers,