NetDriver

Trait NetDriver 

Source
pub trait NetDriver {
Show 17 methods // Required methods fn device(&self) -> &Device; fn device_mut(&mut self) -> &mut Device; fn setup_rx_queue(&mut self, len: usize) -> Result<QueueHandle, TwzError>; fn destroy_rx_queue(&mut self, queue: QueueHandle) -> Result<(), TwzError>; fn setup_tx_queue(&mut self, len: usize) -> Result<QueueHandle, TwzError>; fn destroy_tx_queue(&mut self, queue: QueueHandle) -> Result<(), TwzError>; fn tx_queues(&self) -> Vec<QueueHandle> ; fn rx_queues(&self) -> Vec<QueueHandle> ; fn rx_packet_buffer(&self, queue: QueueHandle) -> &DmaPacketObject; fn tx_packet_buffer(&self, queue: QueueHandle) -> &DmaPacketObject; fn mac_address(&self, queue: QueueHandle) -> Result<[u8; 6], TwzError>; fn recv_packets( &mut self, queue: QueueHandle, packets: &mut [Packet], ) -> Result<usize, TwzError>; fn send_packets( &mut self, queue: QueueHandle, packets: &mut [Packet], ) -> Result<usize, TwzError>; fn has_work(&self, queue: QueueHandle) -> WorkItems; fn waitpoint(&self, queue: QueueHandle) -> ThreadSync; // Provided methods fn features(&self) -> Features { ... } fn set_mac_address( &self, _queue: QueueHandle, _addr: [u8; 6], ) -> Result<(), TwzError> { ... }
}

Required Methods§

Source

fn device(&self) -> &Device

Source

fn device_mut(&mut self) -> &mut Device

Source

fn setup_rx_queue(&mut self, len: usize) -> Result<QueueHandle, TwzError>

Source

fn destroy_rx_queue(&mut self, queue: QueueHandle) -> Result<(), TwzError>

Source

fn setup_tx_queue(&mut self, len: usize) -> Result<QueueHandle, TwzError>

Source

fn destroy_tx_queue(&mut self, queue: QueueHandle) -> Result<(), TwzError>

Source

fn tx_queues(&self) -> Vec<QueueHandle>

Source

fn rx_queues(&self) -> Vec<QueueHandle>

Source

fn rx_packet_buffer(&self, queue: QueueHandle) -> &DmaPacketObject

Source

fn tx_packet_buffer(&self, queue: QueueHandle) -> &DmaPacketObject

Source

fn mac_address(&self, queue: QueueHandle) -> Result<[u8; 6], TwzError>

Source

fn recv_packets( &mut self, queue: QueueHandle, packets: &mut [Packet], ) -> Result<usize, TwzError>

Source

fn send_packets( &mut self, queue: QueueHandle, packets: &mut [Packet], ) -> Result<usize, TwzError>

Source

fn has_work(&self, queue: QueueHandle) -> WorkItems

Source

fn waitpoint(&self, queue: QueueHandle) -> ThreadSync

Provided Methods§

Source

fn features(&self) -> Features

Source

fn set_mac_address( &self, _queue: QueueHandle, _addr: [u8; 6], ) -> Result<(), TwzError>

Implementors§