Lines Matching refs:adapter

42 static void	em_netmap_block_tasks(struct adapter *);
43 static void em_netmap_unblock_tasks(struct adapter *);
49 struct adapter *adapter = ifp->if_softc;
51 ASSERT(queueid < adapter->num_queues);
54 EM_CORE_LOCK(adapter);
57 EM_CORE_UNLOCK(adapter);
60 EM_TX_LOCK(&adapter->tx_rings[queueid]);
63 EM_TX_UNLOCK(&adapter->tx_rings[queueid]);
66 EM_RX_LOCK(&adapter->rx_rings[queueid]);
69 EM_RX_UNLOCK(&adapter->rx_rings[queueid]);
77 em_netmap_block_tasks(struct adapter *adapter)
79 if (adapter->msix > 1) { /* MSIX */
81 struct tx_ring *txr = adapter->tx_rings;
82 struct rx_ring *rxr = adapter->rx_rings;
84 for (i = 0; i < adapter->num_queues; i++, txr++, rxr++) {
91 taskqueue_block(adapter->tq);
92 taskqueue_drain(adapter->tq, &adapter->link_task);
93 taskqueue_drain(adapter->tq, &adapter->que_task);
99 em_netmap_unblock_tasks(struct adapter *adapter)
101 if (adapter->msix > 1) {
102 struct tx_ring *txr = adapter->tx_rings;
103 struct rx_ring *rxr = adapter->rx_rings;
106 for (i = 0; i < adapter->num_queues; i++) {
111 taskqueue_unblock(adapter->tq);
122 struct adapter *adapter = ifp->if_softc;
129 em_disable_intr(adapter);
134 em_netmap_block_tasks(adapter);
142 em_init_locked(adapter);
152 em_init_locked(adapter); /* also enable intr */
154 em_netmap_unblock_tasks(adapter);
165 struct adapter *adapter = ifp->if_softc;
166 struct tx_ring *txr = &adapter->tx_rings[ring_nr];
218 curr->lower.data = htole32(adapter->txd_cmd | len |
231 E1000_WRITE_REG(&adapter->hw, E1000_TDT(txr->me), l);
238 l = E1000_READ_REG(&adapter->hw, E1000_TDH(ring_nr));
267 struct adapter *adapter = ifp->if_softc;
268 struct rx_ring *rxr = &adapter->rx_rings[ring_nr];
363 E1000_WRITE_REG(&adapter->hw, E1000_RDT(rxr->me), l);
374 em_netmap_attach(struct adapter *adapter)
380 na.ifp = adapter->ifp;
382 na.num_tx_desc = adapter->num_tx_desc;
383 na.num_rx_desc = adapter->num_rx_desc;
388 netmap_attach(&na, adapter->num_queues);