diff options
author | Jeremy Fitzhardinge <jeremy@goop.org> | 2010-06-24 12:05:41 -0400 |
---|---|---|
committer | Stefano Stabellini <stefano.stabellini@eu.citrix.com> | 2010-10-22 16:25:42 -0400 |
commit | 90f6881e6430ea7b38b9e0f9837719b1935616e0 (patch) | |
tree | 490291932ab87a62bd05519fa39496ef54068845 | |
parent | 2f065aef17b8d50a51a72451d03c7d7304249fb5 (diff) |
xen: add xen hvm acpi_register_gsi variant
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Acked-by: Rafael J. Wysocki <rjw@sisk.pl>
-rw-r--r-- | arch/x86/include/asm/acpi.h | 3 | ||||
-rw-r--r-- | arch/x86/kernel/acpi/boot.c | 3 | ||||
-rw-r--r-- | arch/x86/pci/xen.c | 6 |
3 files changed, 11 insertions, 1 deletions
diff --git a/arch/x86/include/asm/acpi.h b/arch/x86/include/asm/acpi.h index 92091de11113..55d106b5e31b 100644 --- a/arch/x86/include/asm/acpi.h +++ b/arch/x86/include/asm/acpi.h | |||
@@ -93,6 +93,9 @@ extern u8 acpi_sci_flags; | |||
93 | extern int acpi_sci_override_gsi; | 93 | extern int acpi_sci_override_gsi; |
94 | void acpi_pic_sci_set_trigger(unsigned int, u16); | 94 | void acpi_pic_sci_set_trigger(unsigned int, u16); |
95 | 95 | ||
96 | extern int (*__acpi_register_gsi)(struct device *dev, u32 gsi, | ||
97 | int trigger, int polarity); | ||
98 | |||
96 | static inline void disable_acpi(void) | 99 | static inline void disable_acpi(void) |
97 | { | 100 | { |
98 | acpi_disabled = 1; | 101 | acpi_disabled = 1; |
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c index 031f0c238916..71232b941b6c 100644 --- a/arch/x86/kernel/acpi/boot.c +++ b/arch/x86/kernel/acpi/boot.c | |||
@@ -537,7 +537,8 @@ static int acpi_register_gsi_ioapic(struct device *dev, u32 gsi, | |||
537 | return gsi; | 537 | return gsi; |
538 | } | 538 | } |
539 | 539 | ||
540 | static int (*__acpi_register_gsi)(struct device *dev, u32 gsi, int trigger, int polarity) = acpi_register_gsi_pic; | 540 | int (*__acpi_register_gsi)(struct device *dev, u32 gsi, |
541 | int trigger, int polarity) = acpi_register_gsi_pic; | ||
541 | 542 | ||
542 | /* | 543 | /* |
543 | * success: return IRQ number (>=0) | 544 | * success: return IRQ number (>=0) |
diff --git a/arch/x86/pci/xen.c b/arch/x86/pci/xen.c index 08e3cdccdfa8..3a4ab0b4dcca 100644 --- a/arch/x86/pci/xen.c +++ b/arch/x86/pci/xen.c | |||
@@ -53,6 +53,12 @@ static int xen_hvm_register_pirq(u32 gsi, int triggering) | |||
53 | 53 | ||
54 | return irq; | 54 | return irq; |
55 | } | 55 | } |
56 | |||
57 | static int acpi_register_gsi_xen_hvm(struct device *dev, u32 gsi, | ||
58 | int trigger, int polarity) | ||
59 | { | ||
60 | return xen_hvm_register_pirq(gsi, trigger); | ||
61 | } | ||
56 | #endif | 62 | #endif |
57 | 63 | ||
58 | #if defined(CONFIG_PCI_MSI) | 64 | #if defined(CONFIG_PCI_MSI) |