lkml.org 
[lkml]   [2003]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
SubjectRe: OOPS in read_cd... what to do?
From
Date

> 1. load module.
> #modprobe e2100
> e2100.c: Presently autoprobing (not recommended) for a single card.
> e2100.c:v1.01 7/21/94 Donald Becker (becker@cesdis.gsfc.nasa.gov)
> 00 00 1D 0A 72 AB, IRQ 15, secandary media, memory @ 0xd0000
> (I can supply io=0x380 to get rid of the warning message, but there will
> be no real difference. I'm not really sure this is the correct value,
> but last time I tried this I did look at the jumpers and used the right
> value, thats when I noticed the oops. A weird thing btw. It didn't
> happen when there also was a ne2000-compatible isa-card used at the same
> time, then it just refused to send any traffic.)
>
> 2. configure and up the interface, then send traffic using the
> interface.
> (ping some.remote.ip ... pinging myself works fine, but I guess it's
> because the driver isn't involved there)

Try this


--- drivers/net/e2100.c~ 2003-01-28 18:38:21.000000000 +0000
+++ drivers/net/e2100.c 2003-01-28 18:38:21.000000000 +0000
@@ -77,7 +77,7 @@
{
/* This is a little weird: set the shared memory window by doing a
read. The low address bits specify the starting page. */
- readb(mem_base+start_page);
+ isa_readb(mem_base+start_page);
inb(port + E21_MEM_ENABLE);
outb(E21_MEM_ON, port + E21_MEM_ENABLE + E21_MEM_ON);
}
@@ -306,9 +306,9 @@

#ifdef notdef
/* Officially this is what we are doing, but the readl() is faster */
- memcpy_fromio(hdr, shared_mem, sizeof(struct e8390_pkt_hdr));
+ isa_memcpy_fromio(hdr, shared_mem, sizeof(struct e8390_pkt_hdr));
#else
- ((unsigned int*)hdr)[0] = readl(shared_mem);
+ ((unsigned int*)hdr)[0] = isa_readl(shared_mem);
#endif

/* Turn off memory access: we would need to reprogram the window anyway. */
@@ -328,7 +328,7 @@
mem_on(ioaddr, shared_mem, (ring_offset>>8));

/* Packet is always in one chunk -- we can copy + cksum. */
- eth_io_copy_and_sum(skb, dev->mem_start + (ring_offset & 0xff), count, 0);
+ isa_eth_io_copy_and_sum(skb, dev->mem_start + (ring_offset & 0xff), count, 0);

mem_off(ioaddr);
}
@@ -342,10 +342,10 @@

/* Set the shared memory window start by doing a read, with the low address
bits specifying the starting page. */
- readb(shared_mem + start_page);
+ isa_readb(shared_mem + start_page);
mem_on(ioaddr, shared_mem, start_page);

- memcpy_toio(shared_mem, buf, count);
+ isa_memcpy_toio(shared_mem, buf, count);
mem_off(ioaddr);
}
\
 
 \ /
  Last update: 2005-03-22 13:32    [W:0.062 / U:7.468 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site