diff options
Diffstat (limited to 'arch/ia64')
-rw-r--r-- | arch/ia64/kernel/acpi-processor.c | 6 | ||||
-rw-r--r-- | arch/ia64/kernel/acpi.c | 28 |
2 files changed, 21 insertions, 13 deletions
diff --git a/arch/ia64/kernel/acpi-processor.c b/arch/ia64/kernel/acpi-processor.c index 5a216c019924..cbe6cee5a550 100644 --- a/arch/ia64/kernel/acpi-processor.c +++ b/arch/ia64/kernel/acpi-processor.c | |||
@@ -45,6 +45,12 @@ static void init_intel_pdc(struct acpi_processor *pr) | |||
45 | buf[0] = ACPI_PDC_REVISION_ID; | 45 | buf[0] = ACPI_PDC_REVISION_ID; |
46 | buf[1] = 1; | 46 | buf[1] = 1; |
47 | buf[2] = ACPI_PDC_EST_CAPABILITY_SMP; | 47 | buf[2] = ACPI_PDC_EST_CAPABILITY_SMP; |
48 | /* | ||
49 | * The default of PDC_SMP_T_SWCOORD bit is set for IA64 cpu so | ||
50 | * that OSPM is capable of native ACPI throttling software | ||
51 | * coordination using BIOS supplied _TSD info. | ||
52 | */ | ||
53 | buf[2] |= ACPI_PDC_SMP_T_SWCOORD; | ||
48 | 54 | ||
49 | obj->type = ACPI_TYPE_BUFFER; | 55 | obj->type = ACPI_TYPE_BUFFER; |
50 | obj->buffer.length = 12; | 56 | obj->buffer.length = 12; |
diff --git a/arch/ia64/kernel/acpi.c b/arch/ia64/kernel/acpi.c index 78206f1b71d2..78f28d825f30 100644 --- a/arch/ia64/kernel/acpi.c +++ b/arch/ia64/kernel/acpi.c | |||
@@ -69,6 +69,20 @@ unsigned int acpi_cpei_phys_cpuid; | |||
69 | 69 | ||
70 | unsigned long acpi_wakeup_address = 0; | 70 | unsigned long acpi_wakeup_address = 0; |
71 | 71 | ||
72 | #ifdef CONFIG_IA64_GENERIC | ||
73 | static unsigned long __init acpi_find_rsdp(void) | ||
74 | { | ||
75 | unsigned long rsdp_phys = 0; | ||
76 | |||
77 | if (efi.acpi20 != EFI_INVALID_TABLE_ADDR) | ||
78 | rsdp_phys = efi.acpi20; | ||
79 | else if (efi.acpi != EFI_INVALID_TABLE_ADDR) | ||
80 | printk(KERN_WARNING PREFIX | ||
81 | "v1.0/r0.71 tables no longer supported\n"); | ||
82 | return rsdp_phys; | ||
83 | } | ||
84 | #endif | ||
85 | |||
72 | const char __init * | 86 | const char __init * |
73 | acpi_get_sysname(void) | 87 | acpi_get_sysname(void) |
74 | { | 88 | { |
@@ -152,7 +166,7 @@ int acpi_request_vector(u32 int_type) | |||
152 | return vector; | 166 | return vector; |
153 | } | 167 | } |
154 | 168 | ||
155 | char *__acpi_map_table(unsigned long phys_addr, unsigned long size) | 169 | char *__init __acpi_map_table(unsigned long phys_addr, unsigned long size) |
156 | { | 170 | { |
157 | return __va(phys_addr); | 171 | return __va(phys_addr); |
158 | } | 172 | } |
@@ -627,18 +641,6 @@ static int __init acpi_parse_fadt(struct acpi_table_header *table) | |||
627 | return 0; | 641 | return 0; |
628 | } | 642 | } |
629 | 643 | ||
630 | unsigned long __init acpi_find_rsdp(void) | ||
631 | { | ||
632 | unsigned long rsdp_phys = 0; | ||
633 | |||
634 | if (efi.acpi20 != EFI_INVALID_TABLE_ADDR) | ||
635 | rsdp_phys = efi.acpi20; | ||
636 | else if (efi.acpi != EFI_INVALID_TABLE_ADDR) | ||
637 | printk(KERN_WARNING PREFIX | ||
638 | "v1.0/r0.71 tables no longer supported\n"); | ||
639 | return rsdp_phys; | ||
640 | } | ||
641 | |||
642 | int __init acpi_boot_init(void) | 644 | int __init acpi_boot_init(void) |
643 | { | 645 | { |
644 | 646 | ||