opentitanlib::io::i2c

Enum ReadStatus

Source
pub enum ReadStatus {
    WaitingForData(u8),
    Idle,
    DataPrepared,
}
Expand description

Status of I2C read operations (data from device to host).

Variants§

§

WaitingForData(u8)

Host has asked to read data, debugger device is currently stretching the clock waiting to be told what data to transmit via I2C. Parameter is 7-bit I2C address.

§

Idle

Host is not asking to read data, and debugger also does not have any prepared data.

§

DataPrepared

Host is not asking to read data, debugger has prepared data for the case the host should ask in the future.

Trait Implementations§

Source§

impl Debug for ReadStatus

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for ReadStatus

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for ReadStatus

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

§

impl<T> Annotate for T
where T: Serialize + ?Sized,

§

default fn format( &self, _variant: Option<&str>, _field: &MemberId<'_>, ) -> Option<Format>

§

default fn comment( &self, _variant: Option<&str>, _field: &MemberId<'_>, ) -> Option<String>

§

default fn as_annotate(&self) -> Option<&dyn Annotate>

§

default fn thunk_serialize( &self, serializer: &mut AnnotatedSerializer<'_>, ) -> Result<Document, Error>

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, U> ConsoleRecv<T> for U

Source§

fn recv(device: &T, timeout: Duration, quiet: bool) -> Result<U, Error>

Source§

impl<T, U> ConsoleSend<T> for U
where T: ConsoleDevice + ?Sized, U: Serialize,

Source§

fn send(&self, device: &T) -> Result<(), Error>

Source§

fn send_with_crc(&self, device: &T) -> Result<(), Error>

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> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> Serialize for T
where T: Serialize + ?Sized,

Source§

fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<(), Error>

Source§

fn do_erased_serialize( &self, serializer: &mut dyn Serializer, ) -> Result<(), ErrorImpl>

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.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,