Struct LocalApic

Source
#[repr(C, align(16))]
pub struct LocalApic {
Show 24 fields pub apic_id: ApicId, pub apic_version: ApicVersion, pub task_priority: PriorityRegister, pub arb_priority: PriorityRegister, pub processor_priority: PriorityRegister, pub eoi: EndOfInterrupt, pub logical_dst: LogicalDestination, pub dst_format: DestinationFormat, pub spurious_iv: SpuriousInterruptVector, pub in_service: [BitfieldRegister; 8], pub trigger_mode: [BitfieldRegister; 8], pub interrupt_request: [BitfieldRegister; 8], pub error_status: ErrorStatus, pub interrupt_cmd_low: InterruptCmdLow, pub interrupt_cmd_high: InterruptCmdHigh, pub timer_lvt: TimerLVT, pub thermal_lvt: ThermalLVT, pub performance_lvt: PerfLVT, pub lint0_lvt: LIntLVT, pub lint1_lvt: LIntLVT, pub error_lvt: ErrorLVT, pub timer_icr: TimerCount, pub timer_ccr: TimerCount, pub timer_dcr: TimerDivConf, /* private fields */
}
Expand description

Local APIC registers.

Fields§

§apic_id: ApicId

APIC ID Register.

§apic_version: ApicVersion

ACIC Version Register.

§task_priority: PriorityRegister

Task Priority Register (TPR).

§arb_priority: PriorityRegister

Arbitration Priority Register (APR).

§processor_priority: PriorityRegister

Processor Priority Register (PPR).

§eoi: EndOfInterrupt

End of Interrupt Register (EOI).

§logical_dst: LogicalDestination

Logical Destination Register.

§dst_format: DestinationFormat

Destination Format Register.

§spurious_iv: SpuriousInterruptVector

Spurious Interrupt Vector Register.

§in_service: [BitfieldRegister; 8]

In-Service Register (ISR).

§trigger_mode: [BitfieldRegister; 8]

Trigger Mode Register (TMR).

§interrupt_request: [BitfieldRegister; 8]

Interrupt Request Register (IRR).

§error_status: ErrorStatus

Error Status Register (ESR).

§interrupt_cmd_low: InterruptCmdLow

Interrupt Command Register Low (bits 31:0).

§interrupt_cmd_high: InterruptCmdHigh

Interrupt Command Register High (bits 63:32).

§timer_lvt: TimerLVT

Timer Local Vector Table Entry.

§thermal_lvt: ThermalLVT

Thermal Local Vector Table Entry.

§performance_lvt: PerfLVT

Performance Counter Local Vector Table Entry.

§lint0_lvt: LIntLVT

Local Interrupt 0 Vector Table Entry

§lint1_lvt: LIntLVT

Local Interrupt 1 Vector Table Entry

§error_lvt: ErrorLVT

Error Vector Table Entry.

§timer_icr: TimerCount

Timer Initial Count Register.

§timer_ccr: TimerCount

Timer Current Count Register.

§timer_dcr: TimerDivConf

Timer Divide Configuration Register.

Trait Implementations§

Source§

impl Clone for LocalApic

Source§

fn clone(&self) -> LocalApic

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 Debug for LocalApic

Source§

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

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

impl Default for LocalApic

Source§

fn default() -> LocalApic

Returns the “default value” for a type. Read more
Source§

impl PartialEq for LocalApic

Source§

fn eq(&self, other: &LocalApic) -> 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 Copy for LocalApic

Source§

impl Eq for LocalApic

Source§

impl StructuralPartialEq for LocalApic

Auto Trait Implementations§

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.