BootInfo

Struct BootInfo 

Source
pub struct BootInfo<'a> {
    pub name: BootInfoName<'a>,
    pub typ: BootInfoType,
    pub contents: BootInfoContents<'a>,
}
Expand description

Boot information descriptor.

Fields§

§name: BootInfoName<'a>§typ: BootInfoType§contents: BootInfoContents<'a>

Implementations§

Source§

impl BootInfo<'_>

Source

pub fn pack( version: Version, descriptors: &[BootInfo<'_>], buf: &mut [u8], mapped_addr: Option<usize>, )

Serialize a list of boot information descriptors into a buffer. The mapped_addr parameter should contain the address of the buffer in the consumers translation regime (typically a virtual address where the buffer is mapped to). This is necessary since there are self-references within the serialized data structure which must be described with an absolute address according to the FF-A spec.

Source

pub fn get_blob_size(version: Version, buf: &[u8]) -> Result<usize, Error>

Get the size of the boot information blob spanning contiguous memory. This enables a consumer to map all of the boot information blob in its translation regime or copy it to another memory location without parsing each element in the boot information descriptor array.

Trait Implementations§

Source§

impl<'a> Clone for BootInfo<'a>

Source§

fn clone(&self) -> BootInfo<'a>

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'a> Debug for BootInfo<'a>

Source§

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

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

impl<'a> PartialEq for BootInfo<'a>

Source§

fn eq(&self, other: &BootInfo<'a>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<'a> Eq for BootInfo<'a>

Source§

impl<'a> StructuralPartialEq for BootInfo<'a>

Auto Trait Implementations§

§

impl<'a> Freeze for BootInfo<'a>

§

impl<'a> RefUnwindSafe for BootInfo<'a>

§

impl<'a> Send for BootInfo<'a>

§

impl<'a> Sync for BootInfo<'a>

§

impl<'a> Unpin for BootInfo<'a>

§

impl<'a> UnwindSafe for BootInfo<'a>

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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.