CEMAC_WRITE
CEMAC_WRITE(GEM_DMA_CFG, dma);
CEMAC_WRITE(ETH_CFG, cfg);
CEMAC_WRITE(ETH_IDR, -1);
CEMAC_WRITE(ETH_IER, ETH_ISR_RCOM | ETH_ISR_TBRE | ETH_ISR_TIDLE
CEMAC_WRITE(ETH_CTL, ETH_CTL_TE | ETH_CTL_RE | ETH_CTL_ISR
CEMAC_WRITE(ETH_CTL, ETH_CTL_MPE); // disable everything
CEMAC_WRITE(ETH_IDR, -1); // disable interrupts
CEMAC_WRITE(ETH_CFG,
CEMAC_WRITE(ETH_CFG,
CEMAC_WRITE(ETH_TSR, (u & (ETH_TSR_UND | ETH_TSR_COMP | ETH_TSR_BNQ
CEMAC_WRITE(ETH_RSR, (u & (ETH_RSR_OVR | ETH_RSR_REC | ETH_RSR_BNA)));
CEMAC_WRITE(ETH_CTL, ctl & ~ETH_CTL_RE);
CEMAC_WRITE(ETH_SA2L, (ias[0][3] << 24)
CEMAC_WRITE(ETH_SA2H, (ias[0][4] << 8)
CEMAC_WRITE(ETH_SA3L, (ias[1][3] << 24)
CEMAC_WRITE(ETH_SA3H, (ias[1][4] << 8)
CEMAC_WRITE(ETH_SA4L, (ias[2][3] << 24)
CEMAC_WRITE(ETH_SA4H, (ias[2][4] << 8)
CEMAC_WRITE(ETH_CFG, cfg);
CEMAC_WRITE(ETH_CTL, ctl | ETH_CTL_RE);
CEMAC_WRITE(ETH_CTL, 0); // disable everything
CEMAC_WRITE(ETH_IDR, -1); // disable interrupts
CEMAC_WRITE(ETH_RBQP, 0); // clear receive
CEMAC_WRITE(ETH_TBQP, 0); // clear transmit
CEMAC_WRITE(ETH_CFG,
CEMAC_WRITE(ETH_CFG,
CEMAC_WRITE(ETH_TSR, (u & (ETH_TSR_UND | ETH_TSR_COMP | ETH_TSR_BNQ
CEMAC_WRITE(ETH_RSR, (u & (ETH_RSR_OVR | ETH_RSR_REC | ETH_RSR_BNA)));
CEMAC_WRITE(ETH_TSR, tsr);
CEMAC_WRITE(ETH_ISR, isr);
CEMAC_WRITE(ETH_RSR, ETH_RSR_BNA);
CEMAC_WRITE(ETH_CTL, ctl & ~ETH_CTL_RE);
CEMAC_WRITE(ETH_RSR, ETH_RSR_BNA);
CEMAC_WRITE(ETH_CTL, ctl | ETH_CTL_RE);
CEMAC_WRITE(ETH_RSR, ETH_RSR_OVR);
CEMAC_WRITE(ETH_CTL, ETH_CTL_MPE); // disable everything
CEMAC_WRITE(ETH_IDR, -1); // disable interrupts
CEMAC_WRITE(ETH_RBQP, 0); // clear receive
CEMAC_WRITE(ETH_TBQP, 0); // clear transmit
CEMAC_WRITE(ETH_CFG,
CEMAC_WRITE(ETH_CFG,
CEMAC_WRITE(GEM_DMA_CFG,
CEMAC_WRITE(ETH_TSR, (u & (ETH_TSR_UND | ETH_TSR_COMP | ETH_TSR_BNQ
CEMAC_WRITE(ETH_RSR, (u & (ETH_RSR_OVR | ETH_RSR_REC | ETH_RSR_BNA)));
CEMAC_WRITE(ETH_RBQP, (uint32_t)sc->rbqpage_dsaddr);
CEMAC_WRITE(ETH_TBQP, (uint32_t)sc->tbqpage_dsaddr);
CEMAC_WRITE(ETH_IDR, -1);
CEMAC_WRITE(ETH_IER, ETH_ISR_RCOM | ETH_ISR_TBRE | ETH_ISR_TIDLE
CEMAC_WRITE(ETH_CTL, ETH_CTL_TE | ETH_CTL_RE | ETH_CTL_ISR
CEMAC_WRITE(ETH_MAN, (ETH_MAN_HIGH | ETH_MAN_RW_RD
CEMAC_WRITE(ETH_MAN, (ETH_MAN_HIGH | ETH_MAN_RW_WR
CEMAC_WRITE(ETH_CFG, reg);
CEMAC_WRITE(ETH_IER, ETH_ISR_TBRE);
CEMAC_WRITE(ETH_CTL, ctl);
CEMAC_WRITE(ETH_TAR, segs->ds_addr);
CEMAC_WRITE(ETH_TCR, m->m_pkthdr.len);