pub struct PcComponent<'a> { /* private fields */ }
Expand description
Implementations§
Source§impl<'a> PcComponent<'a>
impl<'a> PcComponent<'a>
Sourcepub unsafe fn new(pd: &'a mut PD, pt: &'a mut PT) -> Self
pub unsafe fn new(pd: &'a mut PD, pt: &'a mut PT) -> Self
Creates a new PcComponent
instance.
§Safety
It is unsafe to construct more than a single PcComponent
during the entire lifetime of the
kernel.
Before calling, memory must be identity-mapped. Otherwise, introduction of flat segmentation will cause the kernel’s code/data to move unexpectedly.
See x86::init
for further details.
Trait Implementations§
Source§impl Component for PcComponent<'static>
impl Component for PcComponent<'static>
Source§type StaticInput = (<SerialPortComponent as Component>::StaticInput, <SerialPortComponent as Component>::StaticInput, <SerialPortComponent as Component>::StaticInput, <SerialPortComponent as Component>::StaticInput, &'static mut MaybeUninit<Pc<'static>>)
type StaticInput = (<SerialPortComponent as Component>::StaticInput, <SerialPortComponent as Component>::StaticInput, <SerialPortComponent as Component>::StaticInput, <SerialPortComponent as Component>::StaticInput, &'static mut MaybeUninit<Pc<'static>>)
An optional type to specify the chip or board specific static memory
that a component needs to setup the output object(s). This is the memory
that
crate::static_buf!()
would normally setup, but generic
components cannot setup static buffers for types which are
chip-dependent, so those buffers have to be passed in manually, and the
Component::StaticInput
type makes this possible.Source§type Output = &'static Pc<'static>
type Output = &'static Pc<'static>
The type (e.g., capsule, peripheral) that this implementation of
Component
produces via Component::finalize()
. This is typically
a static reference (&'static
).Source§fn finalize(self, s: Self::StaticInput) -> Self::Output
fn finalize(self, s: Self::StaticInput) -> Self::Output
Auto Trait Implementations§
impl<'a> Freeze for PcComponent<'a>
impl<'a> RefUnwindSafe for PcComponent<'a>
impl<'a> Send for PcComponent<'a>
impl<'a> Sync for PcComponent<'a>
impl<'a> Unpin for PcComponent<'a>
impl<'a> !UnwindSafe for PcComponent<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more