Struct kernel_hal::InterruptManager[][src]

pub struct InterruptManager {}

Implementations

impl InterruptManager[src]

#[export_name = "hal_irq_handle"]pub fn handle(_irq: u8)[src]

Handle IRQ.

#[export_name = "hal_ioapic_set_handle"]pub fn set_ioapic_handle(
    _global_irq: u32,
    _handle: Box<dyn Fn() + Send + Sync>
) -> Option<u8>
[src]

#[export_name = "hal_irq_add_handle"]pub fn add_handle(
    _global_irq: u8,
    _handle: Box<dyn Fn() + Send + Sync>
) -> Option<u8>
[src]

Add an interrupt handle to an irq

#[export_name = "hal_ioapic_reset_handle"]pub fn reset_ioapic_handle(_global_irq: u32) -> bool[src]

#[export_name = "hal_irq_remove_handle"]pub fn remove_handle(_irq: u8) -> bool[src]

Remove the interrupt handle of an irq

#[export_name = "hal_irq_allocate_block"]pub fn allocate_block(_irq_num: u32) -> Option<(usize, usize)>[src]

Allocate contiguous positions for irq

#[export_name = "hal_irq_free_block"]pub fn free_block(_irq_start: u32, _irq_num: u32)[src]

#[export_name = "hal_irq_overwrite_handler"]pub fn overwrite_handler(
    _msi_id: u32,
    _handle: Box<dyn Fn() + Send + Sync>
) -> bool
[src]

#[export_name = "hal_irq_enable"]pub fn enable(_global_irq: u32)[src]

Enable IRQ.

#[export_name = "hal_irq_disable"]pub fn disable(_global_irq: u32)[src]

Disable IRQ.

#[export_name = "hal_irq_maxinstr"]pub fn maxinstr(_irq: u32) -> Option<u8>[src]

Get IO APIC maxinstr

#[export_name = "hal_irq_configure"]pub fn configure(
    _irq: u32,
    _vector: u8,
    _dest: u8,
    _level_trig: bool,
    _active_high: bool
) -> bool
[src]

#[export_name = "hal_irq_isvalid"]pub fn is_valid(_irq: u32) -> bool[src]

Auto Trait Implementations

impl RefUnwindSafe for InterruptManager

impl Send for InterruptManager

impl Sync for InterruptManager

impl Unpin for InterruptManager

impl UnwindSafe for InterruptManager

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.