|
Barrelfish
|
Header file for net_queue_manager.h. More...
Functions | |
| void | ethersrv_init (char *service_name, uint64_t queueid, ether_get_mac_address_t get_mac_ptr, ether_terminate_queue terminate_queue_ptr, ether_transmit_pbuf_list_t transmit_ptr, ether_get_tx_free_slots tx_free_slots_ptr, ether_handle_free_TX_slot handle_free_tx_slots_ptr, size_t rx_buffer_size, ether_rx_register_buffer rx_register_buffer_ptr, ether_rx_get_free_slots rx_get_free_slots_ptr) |
| void | ethersrv_argument (const char *arg) |
| void | process_received_packet (struct driver_rx_buffer *buffer, size_t count, uint64_t flags) |
| bool | copy_packet_to_user (struct buffer_descriptor *buffer, void *data, uint64_t len, uint64_t flags) |
Header file for net_queue_manager.h.
| bool copy_packet_to_user | ( | struct buffer_descriptor * | buffer, |
| void * | data, | ||
| uint64_t | len, | ||
| uint64_t | flags | ||
| ) |
Used in combination with software filtering, to copy a packet into a user buffer.
| void ethersrv_argument | ( | const char * | arg | ) |
Pass command line argument not used by driver to library. Can be called multiple times, once for each parameter.
| void ethersrv_init | ( | char * | service_name, |
| uint64_t | queueid, | ||
| ether_get_mac_address_t | get_mac_ptr, | ||
| ether_terminate_queue | terminate_queue_ptr, | ||
| ether_transmit_pbuf_list_t | transmit_ptr, | ||
| ether_get_tx_free_slots | tx_free_slots_ptr, | ||
| ether_handle_free_TX_slot | handle_free_tx_slots_ptr, | ||
| size_t | rx_buffer_size, | ||
| ether_rx_register_buffer | rx_register_buffer_ptr, | ||
| ether_rx_get_free_slots | rx_get_free_slots_ptr | ||
| ) |
Initialize pair of ethernet RX/TX queues.
| service_name | Service name for the card to which this queue belongs |
| queueid | Queue index |
| get_mac_ptr | Callback that returns MAC address of the card |
| terminate_queue_ptr | Callback that terminates the queue driver, or NULL if this is not supported. |
| transmit_ptr | Callback to put a buffer chain in TX queue |
| tx_free_slots_ptr | Callback that returns number of free slots in TX queue |
| handle_free_tx_slots_ptr | Callback to remove transmitted buffers from queue |
| rx_buffer_size | Expected RX buffer size |
| rx_register_buffer_ptr | Callback to register buffer for RX queue |
| rx_get_free_slots_ptr | Callback that returns number of free slots in RX queue |
| void process_received_packet | ( | struct driver_rx_buffer * | bufs, |
| size_t | count, | ||
| uint64_t | flags | ||
| ) |
Called by driver when it receives a new packet.
1.8.11