39 size_t len,
int rx_id) {
51 __atomic_store_n(&nic->
pq_head,
next, __ATOMIC_RELEASE);
64 rx->
rx_id = old->rx_id;
volatile uint32_t buffer[5]
struct ioforge_device * ioforge_get_root()
void ioforge_attach(struct ioforge_device *parent, struct ioforge_device *child)
void ioforge_clear_rx_queue(struct ioforge_nic_service *nic, struct pending_rx *rx)
int ioforge_receive_pending_queue(struct ioforge_nic_service *nic, struct pending_rx *rx)
void ioforge_nic_rx(struct ioforge_nic_service *nic, uint8_t *buffer, size_t len, int rx_id)
void ioforge_register_nic(struct ioforge_nic_service *nic)
#define PENDING_QUEUE_SIZE
#define PENDING_QUEUE_MASK
#define LOG2_DEBUG(mod, fmt,...)
void(* storeBufferToPool)(int rx_id, void *vaddr)
struct ioforge_nic_operation ops
struct ioforge_device service
struct pending_rx pending_queue[128]