ks8851_wrreg16
ks8851_wrreg16(ks, KS_PMECR, pmecr);
ks8851_wrreg16(ks, KS_MAR(i), val);
ks8851_wrreg16(ks, KS_RXFDPR, RXFDPR_RXFPAI | 0x00);
ks8851_wrreg16(ks, KS_RXQCR, ks->rc_rxqcr | RXQCR_SDA);
ks8851_wrreg16(ks, KS_RXQCR, ks->rc_rxqcr | RXQCR_RRXEF);
ks8851_wrreg16(ks, KS_ISR, status);
ks8851_wrreg16(ks, KS_PMECR, pmecr | PMECR_WKEVT_LINK);
ks8851_wrreg16(ks, KS_MAHTR0, rxc->mchash[0]);
ks8851_wrreg16(ks, KS_MAHTR1, rxc->mchash[1]);
ks8851_wrreg16(ks, KS_MAHTR2, rxc->mchash[2]);
ks8851_wrreg16(ks, KS_MAHTR3, rxc->mchash[3]);
ks8851_wrreg16(ks, KS_RXCR2, rxc->rxcr2);
ks8851_wrreg16(ks, KS_RXCR1, rxc->rxcr1);
ks8851_wrreg16(ks, KS_TXCR, (TXCR_TXE | /* enable transmit process */
ks8851_wrreg16(ks, KS_TXFDPR, TXFDPR_TXFPAI);
ks8851_wrreg16(ks, KS_RXCR1, (RXCR1_RXPAFMA | /* from mac filter */
ks8851_wrreg16(ks, KS_RXCR2, RXCR2_SRDBL_FRAME);
ks8851_wrreg16(ks, KS_RXDTTR, 1000); /* 1ms after first frame to IRQ */
ks8851_wrreg16(ks, KS_RXDBCTR, 4096); /* >4Kbytes in buffer to IRQ */
ks8851_wrreg16(ks, KS_RXFCTR, 10); /* 10 frames to IRQ */
ks8851_wrreg16(ks, KS_RXQCR, ks->rc_rxqcr);
ks8851_wrreg16(ks, KS_ISR, ks->rc_ier);
ks8851_wrreg16(ks, KS_IER, ks->rc_ier);
ks8851_wrreg16(ks, KS_IER, 0x0000);
ks8851_wrreg16(ks, KS_ISR, 0xffff);
ks8851_wrreg16(ks, KS_RXCR1, 0x0000);
ks8851_wrreg16(ks, KS_TXCR, 0x0000);
ks8851_wrreg16(ks, KS_RXCR1, 0x00);
ks8851_wrreg16(ks, KS_EEPCR, val);
ks8851_wrreg16(ks, KS_EEPCR, EEPCR_EESA | EEPCR_EECS);
ks8851_wrreg16(ks, KS_EEPCR, val & ~EEPCR_EESA);
ks8851_wrreg16(ks, KS_GRR, op);
ks8851_wrreg16(ks, ksreg, value);
ks8851_wrreg16(ks, KS_GRR, 0);