We've got epia-sp almost into linux fully, but RTL8139 (eth1) or the VIA 3065 (eth0) don't work properly.
Interrupts are occuring as expected on ethernet packets. We're trying to work with the RTL8139 for now which is a card plugged into the epia-sp. It's able to act as a pci bus master. I suspect something about the PCI isn't working, like the card isn't able to dma into host memory or something similiar.
Inside linux drivers/net/8139too.c inside function rtl8139_rx_interrupt if ((rx_size > (MAX_ETH_FRAME_SIZE+4)) || (rx_size < 8) || (!(rx_status & RxStatusOK))) { rtl8139_rx_err (rx_status, dev, tp, ioaddr); printk("here2 rx_size = %d\n", rx_size); // (DA) return; }
The interrupt service routine is exiting because rx_size is always 0. This is the size of the received packet I think.
A similiar problem is occuring in the 3065 ethernet. We're failing to do something within linuxbios that's preventing pci devices from functioning properly.
Does anyone have any suggestions? I'm hoping these symptoms are familiar.
Thanks-- Dave