NUM_TX_DESCRIPTORS
qla_tx_buf_t tx_buf[NUM_TX_DESCRIPTORS];
hw->txr_next = (hw->txr_next + 1) & (NUM_TX_DESCRIPTORS - 1);
hw->txr_next = (hw->txr_next + 1) & (NUM_TX_DESCRIPTORS - 1);
(hw->txr_next + 1) & (NUM_TX_DESCRIPTORS - 1);
ha->hw.txr_free = NUM_TX_DESCRIPTORS;
(sizeof(q80_tx_cmd_t)) * NUM_TX_DESCRIPTORS;
if (hw->txr_comp == NUM_TX_DESCRIPTORS)
tx_cntxt_req->num_entries = qla_host_to_le32(NUM_TX_DESCRIPTORS);
hw->txr_next = (hw->txr_next + 1) & (NUM_TX_DESCRIPTORS - 1);
return((NUM_TX_DESCRIPTORS - 1));
uint32_t free_pkt_thres = (NUM_TX_DESCRIPTORS / 2);
bzero((void *)ha->tx_buf, (sizeof(qla_tx_buf_t) * NUM_TX_DESCRIPTORS));
for (i = 0; i < NUM_TX_DESCRIPTORS; i++)
bzero((void *)ha->tx_buf, (sizeof(qla_tx_buf_t) * NUM_TX_DESCRIPTORS));
qla_tx_buf_t tx_buf[NUM_TX_DESCRIPTORS];
tx_ring_size = (sizeof(q80_tx_cmd_t) * NUM_TX_DESCRIPTORS);
j = (tx_idx+i) & (NUM_TX_DESCRIPTORS - 1);
(NUM_TX_DESCRIPTORS - 1);
(NUM_TX_DESCRIPTORS - 1);
(NUM_TX_DESCRIPTORS - 1);
tcntxt->tx_ring[0].nentries = qla_host_to_le16(NUM_TX_DESCRIPTORS);
hw_tx_cntxt->txr_free = NUM_TX_DESCRIPTORS;
if (hw_tx_cntxt->txr_comp == NUM_TX_DESCRIPTORS)
if (hw_tx_cntxt->txr_free > NUM_TX_DESCRIPTORS)
QL_ASSERT(ha, (hw_tx_cntxt->txr_free <= NUM_TX_DESCRIPTORS), \
return(((NUM_TX_DESCRIPTORS * 4) - 1));
size = sizeof(q80_tx_cmd_t) * NUM_TX_DESCRIPTORS * ha->hw.num_tx_rings;
hdr->txr_size = sizeof(q80_tx_cmd_t) * NUM_TX_DESCRIPTORS;
hdr->txr_entries = NUM_TX_DESCRIPTORS;
fp->tx_br = buf_ring_alloc(NUM_TX_DESCRIPTORS, M_DEVBUF,
(sizeof(qla_tx_buf_t) * NUM_TX_DESCRIPTORS));
for (i = 0; i < NUM_TX_DESCRIPTORS; i++) {
for (i = 0; i < NUM_TX_DESCRIPTORS; i++)
(sizeof(qla_tx_buf_t) * NUM_TX_DESCRIPTORS));
qla_tx_buf_t tx_buf[NUM_TX_DESCRIPTORS];
#define QLA_TX_OALB_TOTAL_SIZE (NUM_TX_DESCRIPTORS * QLA_OAL_BLK_SIZE)
wq_icb->length_v = NUM_TX_DESCRIPTORS |
txr->txr_free = NUM_TX_DESCRIPTORS;
for (j = 0; j < NUM_TX_DESCRIPTORS; j++) {
NUM_TX_DESCRIPTORS * (sizeof (q81_tx_cmd_t));
for (i = 0; i < NUM_TX_DESCRIPTORS; i++) {
for (j = 0; j < NUM_TX_DESCRIPTORS; j++) {
ha->tx_ring[txr_idx].txr_free = NUM_TX_DESCRIPTORS;
ha->tx_ring[txr_idx].txr_free = NUM_TX_DESCRIPTORS +
if (ha->tx_ring[txr_idx].txr_free <= (NUM_TX_DESCRIPTORS >> 2)) {
txr_next = (txr_next + 1) & (NUM_TX_DESCRIPTORS - 1);
return((NUM_TX_DESCRIPTORS - 1));
if (tx_idx >= NUM_TX_DESCRIPTORS) {
if (ha->tx_ring[txr_idx].txr_done == NUM_TX_DESCRIPTORS)
for (i = 0; i < NUM_TX_DESCRIPTORS; i++)