Another victim of assuming old v2.0 memory layout fashion. Try this.
Paul.
------------------------
--- linux/drivers/net/sk_g16.c.orig Tue Mar 11 12:15:00 1997
+++ linux/drivers/net/sk_g16.c Tue Mar 11 12:17:15 1997
@@ -16,6 +16,7 @@
* Description : Schneider & Koch G16 Ethernet Device Driver for
* Linux Kernel >= 1.1.22
* Update History :
+ * Paul Gortmaker: memcpy -> memcpy_{to,from}io for v2.1.x
*
-*/
@@ -1253,8 +1254,7 @@
/* Copy data into dual ported ram */
- memcpy((char *) (tmdp->u.buffer & 0x00ffffff), (char *)skb->data,
- skb->len);
+ memcpy_toio((tmdp->u.buffer & 0x00ffffff), skb->data, skb->len);
tmdp->blen = -len; /* set length to transmit */
@@ -1598,8 +1598,7 @@
* ignore status fields)
*/
- memcpy(skb_put(skb,len), (unsigned char *) (rmdp->u.buffer & 0x00ffffff),
- len);
+ memcpy_fromio(skb_put(skb,len), (rmdp->u.buffer & 0x00ffffff), len);
/*