[eepro100] 82559er on diskless PowerPC

Rick Hunt rhunt@sbs.com
Fri Sep 6 12:17:01 2002


I am working on a embedded PowerPC system with on 82559er on board.  The 
onboard port is used to load the kernel via tftp and then used to mount 
the rootfs via NFS.  I have gotten this to work (more or less) using the 
2.4.20-pre4 kernel with the default 1.36 (1.09j-t) eepro100 driver.

The system also has four more 82559er ports configured as a bridge. 
This bridge setup has some problems as the data rate increases, so I 
wanted to try the current driver (v1.24) from the scyld site.  I had 
gone through this driver replacement process before on typical x86 
systems without a problem using the driver as a module.  In this 
application the driver has to be linked into the kernel since my rootfs 
is an NFS drive.

I downloaded eepro100.c, pci-scan.c, pci-scan.h, and kern_compat.h then 
copied them to linuxppc_2_4_devel/drivers/net.  I edited the Makefile to 
add pci-scan.o, then had to edit pci_find_capability() to rename the 
function.  I also had to touch include/linux/modversions.h because it 
didn't exist.  All of this allowed the kernel to compile with the new 

Now the problem, no network of any sort.  The system behaves as if the 
driver code is never being called.  The console log of the failing 
kernel is below.  When using the default driver, the eepro100 info is 
displayed after the RAMDISK entry.

Can anyone give me a nudge in the right direction?


Rick Hunt
SBS Technologies                        Ph: (919)851-1101
6301 Chapel Hill Road                   Fax: (919)851-2844
Raleigh, NC 27607                       email: rhunt@sbs.com

Visit SBS Technologies at http://www.sbs.com


PMON> netboot;g
Loading file: (elf)
0x800000/765952 + 0x8bb000/12732(z) + 84 syms\
Entry address is 00800000
loaded at:     00800000 008BE1BC
zimage at:     00805620 008BA3C2
avail ram:     00400000 00800000

Linux/PPC load: ip=on
Uncompressing Linux...done.
Now booting the kernel
Memory BAT mapping: BAT2=256Mb, BAT3=0Mb, residual: 0Mb
Total memory = 256MB; using 512kB for hash table (at c0200000)
Linux version 2.4.20-pre4 (root@cspmon) (gcc version 2.95.3 20010315 
#33 Fri Sep 6 11:17:02 EDT 2002
System Identification: SBS K2 - PowerPC 750 @ 300 Mhz
SBS K2 port (C) 2001 MontaVista Software, Inc. (source@mvista.com)
CPU manufacturer: Motorola [rev=1104]
On node 0 totalpages: 65536
zone(0): 65536 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: ip=on
Calibrating delay loop... 599.65 BogoMIPS
Memory: 256668k available (1248k kernel code, 548k data, 80k init, 0k 
Dentry cache hash table entries: 32768 (order: 6, 262144 bytes)
Inode cache hash table entries: 16384 (order: 5, 131072 bytes)
Mount-cache hash table entries: 4096 (order: 3, 32768 bytes)
Buffer-cache hash table entries: 16384 (order: 4, 65536 bytes)
Page-cache hash table entries: 65536 (order: 6, 262144 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@atnf.csiro.au)
devfs: boot_options: 0x0
Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
pty: 256 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with MANY_PORTS SHARE_IRQ 
ttyS00 at 0x03f8 (irq = 4) is a 16550A
ttyS01 at 0x02f8 (irq = 3) is a 16550A
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
ALI15X3: IDE controller on PCI bus 00 dev 88
ALI15X3: chipset revision 194
ALI15X3: simplex device: DMA will fail!!
ALI15X3: 100% native mode on irq 15
ALI15X3: simplex device:  DMA disabled
ide0: ALI15X3 Bus-Master DMA disabled (BIOS)
     ide1: BM-DMA at 0xfcfd8-0xfcfdf, BIOS settings: hdc:DMA, hdd:pio
ide-floppy driver 0.99.newide
RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize
loop: loaded (max 8 devices)
ide-floppy driver 0.99.newide
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
IP: routing cache hash table of 2048 buckets, 16Kbytes
TCP: Hash tables configured (established 16384 bind 16384)
IP-Config: No network devices available.
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
NET4: Ethernet Bridge 008 for NET4.0
Root-NFS: No NFS server available, giving up.
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "" or 02:00
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 02:00
  <0>Rebooting in 180 seconds..