#[repr(C, packed(1))]pub struct LPCProgrammableInterruptController {
pub type: u8,
pub length: u8,
pub version: u8,
pub base_address: u64,
pub size: u16,
pub cascade_vector: u16,
}Expand description
§LPC Programmable Interrupt Controller (LPC PIC) Structure
LPC PIC (Low Pin Count Programmable Interrupt Controller) is responsible for handling ISA IRQs of old legacy devices such as PS/2 mouse, keyboard and UARTs for Loongarch machines.
Fields§
§type: u823 - LPC Programmable Interrupt Controller Structure
length: u8Length of the LPC Programmable Interrupt Controller Structure in bytes.
JJ’s Note: There doesn’t seem to be any variable-sized fields in this struct. The size is 15 bytes…
version: u8- 0x00 - Invalid
- 0x01 - LPC PIC v1
Other values are reserved.
base_address: u64The base address of LPC PIC registers.
size: u16The register space size of LPC PIC.
cascade_vector: u16This field described routed vector on BIO PIC from LPC PIC vectors.
Trait Implementations§
Source§impl Clone for LPCProgrammableInterruptController
impl Clone for LPCProgrammableInterruptController
Source§fn clone(&self) -> LPCProgrammableInterruptController
fn clone(&self) -> LPCProgrammableInterruptController
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for LPCProgrammableInterruptController
Auto Trait Implementations§
impl Freeze for LPCProgrammableInterruptController
impl RefUnwindSafe for LPCProgrammableInterruptController
impl Send for LPCProgrammableInterruptController
impl Sync for LPCProgrammableInterruptController
impl Unpin for LPCProgrammableInterruptController
impl UnwindSafe for LPCProgrammableInterruptController
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