[U-Boot-Users] u-boot, powerpc with device tree, initrd problem

Jerry Van Baren gerald.vanbaren at ge.com
Wed Jul 9 22:26:47 CEST 2008


Please don't top post.

John Linn wrote:
> One problem fixed, I had both CONFIG_OF_FLAT_TREE and CONFIG_OF_LIBFDT
> defined and that was causing the load of the device tree twice.

FWIIW, CONFIG_OF_FLAT_TREE has been removed as of this window.

> That didn't fix my initrd issue, but one less problem now.  The kernel
> is still not seeing the initrd image.
> 
> -- John

You might try loading your dtb and then use the "fdt chosen" command to 
create the /chosen node and the "fdt bd" command to run the 
board-specific fixups.  Do these as two separate steps and run "fdt 
print" in between to see what changes occur.

> => bootm 0x1c00000 0x1800000 0x1000000
> ## Booting image at 01c00000 ...
>    Image Name:   Linux-2.6.26-rc8
>    Image Type:   PowerPC Linux Kernel Image (gzip compressed)
>    Data Size:    1536962 Bytes =  1.5 MB
>    Load Address: 00000000
>    Entry Point:  00000000
>    Verifying Checksum ... OK
>    Uncompressing Kernel Image ... OK
> ## Current stack ends at 0x0FEA5990 => set upper limit to 0x00800000
> ## cmdline at 0x007FFF00 ... 0x007FFF3A
> bd address  = 0x0FEA5E80
> memstart    = 0x00000000
> memsize     = 0x10000000
> flashstart  = 0x00000000
> flashsize   = 0x00000000
> flashoffset = 0x00000000
> sramstart   = 0x00000000
> sramsize    = 0x00000000
> bootflags   = 0x0FEA4C88
> procfreq    =    400 MHz
> plb_busfreq =     20 MHz
> ethaddr     = 00:0A:35:01:02:03
> IP addr     = 172.16.40.227
> baudrate    =   9600 bps
> Not skipping initrd
> ## Loading RAMDisk Image at 01800000 ...
>    Image Name:
>    Image Type:   PowerPC Linux RAMDisk Image (gzip compressed)
>    Data Size:    1507104 Bytes =  1.4 MB
>    Load Address: 00000000
>    Entry Point:  00000000
>    Verifying Checksum ... OK
>    Booting using the fdt at 0x1000000
> ## initrd at 0x01800040 ... 0x0196FF5F (len=1507104=0x16FF20)
>    Loading Ramdisk to 0fd35000, end 0fea4f20 ... OK
> ## device tree at 0x01000000 ... 0x01002FFF (len=12288=0x3000)
>    Loading Device Tree to 007fc000, end 007fefff ... OK
> ## Transferring control to Linux (at address 00000000) ...
> Using Xilinx Virtex machine description
> Linux version 2.6.26-rc8 (linnj at wolfgang-pc) (gcc version 4.0.0 (DENX
> ELDK 4.1 4.0.0)) #6 PREEMPT Wed Jul 9 12
> :36:41 PDT 2008

[snip]

> i2c /dev entries driver
> Device Tree Probing 'i2c'
> d0020000.i2c #0 at 0xD0020000 mapped to 0xE1010000, irq=20
> TCP cubic registered
> NET: Registered protocol family 17
> RPC: Registered udp transport module.
> RPC: Registered tcp transport module.
> eth0: XLlTemac: Options: 0x3fa
> eth0: XLlTemac: allocating interrupt 19 for dma mode tx.
> eth0: XLlTemac: allocating interrupt 18 for dma mode rx.
> eth0: XLlTemac: speed set to 100Mb/s
> eth0: XLlTemac: Send Threshold = 24, Receive Threshold = 4
> eth0: XLlTemac: Send Wait bound = 254, Receive Wait bound = 254
> Sending DHCP requests ., OK
> IP-Config: Got DHCP answer from 149.199.109.235, my address is
> 172.16.40.12
> IP-Config: Complete:
>      device=eth0, addr=172.16.40.12, mask=255.255.255.0,
> gw=172.16.40.254,
>      host=172.16.40.12, domain=xilinx.com public.xilinx.com
> xlnx.xilinx.com public.xsj.xilinx., nis-domain=xil
> inx.com,
>      bootserver=149.199.109.235, rootserver=149.199.109.235,
> rootpath=/tmp

I don't *think* this causes problems, but your DHCP server is providing 
NFS configuration information.  Does that override the ramdisk 
configuration?

> List of all partitions:
> No filesystem could mount root, tried:  ext2 cramfs msdos vfat romfs
> Kernel panic - not syncing: VFS: Unable to mount root fs on
> unknown-block(1,0)
> Rebooting in 180 seconds..

[snip]

HTH,
gvb




More information about the U-Boot mailing list