[ELDK] AMCC Kilauea and Xenomai : IP-Config 'eth0' not found

Tim Cussins timcussins at eml.cc
Thu Jan 21 11:35:09 CET 2010

Hi Wolfgang,

On Wed, 2010-01-20 at 21:08 +0100, Wolfgang Denk wrote:
> Dear Tim Cussins,
> In message <1264012700.20959.21.camel at pc816> you wrote:
> > 
> > I've compiled a xenomai enabled kernel using the sources in
> > $ELDK_INSTALL/ppc4xx/usr/src/linux-2.6.24-xenomai. I had to cheat and
> > set ARCH=powerpc to coax it :) Does this sound reasonable? I saw it
> > mentioned here:
> Please use current code. 2.6.24 is so old that it makes no sense
> starting any work with it.

Right. git is hard at work as we speak :) I'm going to go for
DENX-v2.6.32.3 unless you say otherwise...

> > I can load the kernel using tftp, and pass the in-flash flattened device
> > tree to the bootm command. The kernel boots successfully until it
> > attempts to configure 'eth0' - and can't find it, apparently...
> > 
> >      IP-Config 'eth0' not found
> > 
> > Any thoughts on where to go from here?
> Can you please post a complete log of all commands you entered, and
> the full log of the kernel boot messages?  Please also include the
> output of the "printenv" command in U-Boot.

I've included this info as an attachment - hope that's ok. You'll see
that I've issued 2 commands: 'load_xenomai' and 'xenomai', both created
by me.

The other pair of commands you'll see in printenv, 'load_normal' and
'normal', work fine btw.

> > I've tried using dtc to compile my own dtb using kilauea.dts in the
> > kernel source tree. Same failed result. It might be worth pointing out
> > that the in-flash dtb and my tftp dtb are subtly different, but the
> > ethernet entries seem pretty much the same...
> In recent kernel versions building the device tree blob is as simple
> as "make kilauea.dtb"

Cool. Thanks for the help!

-------------- next part --------------
U-Boot 2009.08-00321-g95c44ec (Oct 08 2009 - 16:15:49)

CPU:   AMCC PowerPC 405EX Rev. D at 600 MHz (PLB=200, OPB=100, EBC=100 MHz)
       Security support
       Bootstrap Option H - Boot ROM Location I2C (Addr 0x52)
       16 kB I-Cache 16 kB D-Cache
Board: Kilauea - AMCC PPC405EX Evaluation Board
I2C:   ready
DRAM:  256 MB (ECC not enabled, 400 MHz, CL4)
NAND:  64 MiB
PCI:   Bus Dev VenId DevId Class Int
PCIE0: link is not up.
PCIE1: link is not up.
DTT1:  41 C
Net:   ppc_4xx_eth0, ppc_4xx_eth1

Type run flash_nfs_fdt to mount root filesystem over NFS

Hit any key to stop autoboot:  0 
=> printenv
nfsargs=setenv bootargs root=/dev/nfs rw nfsroot=${serverip}:${rootpath}
addip=setenv bootargs ${bootargs} ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:${netdev}:off panic=1
addtty=setenv bootargs ${bootargs} console=ttyS0,${baudrate}
net_nfs=tftp 200000 ${bootfile};run nfsargs addip addtty;bootm 200000
net_nfs_fdt=tftp 200000 ${bootfile};tftp ${fdt_addr} ${fdt_file};run nfsargs addip addtty;bootm 200000 - ${fdt_addr}
load=tftp 200000 kilauea/u-boot.bin
update=protect off fffa0000 ffffffff;era fffa0000 ffffffff;cp.b ${fileaddr} fffa0000 ${filesize};setenv filesize;saveenv
upd=run load update
nload=tftp 200000 kilauea/u-boot-nand.bin
nupdate=nand erase 0 60000;nand write 200000 0 60000;setenv filesize;saveenv
nupd=run nload nupdate
fixedip=echo Using ip address ${ipaddr}
dynip=setenv autoload n;dhcp
flash_self=run ramargs addmtd setip addip addtty;bootm ${kernel_addr} ${ramdisk_addr}
flash_nfs=run nfsargs addmtd setip addip addtty;bootm ${kernel_addr}
setip=echo Using ip address ${ipaddr}
flash_nfs_fdt=run nfsargs addmtd setip addip addtty;bootm ${kernel_addr} - ${fdt_addr}
bootcmd=run flash_self_fdt
flash_self_fdt=run ramargs addmtd setip addip addtty;bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}
ramargs=setenv bootargs ramdisk_size=65536 root=/dev/ram rw
preboot=echo;echo Type "run flash_nfs_fdt" to mount root filesystem over NFS;echo
addmtd=setenv bootargs ${bootargs} mtdparts=fc000000.nor_flash:1920k(linux),128k(dtb),28M(ramdisk),4M(jffs2),30080k(user),256k(env),384k)
load_normal=run dynip ; tftp 300000 kilauea/kilauea-normal.img
load_xenomai=run dynip ; tftp 300000 kilauea/kilauea-xenomai.img
xenomai=run nfsargs addtty addip ; bootm 300000 - ${fdt_addr}
normal=run nfsargs addtty addip ; bootm 300000
ver=U-Boot 2009.08-00321-g95c44ec (Oct 08 2009 - 16:15:49)

Environment size: 2301/16379 bytes
=> run load_xenomai 
Waiting for PHY auto negotiation to complete.. done
ENET Speed is 100 Mbps - FULL duplex connection (EMAC0)
BOOTP broadcast 1
DHCP client bound to address
Using ppc_4xx_eth0 device
TFTP from server; our IP address is
Filename 'kilauea/kilauea-xenomai.img'.
Load address: 0x300000
Loading: #################################################################
Bytes transferred = 1306487 (13ef77 hex)
=> run xenomai 
## Booting kernel from Legacy Image at 00300000 ...
   Image Name:   Linux-
   Created:      2010-01-20  16:06:31 UTC
   Image Type:   PowerPC Linux Kernel Image (gzip compressed)
   Data Size:    1306423 Bytes =  1.2 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at fc1e0000
   Booting using the fdt blob at 0xfc1e0000
   Uncompressing Kernel Image ... OK
   Loading Device Tree to 00ffb000, end 00ffff39 ... OK
Using Kilauea machine description
Linux version (timc at pc816) (gcc version 4.2.2) #1 Wed Jan 20 16:06:28 GMT 2010
Zone PFN ranges:
  DMA             0 ->    65536
  Normal      65536 ->    65536
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0:        0 ->    65536
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 65024
Kernel command line: root=/dev/nfs rw nfsroot= console=ttyS0,115200 ip=
UIC0 (32 IRQ sources) at DCR 0xc0
UIC1 (32 IRQ sources) at DCR 0xd0
UIC2 (32 IRQ sources) at DCR 0xe0
PID hash table entries: 1024 (order: 10, 4096 bytes)
clocksource: timebase mult[6aaaab] shift[22] registered
I-pipe 2.1-00: pipeline enabled.
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 256512k/262144k available (2612k kernel code, 5296k reserved, 120k data, 262k bss, 120k init)
SLUB: Genslabs=9, HWalign=32, Order=0-1, MinObjects=4, CPUs=1, Nodes=1
Mount-cache hash table entries: 512
net_namespace: 64 bytes
NET: Registered protocol family 16
NET: Registered protocol family 2
Time: timebase clocksource has been installed.
IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP reno registered
I-pipe: Domain Xenomai registered.
Xenomai: hal/powerpc started.
Xenomai: real-time nucleus v2.4.2 (One Big Rush) loaded.
Xenomai: starting native API services.
Xenomai: starting POSIX services.
Xenomai: starting RTDM services.
io scheduler noop registered
io scheduler anticipatory registered (default)
io scheduler deadline registered
io scheduler cfq registered
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled
ef600200.serial: ttyS0 at MMIO 0xef600200 (irq = 26) is a 16550A
console [ttyS0] enabled
ef600300.serial: ttyS1 at MMIO 0xef600300 (irq = 16) is a 16550A
RAMDISK driver initialized: 16 RAM disks of 35000K size 1024 blocksize
fc000000.nor_flash: Found 1 x16 devices at 0x0 in 16-bit bank
 Amd/Fujitsu Extended Query Table at 0x0040
fc000000.nor_flash: CFI does not contain boot bank location. Assuming top.
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
RedBoot partition parsing not available
Creating 6 MTD partitions on "fc000000.nor_flash":
0x00000000-0x001e0000 : "kernel"
0x001e0000-0x00200000 : "dtb"
0x00200000-0x00400000 : "root"
0x00400000-0x03f60000 : "user"
0x03f60000-0x03fa0000 : "env"
0x03fa0000-0x04000000 : "u-boot"
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
IP-Config: Device `eth0' not found.
Looking up port of RPC 100003/2 on
rpcbind: server not responding, timed out
Root-NFS: Unable to get nfsd port number from server, using default
Looking up port of RPC 100005/1 on
rpcbind: server not responding, timed out
Root-NFS: Unable to get mountd port number from server, using default
mount: server not responding, timed out
Root-NFS: Server returned error -5 while mounting /home/timc/opt/eldk-4.2/ppc_4xx
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "nfs" or unknown-block(2,0)
Please append a correct "root=" boot option; here are the available partitions:
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
Rebooting in 1 seconds..<0>System Halted, OK to turn off power

More information about the eldk mailing list