[LinuxBIOS] eth1: Too much work at interrupt, IntrStatus=0x0001.

Li-Ta Lo ollie at lanl.gov
Fri Sep 16 21:54:09 CEST 2005


On Thu, 2005-09-15 at 14:36 -0700, Dave Ashley wrote:
> 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.

Are you sure your DRAM is inited correctly? We had similar problem on 
EPIA. The kernel boots but it has problem to DMA received packets.

-- 
Li-Ta Lo <ollie at lanl.gov>
Los Alamos National Lab





More information about the coreboot mailing list