diff options
Diffstat (limited to 'arch/ia64/kernel')
-rw-r--r-- | arch/ia64/kernel/acpi-processor.c | 6 | ||||
-rw-r--r-- | arch/ia64/kernel/acpi.c | 32 |
2 files changed, 21 insertions, 17 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 00b5d08f6da8..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 | } |
@@ -601,8 +615,6 @@ int acpi_register_gsi(u32 gsi, int triggering, int polarity) | |||
601 | IOSAPIC_LEVEL); | 615 | IOSAPIC_LEVEL); |
602 | } | 616 | } |
603 | 617 | ||
604 | EXPORT_SYMBOL(acpi_register_gsi); | ||
605 | |||
606 | void acpi_unregister_gsi(u32 gsi) | 618 | void acpi_unregister_gsi(u32 gsi) |
607 | { | 619 | { |
608 | if (acpi_irq_model == ACPI_IRQ_MODEL_PLATFORM) | 620 | if (acpi_irq_model == ACPI_IRQ_MODEL_PLATFORM) |
@@ -611,8 +623,6 @@ void acpi_unregister_gsi(u32 gsi) | |||
611 | iosapic_unregister_intr(gsi); | 623 | iosapic_unregister_intr(gsi); |
612 | } | 624 | } |
613 | 625 | ||
614 | EXPORT_SYMBOL(acpi_unregister_gsi); | ||
615 | |||
616 | static int __init acpi_parse_fadt(struct acpi_table_header *table) | 626 | static int __init acpi_parse_fadt(struct acpi_table_header *table) |
617 | { | 627 | { |
618 | struct acpi_table_header *fadt_header; | 628 | struct acpi_table_header *fadt_header; |
@@ -631,18 +641,6 @@ static int __init acpi_parse_fadt(struct acpi_table_header *table) | |||
631 | return 0; | 641 | return 0; |
632 | } | 642 | } |
633 | 643 | ||
634 | unsigned long __init acpi_find_rsdp(void) | ||
635 | { | ||
636 | unsigned long rsdp_phys = 0; | ||
637 | |||
638 | if (efi.acpi20 != EFI_INVALID_TABLE_ADDR) | ||
639 | rsdp_phys = efi.acpi20; | ||
640 | else if (efi.acpi != EFI_INVALID_TABLE_ADDR) | ||
641 | printk(KERN_WARNING PREFIX | ||
642 | "v1.0/r0.71 tables no longer supported\n"); | ||
643 | return rsdp_phys; | ||
644 | } | ||
645 | |||
646 | int __init acpi_boot_init(void) | 644 | int __init acpi_boot_init(void) |
647 | { | 645 | { |
648 | 646 | ||