Skip to main content

ResourceBackend

Trait ResourceBackend 

Source
pub trait ResourceBackend: Send {
Show 19 methods // Provided methods fn read32(&mut self, _offset: u64) -> Result<u32, BackendError> { ... } fn write32(&mut self, _offset: u64, _value: u32) -> Result<(), BackendError> { ... } fn barrier(&mut self) { ... } fn gpio_read(&mut self) -> Result<bool, BackendError> { ... } fn gpio_write(&mut self, _value: bool) -> Result<(), BackendError> { ... } fn i2c_transfer( &mut self, _write_data: &[u8], _read_length: usize, ) -> Result<Vec<u8>, BackendError> { ... } fn spi_transmit(&mut self, _tx_data: &[u8]) -> Result<Vec<u8>, BackendError> { ... } fn clock_enable(&mut self) -> Result<(), BackendError> { ... } fn clock_disable(&mut self) -> Result<(), BackendError> { ... } fn clock_is_enabled(&mut self) -> Result<bool, BackendError> { ... } fn clock_set_rate(&mut self, _hz: u64) -> Result<(), BackendError> { ... } fn clock_query_rate(&mut self, _hz_in: u64) -> Result<u64, BackendError> { ... } fn clock_get_rate(&mut self) -> Result<u64, BackendError> { ... } fn reset_assert(&mut self) -> Result<(), BackendError> { ... } fn reset_deassert(&mut self) -> Result<(), BackendError> { ... } fn reset_toggle(&mut self) -> Result<(), BackendError> { ... } fn reset_status(&mut self) -> Result<bool, BackendError> { ... } fn serial_read(&mut self) -> Result<Vec<u8>, BackendError> { ... } fn serial_write(&mut self, _data: &[u8]) -> Result<(), BackendError> { ... }
}
Expand description

Unified hardware access trait covering MMIO and protocol resources.

Provided Methods§

Source

fn read32(&mut self, _offset: u64) -> Result<u32, BackendError>

Source

fn write32(&mut self, _offset: u64, _value: u32) -> Result<(), BackendError>

Source

fn barrier(&mut self)

Source

fn gpio_read(&mut self) -> Result<bool, BackendError>

Source

fn gpio_write(&mut self, _value: bool) -> Result<(), BackendError>

Source

fn i2c_transfer( &mut self, _write_data: &[u8], _read_length: usize, ) -> Result<Vec<u8>, BackendError>

Source

fn spi_transmit(&mut self, _tx_data: &[u8]) -> Result<Vec<u8>, BackendError>

Source

fn clock_enable(&mut self) -> Result<(), BackendError>

Source

fn clock_disable(&mut self) -> Result<(), BackendError>

Source

fn clock_is_enabled(&mut self) -> Result<bool, BackendError>

Source

fn clock_set_rate(&mut self, _hz: u64) -> Result<(), BackendError>

Source

fn clock_query_rate(&mut self, _hz_in: u64) -> Result<u64, BackendError>

Source

fn clock_get_rate(&mut self) -> Result<u64, BackendError>

Source

fn reset_assert(&mut self) -> Result<(), BackendError>

Source

fn reset_deassert(&mut self) -> Result<(), BackendError>

Source

fn reset_toggle(&mut self) -> Result<(), BackendError>

Source

fn reset_status(&mut self) -> Result<bool, BackendError>

Source

fn serial_read(&mut self) -> Result<Vec<u8>, BackendError>

Source

fn serial_write(&mut self, _data: &[u8]) -> Result<(), BackendError>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§