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}