Skip to main content

raw_acpi/srat/affinity/
proc_local_apic.rs

1use crate::srat::affinity::ProcessorLocalAPICAffinityFlags;
2
3#[derive(Copy, Clone)]
4#[repr(C, packed)]
5/// ## Processor Local APIC/SAPIC Affinity Structure
6///
7/// The Processor Local APIC/SAPIC Affinity structure provides the association between the APIC ID or SAPIC ID/EID of a processor and the proximity domain to which the processor belongs.
8pub struct ProcessorLocalAPICAffinity {
9    /// 0 - Processor Local APIC/SAPIC Affinity Structure
10    pub r#type: u8,
11    /// 16
12    pub length: u8,
13    /// Bit [[7:0]] of the proximity domain to which the processor belongs.
14    pub proximity_domain_7_0: u8,
15    /// The processor local APIC ID.
16    pub apic_id: u8,
17    /// Flags for the Processor Local APIC/SAPIC Affinity Structure.
18    pub flags: ProcessorLocalAPICAffinityFlags,
19    /// The processor local SAPIC EID.
20    pub local_sapic_eid: u8,
21    /// Bit [[31:8]] of the proximity domain to which the processor belongs.
22    pub proximity_domain_31_8: [u8; 3],
23    /// The clock domain to which the processor belongs. See _CDM (Clock Domain).
24    pub clock_domain: u32,
25}