capsules_core::virtualizers::virtual_i2c

Struct SMBusDevice

Source
pub struct SMBusDevice<'a, I: I2CMaster<'a>, S: SMBusMaster<'a>> { /* private fields */ }

Implementations§

Source§

impl<'a, I: I2CMaster<'a>, S: SMBusMaster<'a>> SMBusDevice<'a, I, S>

Source

pub fn new(mux: &'a MuxI2C<'a, I, S>, addr: u8) -> SMBusDevice<'a, I, S>

Source

pub fn set_client(&'a self, client: &'a dyn I2CClient)

Trait Implementations§

Source§

impl<'a, I: I2CMaster<'a>, S: SMBusMaster<'a>> I2CClient for SMBusDevice<'a, I, S>

Source§

fn command_complete(&self, buffer: &'static mut [u8], status: Result<(), Error>)

Called when an I2C command completed. The error denotes whether the command completed successfully or if an error occured.
Source§

impl<'a, I: I2CMaster<'a>, S: SMBusMaster<'a>> I2CDevice for SMBusDevice<'a, I, S>

Source§

fn enable(&self)

Source§

fn disable(&self)

Source§

fn write_read( &self, data: &'static mut [u8], write_len: usize, read_len: usize, ) -> Result<(), (Error, &'static mut [u8])>

Source§

fn write( &self, data: &'static mut [u8], len: usize, ) -> Result<(), (Error, &'static mut [u8])>

Source§

fn read( &self, buffer: &'static mut [u8], len: usize, ) -> Result<(), (Error, &'static mut [u8])>

Source§

impl<'a, I: I2CMaster<'a>, S: SMBusMaster<'a>> ListNode<'a, SMBusDevice<'a, I, S>> for SMBusDevice<'a, I, S>

Source§

fn next(&'a self) -> &'a ListLink<'a, SMBusDevice<'a, I, S>>

Source§

impl<'a, I: I2CMaster<'a>, S: SMBusMaster<'a>> SMBusDevice for SMBusDevice<'a, I, S>

Source§

fn smbus_write_read( &self, data: &'static mut [u8], write_len: usize, read_len: usize, ) -> Result<(), (Error, &'static mut [u8])>

Write data then read data to a slave device in an SMBus compatible way. Read more
Source§

fn smbus_write( &self, data: &'static mut [u8], len: usize, ) -> Result<(), (Error, &'static mut [u8])>

Write data to a slave device in an SMBus compatible way. Read more
Source§

fn smbus_read( &self, buffer: &'static mut [u8], len: usize, ) -> Result<(), (Error, &'static mut [u8])>

Read data from a slave device in an SMBus compatible way. Read more

Auto Trait Implementations§

§

impl<'a, I, S> !Freeze for SMBusDevice<'a, I, S>

§

impl<'a, I, S> !RefUnwindSafe for SMBusDevice<'a, I, S>

§

impl<'a, I, S> !Send for SMBusDevice<'a, I, S>

§

impl<'a, I, S> !Sync for SMBusDevice<'a, I, S>

§

impl<'a, I, S> Unpin for SMBusDevice<'a, I, S>

§

impl<'a, I, S> !UnwindSafe for SMBusDevice<'a, I, S>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.