pub struct Registry<O: IrqOps> { /* private fields */ }Expand description
Dynamic IRQ registry.
Implementations§
Source§impl<O: IrqOps> Registry<O>
impl<O: IrqOps> Registry<O>
Sourcepub fn request(
&self,
irq: IrqNumber,
request: IrqRequest,
) -> Result<IrqHandle, IrqError>
pub fn request( &self, irq: IrqNumber, request: IrqRequest, ) -> Result<IrqHandle, IrqError>
Registers an IRQ action.
Sourcepub fn enable(&self, handle: IrqHandle) -> Result<(), IrqError>
pub fn enable(&self, handle: IrqHandle) -> Result<(), IrqError>
Enables an IRQ action and its backing line.
Sourcepub fn disable(&self, handle: IrqHandle) -> Result<(), IrqError>
pub fn disable(&self, handle: IrqHandle) -> Result<(), IrqError>
Disables an IRQ action and its backing line.
Sourcepub fn status(&self, handle: IrqHandle) -> Result<IrqStatus, IrqError>
pub fn status(&self, handle: IrqHandle) -> Result<IrqStatus, IrqError>
Returns a status snapshot for an IRQ action.
Sourcepub fn dispatch(&self, irq: IrqNumber, cpu: CpuId) -> IrqOutcome
pub fn dispatch(&self, irq: IrqNumber, cpu: CpuId) -> IrqOutcome
Dispatches an IRQ on the given CPU.
Trait Implementations§
impl<O: IrqOps + Send> Send for Registry<O>
impl<O: IrqOps + Send> Sync for Registry<O>
Auto Trait Implementations§
impl<O> !Freeze for Registry<O>
impl<O> !RefUnwindSafe for Registry<O>
impl<O> !UnwindSafe for Registry<O>
impl<O> Unpin for Registry<O>where
O: Unpin,
impl<O> UnsafeUnpin for Registry<O>where
O: UnsafeUnpin,
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