pub trait Interface: DriverGeneric {
// Required methods
fn mac_address(&self) -> [u8; 6];
fn create_tx_queue(&mut self) -> Option<Box<dyn ITxQueue>>;
fn create_rx_queue(&mut self) -> Option<Box<dyn IRxQueue>>;
fn enable_irq(&mut self);
fn disable_irq(&mut self);
fn is_irq_enabled(&self) -> bool;
fn handle_irq(&mut self) -> Event;
}Expand description
Required Methods§
Sourcefn mac_address(&self) -> [u8; 6]
fn mac_address(&self) -> [u8; 6]
Returns the device’s 6-byte MAC address.
Sourcefn create_tx_queue(&mut self) -> Option<Box<dyn ITxQueue>>
fn create_tx_queue(&mut self) -> Option<Box<dyn ITxQueue>>
Create a new transmit queue. Returns None if no more queues are
available.
Sourcefn create_rx_queue(&mut self) -> Option<Box<dyn IRxQueue>>
fn create_rx_queue(&mut self) -> Option<Box<dyn IRxQueue>>
Create a new receive queue. Returns None if no more queues are
available.
Sourcefn enable_irq(&mut self)
fn enable_irq(&mut self)
Enable device interrupts.
Sourcefn disable_irq(&mut self)
fn disable_irq(&mut self)
Disable device interrupts.
Sourcefn is_irq_enabled(&self) -> bool
fn is_irq_enabled(&self) -> bool
Check whether device interrupts are currently enabled.
Sourcefn handle_irq(&mut self) -> Event
fn handle_irq(&mut self) -> Event
Handle a device interrupt, returning which queues have events.