for (i=0; i<36; i++) { 
for (i=0; i<30; i++) { *buff++ = a->read_bcr(ioaddr, i); } *buff++ = 0;	/* skip bcr30 so as not to hang 79C976 */ for (i=31; i<36; i++) { 
static void pcnet32_get_regs(struct net_device *dev, struct ethtool_regs *regs,	void *ptr){    int i, csr0;    u16 *buff = ptr;    struct pcnet32_private *lp = dev->priv;    struct pcnet32_access *a = &lp->a;    ulong ioaddr = dev->base_addr;    int ticks;    unsigned long flags;    spin_lock_irqsave(&lp->lock, flags);    csr0 = a->read_csr(ioaddr, 0);    if (!(csr0 & 0x0004)) {	/* If not stopped */	/* set SUSPEND (SPND) - CSR5 bit 0 */	a->write_csr(ioaddr, 5, 0x0001);	/* poll waiting for bit to be set */	ticks = 0;	while (!(a->read_csr(ioaddr, 5) & 0x0001)) {	    spin_unlock_irqrestore(&lp->lock, flags);	    mdelay(1);	    spin_lock_irqsave(&lp->lock, flags);	    ticks++;	    if (ticks > 200) {		if (netif_msg_hw(lp))		    printk(KERN_DEBUG "%s: Error getting into suspend!\n",			    dev->name);		break;	    }	}    }    /* read address PROM */    for (i=0; i<16; i += 2)	*buff++ = inw(ioaddr + i);    /* read control and status registers */    for (i=0; i<90; i++) {	*buff++ = a->read_csr(ioaddr, i);    }    *buff++ = a->read_csr(ioaddr, 112);    *buff++ = a->read_csr(ioaddr, 114);    /* read bus configuration registers */    for (i=0; i<36; i++) {	*buff++ = a->read_bcr(ioaddr, i);    }    /* read mii phy registers */    if (lp->mii) {	for (i=0; i<32; i++) {	    lp->a.write_bcr(ioaddr, 33, ((lp->mii_if.phy_id) << 5) | i);	    *buff++ = lp->a.read_bcr(ioaddr, 34);	}    }    if (!(csr0 & 0x0004)) {	/* If not stopped */	/* clear SUSPEND (SPND) - CSR5 bit 0 */	a->write_csr(ioaddr, 5, 0x0000);    }    i = buff - (u16 *)ptr;    for (; i < PCNET32_NUM_REGS; i++)	*buff++ = 0;    spin_unlock_irqrestore(&lp->lock, flags);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/4371dc6c60705815dcfe0c2979f68a26d0b27bd4/pcnet32.c/buggy/drivers/net/pcnet32.c