diff options
Diffstat (limited to 'sys/pci/if_xl.c')
-rw-r--r-- | sys/pci/if_xl.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/sys/pci/if_xl.c b/sys/pci/if_xl.c index 31adf06..29e5705 100644 --- a/sys/pci/if_xl.c +++ b/sys/pci/if_xl.c @@ -933,7 +933,7 @@ xl_testpacket(sc) mtod(m, unsigned char *)[15] = 0; mtod(m, unsigned char *)[16] = 0xE3; m->m_len = m->m_pkthdr.len = sizeof(struct ether_header) + 3; - IF_ENQUEUE(&ifp->if_snd, m); + IFQ_ENQUEUE(&ifp->if_snd, m); xl_start(ifp); return; @@ -1556,7 +1556,9 @@ xl_attach(dev) ifp->if_watchdog = xl_watchdog; ifp->if_init = xl_init; ifp->if_baudrate = 10000000; - ifp->if_snd.ifq_maxlen = XL_TX_LIST_CNT - 1; + IFQ_SET_MAXLEN(&ifp->if_snd, XL_TX_LIST_CNT - 1); + ifp->if_snd.ifq_drv_maxlen = XL_TX_LIST_CNT - 1; + IFQ_SET_READY(&ifp->if_snd); ifp->if_capenable = ifp->if_capabilities; /* @@ -2337,7 +2339,7 @@ xl_intr(arg) } } - if (ifp->if_snd.ifq_head != NULL) + if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) (*ifp->if_start)(ifp); XL_UNLOCK(sc); @@ -2513,7 +2515,7 @@ xl_start(ifp) start_tx = sc->xl_cdata.xl_tx_free; while(sc->xl_cdata.xl_tx_free != NULL) { - IF_DEQUEUE(&ifp->if_snd, m_head); + IFQ_DRV_DEQUEUE(&ifp->if_snd, m_head); if (m_head == NULL) break; @@ -2646,7 +2648,7 @@ xl_start_90xB(ifp) break; } - IF_DEQUEUE(&ifp->if_snd, m_head); + IFQ_DRV_DEQUEUE(&ifp->if_snd, m_head); if (m_head == NULL) break; @@ -3156,7 +3158,7 @@ xl_watchdog(ifp) xl_reset(sc); xl_init(sc); - if (ifp->if_snd.ifq_head != NULL) + if (IFQ_DRV_IS_EMPTY(&ifp->if_snd)) (*ifp->if_start)(ifp); XL_UNLOCK(sc); |