Lines Matching refs:txbd_ring
251 k_sem_init(&dev_data->txbd_ring.ring_sem, 1, 1); in eth_xlnx_gem_iface_init()
398 k_sem_take(&(dev_data->txbd_ring.ring_sem), K_FOREVER); in eth_xlnx_gem_send()
404 if (bds_reqd > dev_data->txbd_ring.free_bds) { in eth_xlnx_gem_send()
408 dev_data->txbd_ring.free_bds); in eth_xlnx_gem_send()
411 k_sem_give(&(dev_data->txbd_ring.ring_sem)); in eth_xlnx_gem_send()
422 curr_bd_idx = first_bd_idx = dev_data->txbd_ring.next_to_use; in eth_xlnx_gem_send()
423 reg_ctrl = (uint32_t)(&dev_data->txbd_ring.first_bd[curr_bd_idx].ctrl); in eth_xlnx_gem_send()
425 dev_data->txbd_ring.next_to_use = (first_bd_idx + bds_reqd) % in eth_xlnx_gem_send()
427 dev_data->txbd_ring.free_bds -= bds_reqd; in eth_xlnx_gem_send()
430 k_sem_give(&(dev_data->txbd_ring.ring_sem)); in eth_xlnx_gem_send()
461 reg_ctrl = (uint32_t)(&dev_data->txbd_ring.first_bd[curr_bd_idx].ctrl); in eth_xlnx_gem_send()
484 reg_ctrl = (uint32_t)(&dev_data->txbd_ring.first_bd[curr_bd_idx].ctrl); in eth_xlnx_gem_send()
1352 bdptr = dev_data->txbd_ring.first_bd; in eth_xlnx_gem_configure_buffers()
1376 dev_data->txbd_ring.next_to_process = 0; in eth_xlnx_gem_configure_buffers()
1377 dev_data->txbd_ring.next_to_use = 0; in eth_xlnx_gem_configure_buffers()
1378 dev_data->txbd_ring.free_bds = dev_conf->txbd_count; in eth_xlnx_gem_configure_buffers()
1383 sys_write32((uint32_t)dev_data->txbd_ring.first_bd, in eth_xlnx_gem_configure_buffers()
1624 k_sem_take(&(dev_data->txbd_ring.ring_sem), K_FOREVER); in eth_xlnx_gem_handle_tx_done()
1627 curr_bd_idx = first_bd_idx = dev_data->txbd_ring.next_to_process; in eth_xlnx_gem_handle_tx_done()
1628 reg_ctrl = (uint32_t)(&dev_data->txbd_ring.first_bd[curr_bd_idx].ctrl); in eth_xlnx_gem_handle_tx_done()
1658 reg_ctrl = (uint32_t)(&dev_data->txbd_ring.first_bd[curr_bd_idx].ctrl); in eth_xlnx_gem_handle_tx_done()
1666 dev_data->txbd_ring.next_to_process = in eth_xlnx_gem_handle_tx_done()
1667 (dev_data->txbd_ring.next_to_process + bds_processed) % in eth_xlnx_gem_handle_tx_done()
1669 dev_data->txbd_ring.free_bds += bds_processed; in eth_xlnx_gem_handle_tx_done()
1672 k_sem_give(&(dev_data->txbd_ring.ring_sem)); in eth_xlnx_gem_handle_tx_done()