NTXDESCS
#define NEXTTX(x) (((x)+1) % NTXDESCS)
#define TXMAPSZ (NTXDESCS*NTXFRAGS*sizeof(struct txd))
for (i = 0; i < NTXDESCS; i++) {
struct txd *sc_txd[NTXDESCS]; /* transmit frags array */
bus_addr_t sc_txdp[NTXDESCS]; /* dva of transmit frags */
bus_dmamap_t sc_txm[NTXDESCS]; /* transmit frags map */
struct mbuf *sc_txb[NTXDESCS]; /* transmit mbuf pointer */
PIF_WCSR(TX_FIFO_P0, TX_FIFO_LEN0(NTXDESCS));
for (i = 0; i < NTXDESCS; i++) {
sc->sc_lasttx = NTXDESCS-1;
ifq_init_maxlen(&ifp->if_snd, NTXDESCS - 1);