aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/xen/acpi.h
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2009-05-20 16:02:50 +0100
committerKeir Fraser <keir.fraser@citrix.com>2009-05-20 16:02:50 +0100
commit45963f3c8c0c69c9f8697df53749487ce3eaf292 (patch)
treebaf0bd98ff7c5b00e40308cc626a7e292ce46152 /xen/include/xen/acpi.h
parent4ad717e086afa108976209d14c93f8fb4716030a (diff)
downloadxen-45963f3c8c0c69c9f8697df53749487ce3eaf292.tar.gz
xen-45963f3c8c0c69c9f8697df53749487ce3eaf292.tar.bz2
xen-45963f3c8c0c69c9f8697df53749487ce3eaf292.zip
ACPI/NUMA: Improve SRAT parsing
This is to properly handle SRAT rev 2 extended proximity domain values. Also a first step to eliminate the redundant definitions of ACPI provided table structures (Linux eliminated all of the duplicates from include/linux/acpi.h in 2.6.21). Portions based on a Linux patch from Kurt Garloff <garloff@suse.de> and Alexey Starikovskiy <astarikovskiy@suse.de>. IA64 build tested only. Signed-off-by: Jan Beulich <jbeulich@novell.com>
Diffstat (limited to 'xen/include/xen/acpi.h')
-rw-r--r--xen/include/xen/acpi.h33
1 files changed, 2 insertions, 31 deletions
diff --git a/xen/include/xen/acpi.h b/xen/include/xen/acpi.h
index 43bdade6c4..fc1f8317bb 100644
--- a/xen/include/xen/acpi.h
+++ b/xen/include/xen/acpi.h
@@ -176,35 +176,6 @@ enum acpi_srat_entry_id {
ACPI_SRAT_ENTRY_COUNT
};
-struct acpi_table_processor_affinity {
- struct acpi_subtable_header header;
- u8 proximity_domain;
- u8 apic_id;
- struct {
- u32 enabled:1;
- u32 reserved:31;
- } flags;
- u8 lsapic_eid;
- u8 reserved[7];
-} __attribute__ ((packed));
-
-struct acpi_table_memory_affinity {
- struct acpi_subtable_header header;
- u8 proximity_domain;
- u8 reserved1[5];
- u32 base_addr_lo;
- u32 base_addr_hi;
- u32 length_lo;
- u32 length_hi;
- u32 memory_type; /* See acpi_address_range_id */
- struct {
- u32 enabled:1;
- u32 hot_pluggable:1;
- u32 reserved:30;
- } flags;
- u64 reserved2;
-} __attribute__ ((packed));
-
enum acpi_address_range_id {
ACPI_ADDRESS_RANGE_MEMORY = 1,
ACPI_ADDRESS_RANGE_RESERVED = 2,
@@ -297,8 +268,8 @@ void acpi_table_print_srat_entry (struct acpi_subtable_header *srat);
/* the following four functions are architecture-dependent */
void acpi_numa_slit_init (struct acpi_table_slit *slit);
-void acpi_numa_processor_affinity_init (struct acpi_table_processor_affinity *pa);
-void acpi_numa_memory_affinity_init (struct acpi_table_memory_affinity *ma);
+void acpi_numa_processor_affinity_init (struct acpi_srat_cpu_affinity *pa);
+void acpi_numa_memory_affinity_init (struct acpi_srat_mem_affinity *ma);
void acpi_numa_arch_fixup(void);
#ifdef CONFIG_ACPI_HOTPLUG_CPU