[vortex] 3c590 on PowerMac

Andrew Morton andrewm@uow.edu.au
Thu, 01 Jun 2000 03:31:19 +0000


Kernel 2.2, I assume??

There's a problem with 590's in powermacs on 2.2.  With
the 'insl' and 'outsl' statements.  A quick fix is to
edit the driver and add:

#ifdef __powerpc__
    insl_ns(ioaddr + RX_FIFO, skb_put(skb, pkt_len),
            (pkt_len + 3) >> 2);
#else
    insl(ioaddr + RX_FIFO, skb_put(skb, pkt_len),
            (pkt_len + 3) >> 2);
#endif 


and


                                                                                #ifdef __powerpc__
        outsl_ns(ioaddr + TX_FIFO, skb->data, (skb->len + 3) >> 2);
#else
        outsl(ioaddr + TX_FIFO, skb->data, (skb->len + 3) >> 2);
#endif


and rebuild.

Alternatively you _could_ try using DMA mode - we haven't
tried this workaround yet.  Try setting bit 4 of 'options' with

insmod 3c59x options=0x13