[U-Boot-Users] Ebony boot issues -- help wanted

Jeff H Zhong jeff at doremilabs.com
Wed Apr 16 12:14:14 CEST 2003


Hi Guys,

I am new to both this mailing-list and embedded linuxppc.  Currently I
am working on IBM ebony evaluation platform, and I got couple of doubts
which I can't figure out. I programmed u-boot 3.0.0 into the flash and
trying to use NFS to boot the kernel. Here are my questions,

1. At U-Boot phase

I got output on console:

U-Boot 0.3.0 (Apr 15 2003 - 14:12:33)

IBM PowerPC 440 Rev. C
Board: IBM 440GP Evaluation Board (Ebony)
        VCO: 800 MHz
        CPU: 400 MHz
        PLB: 133 MHz
        OPB: 66 MHz
        EPB: 66 MHz
I2C:   ready
DRAM:  I2c read: failed 4
I2c read: failed 4
128 MB
FLASH:  4.5 MB
PCI:   Bus Dev VenId DevId Class Int
        00  04  1095  0680  0104  00
In:    serial
Out:   serial
Err:   serial
KGDB:  kgdb ready
ready
BEDBUG:ready
=>

Why u-boot failed on my DRAM I2C read although it still can find out the
correctly amount ?

At this point of time, I am not able to ping the target from my host(RH
7.3). From the host:
root at Jeff u-boot-0.3.0<1063>ping 7.1.1.6
PING 7.1.1.6 (7.1.1.6) from 7.1.1.4 : 56(84) bytes of data.
>From 7.1.1.4 icmp_seq=1 Destination Host Unreachable
>From 7.1.1.4 icmp_seq=2 Destination Host Unreachable
....

root at Jeff u-boot-0.3.0<1064>cat /proc/net/arp
IP address       HW type     Flags       HW address            Mask
Device
7.1.1.6          0x1         0x0         00:00:00:00:00:00     *
eth1
10.1.1.171       0x1         0x2         00:A0:C5:E0:C4:EC     *
eth0

I guess that dear Ms. U-Boot does not bring up arp, is that right?

2. Now, I am trying to tftp kernel image, and on target console:

=> tftp
ENET Speed is 100 Mbps - FULL duplex connection
ARP broadcast 1
TFTP from server 7.1.1.4; our IP address is 7.1.1.6
Filename 'vmlinux.PPCBoot'.
Load address: 0x1000000
Loading:
#################################################################

#################################################################
         ###########
done
Bytes transferred = 718502 (af6a6 hex)
=>

Ok, it got the image.

On host side,  I have:

root at Jeff u-boot-0.3.0<1065>cat /proc/net/arp
IP address       HW type     Flags       HW address            Mask
Device
7.1.1.6          0x1         0x0         00:04:AC:E3:1D:62     *
eth1
10.1.1.171       0x1         0x2         00:A0:C5:E0:C4:EC     *
eth0

Ms. U-Boot looks more pretty and coorprative now, right? But I still
couldn't ping her,
root at Jeff u-boot-0.3.0<1066>ping 7.1.1.6
PING 7.1.1.6 (7.1.1.6) from 7.1.1.4 : 56(84) bytes of data.
>From 7.1.1.4 icmp_seq=1 Destination Host Unreachable
>From 7.1.1.4 icmp_seq=2 Destination Host Unreachable
......

3. Now I am trying to boot up kernel, she says:

=> bootm
## Booting image at 01000000 ...
   Image Name:   Linux-2.4.21-pre7-big
   Created:      2003-04-15  18:05:48 UTC
   Image Type:   PowerPC Linux Kernel Image (gzip compressed)
   Data Size:    718438 Bytes = 701.6 kB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK
Linux version 2.4.21-pre7-big (root at Jeff) (gcc version 2.95.2 19991024
(release)
) #60 Tue Apr 15 18:04:53 UTC 2003
IBM Ebony port (C) 2002 MontaVista Software, Inc. (source at mvista.com)
On node 0 totalpages: 32768
zone(0): 4096 pages.
zone(1): 28672 pages.
zone(2): 0 pages.
Kernel command line: console=ttyS0,9600
ip=7.1.1.6:::255.255.255.0:ppclinux:eth0
 nfsroot=7.1.1.4:/exports/eldk/ppc_4xx
Calibrating delay loop... 599.65 BogoMIPS
Memory: 127436k available (1176k kernel code, 420k data, 224k init, 0k
highmem)
Dentry cache hash table entries: 16384 (order: 5, 131072 bytes)
Inode cache hash table entries: 8192 (order: 4, 65536 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer-cache hash table entries: 8192 (order: 3, 32768 bytes)
Page-cache hash table entries: 32768 (order: 5, 131072 bytes)
POSIX conformance testing by UNIFIX
PCI: Probing PCI hardware
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Starting kswapd
devfs: v1.12c (20020818) Richard Gooch (rgooch at atnf.csiro.au)
devfs: boot_options: 0x1
Installing knfsd (copyright (C) 1996 okir at monad.swb.de).
i2c-core.o: i2c core module
i2c-dev.o: i2c /dev entries driver module
i2c-core.o: driver i2c-dev dummy driver registered.
i2c-proc.o version 2.6.1 (20010825)
pty: 256 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with MANY_PORTS SHARE_IRQ
SERIAL_PCI en
abled
ttyS00 at 0xfdfe9200 (irq = 0) is a 16550A
ttyS01 at 0xfdfe8300 (irq = 1) is a 16550A
RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize
Zmii bridge in RMII mode
eth0: Phy @ 0x8, type Am79c875A (0x00225541)
Reset ethernet interfaces
Zmii bridge in RMII mode
eth1: Phy @ 0x9, type Am79c875A (0x00225541)
Reset ethernet interfaces
Uniform Multi-Platform E-IDE driver Revision: 7.00beta-2.4
ide: Assuming 33MHz system bus speed for PIO modes; override with
idebus=xx
SiI680: IDE controller at PCI slot 00:04.0
SiI680: chipset revision 1
SiI680: not 100% native mode: will probe irqs later
SiI680: BASE CLOCK == 133
    ide0: MMIO-DMA at 0xc900ef00-0xc900ef07, BIOS settings: hda:pio,
hdb:pio
    ide1: MMIO-DMA at 0xc900ef08-0xc900ef0f, BIOS settings: hdc:pio,
hdd:pio
Probing IDE interface ide0...
hda: IBM-DTLA-307015, ATA DISK drive
blk: queue c01c10d0, I/O limit 4095Mb (mask 0xffffffff)
Probing IDE interface ide1...
ide0 at 0xc900ef80-0xc900ef87,0xc900ef8a on irq 26
hda: attached ide-disk driver.
hda: host protected area => 1
hda: 30003120 sectors (15362 MB) w/1916KiB Cache, CHS=29765/16/63,
UDMA(100)
Partition check:
 /dev/ide/host0/bus0/target0/lun0: [PTBL] [1867/255/63] p1
IBM IIC driver
i2c-dev.o: Registered 'IBM IIC adapter' as minor 0
i2c-core.o: adapter IBM IIC adapter registered as adapter 0.
i2c-dev.o: Registered 'IBM IIC adapter' as minor 1
i2c-core.o: adapter IBM IIC adapter registered as adapter 1.
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP: Hash tables configured (established 8192 bind 8192)
eth0: IBM EMAC: link up, 100 Mbps Full Duplex, auto-negotiation
complete.
eth0: IBM EMAC: MAC ff:ff:ff:ff:ff:ff.
eth0: IBM EMAC: open completed

IP-Config: Complete:
      device=eth0, addr=7.1.1.6, mask=255.255.255.0, gw=255.255.255.255,

     host=ppclinux, domain=, nis-domain=(none),
     bootserver=255.255.255.255, rootserver=7.1.1.4, rootpath=
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
Looking up port of RPC 100003/2 on 7.1.1.4

Look, Mrs. U-Boot bring up the kernel and Mr. Kernel talks lot but he
stucks here refusing to move ahead. Seems like kernel didn't get his
MAC  address properly, so he couldn't connect to host bootp server. My
question is that how does Ms. U-Boot pass the environment variable to
Mr. Kernel, as something I got from this archive?

On host:
root at Jeff u-boot-0.3.0<1067>cat /proc/net/arp
IP address       HW type     Flags       HW address            Mask
Device
7.1.1.6          0x1         0x0         00:04:AC:E3:1D:62     *
eth1
10.1.1.171       0x1         0x2         00:A0:C5:E0:C4:EC     *
eth0


4. Then I issued a ping from host,
root at Jeff u-boot-0.3.0<1068>ping 7.1.1.6
PING 7.1.1.6 (7.1.1.6) from 7.1.1.4 : 56(84) bytes of data.
64 bytes from 7.1.1.6: icmp_seq=1 ttl=64 time=0.506 ms
64 bytes from 7.1.1.6: icmp_seq=2 ttl=64 time=0.166 ms
64 bytes from 7.1.1.6: icmp_seq=3 ttl=64 time=0.146 ms
64 bytes from 7.1.1.6: icmp_seq=4 ttl=64 time=0.137 ms
64 bytes from 7.1.1.6: icmp_seq=5 ttl=64 time=0.138 ms
64 bytes from 7.1.1.6: icmp_seq=6 ttl=64 time=0.137 ms
.....

This makes Mr. Kernel keep going:
Looking up port of RPC 100005/1 on 7.1.1.4
VFS: Mounted root (nfs filesystem).
Mounted devfs on /dev
Freeing unused kernel memory: 224k init
INIT: version 2.78 booting
Remounting the root filesystem read-write.
Cleaning: /tmp /var/lock /var/run.
Mounting local file systems...
none on /dev/pts type devpts (rw,gid=5,mode=620)
Setting up IP spoofing protection: rp_filter.
Configuring network interfaces: done.
Starting portmap daemon: portmap.
Initializing random number generator... done.
INIT: Entering runlevel: 2
Starting system logger: Done
Starting kernel logger: Done
Starting xinetd: Done

Welcome to DoReMi Labs. Inc.
ppclinux login:


Looks like the kernel got himself's MAC through the icmp message. It is
fairly wired to me.

At this moment, on host:
root at Jeff u-boot-0.3.0<1069>cat /proc/net/arp
IP address       HW type     Flags       HW address            Mask
Device
7.1.1.6          0x1         0x2         FF:FF:FF:FF:FF:FF     *
eth1
10.1.1.171       0x1         0x2         00:A0:C5:E0:C4:EC     *
eth0
root at Jeff u-boot-0.3.0<1070>

You will see Mr. Linux Kernel tries to cheat the host by a wrong MAC
address.


Below is my environment variable settings special for dear Ms. U-Boot:

=> printenv
baudrate=9600
loads_echo=1
loadaddr=0x01000000
ethaddr=00:04:ac:e3:1d:62
filesize=b6820
netmask=255.255.255.0
ipaddr=7.1.1.6
serverip=7.1.1.4
bootfile=vmlinux.PPCBoot
bootargs=console=ttyS0,9600 ip=7.1.1.6:::255.255.255.0:ppclinux:eth0
nfsroot=7.1
.1.4:/exports/eldk/ppc_4xx   root=/dev/nfs rw
stdin=serial
stdout=serial
stderr=serial

Environment size: 602/4092 bytes
=>

And:
=> bdi
memstart    = 0x00000000
memsize     = 0x08000000
flashstart  = 0xFF800000
flashsize   = 0x00480000
flashoffset = 0x00000000
sramstart   = 0x00000000
sramsize    = 0x00000000
bootflags   = 0x00000000
intfreq     =    400 MHz
busfreq     = 133.333 MHz
ethaddr     = 00:04:AC:E3:1D:62
IP addr     = 7.1.1.6
baudrate    =   9600 bps
=>


Could anyone give me some hint on these issues?

Thanks in advance,

--
Jeff H. Zhong
-------------
Doremi Labs, Inc.
306 East Alameda Avenue
Burbank, CA 91502
Tel : (818) 562 1101
Fax : (818) 562 1109


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.denx.de/pipermail/u-boot/attachments/20030416/57c476ac/attachment.htm 


More information about the U-Boot mailing list