* [PATCH] ACPI: Do not touch legacy irq in Hardware Reduced ACPI mode
@ 2012-09-25 1:37 Zhang Rui
2012-10-19 17:16 ` Len Brown
0 siblings, 1 reply; 2+ messages in thread
From: Zhang Rui @ 2012-09-25 1:37 UTC (permalink / raw)
To: Len, Brown; +Cc: linux-acpi@vger.kernel.org
>From 3a60407725e92bbb05e4d723863fe4bd810bdc5e Mon Sep 17 00:00:00 2001
From: Zhang Rui <rui.zhang@intel.com>
Date: Tue, 25 Sep 2012 09:31:08 +0800
Subject: [PATCH] Do not touch legacy irq in Hardware Reduced ACPI mode
In Hardware Reduced ACPI mode, there is neither SCI nor legacy IRQ,
thus we should not touch any of these.
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
---
arch/x86/kernel/acpi/boot.c | 11 ++++++++++-
drivers/acpi/pci_link.c | 3 +++
2 files changed, 13 insertions(+), 1 deletions(-)
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
index b2297e5..f44648f 100644
--- a/arch/x86/kernel/acpi/boot.c
+++ b/arch/x86/kernel/acpi/boot.c
@@ -373,6 +373,10 @@ acpi_parse_ioapic(struct acpi_subtable_header * header, const unsigned long end)
*/
static void __init acpi_sci_ioapic_setup(u8 bus_irq, u16 polarity, u16 trigger, u32 gsi)
{
+ /* No SCI in Hardware Reduced Mode */
+ if (acpi_gbl_reduced_hardware)
+ return;
+
if (trigger == 0) /* compatible SCI trigger is level */
trigger = 3;
@@ -992,6 +996,10 @@ void __init mp_config_acpi_legacy_irqs(void)
int i;
struct mpc_intsrc mp_irq;
+ /* No legacy IRQ in Hardware Reduced Mode */
+ if (acpi_gbl_reduced_hardware)
+ return;
+
#ifdef CONFIG_EISA
/*
* Fabricate the legacy ISA bus (bus #31).
@@ -1109,7 +1117,8 @@ int mp_register_gsi(struct device *dev, u32 gsi, int trigger, int polarity)
return gsi;
/* Don't set up the ACPI SCI because it's already set up */
- if (acpi_gbl_FADT.sci_interrupt == gsi)
+ if (!acpi_gbl_reduced_hardware &&
+ acpi_gbl_FADT.sci_interrupt == gsi)
return gsi;
ioapic = mp_find_ioapic(gsi);
diff --git a/drivers/acpi/pci_link.c b/drivers/acpi/pci_link.c
index a128082..95ce198 100644
--- a/drivers/acpi/pci_link.c
+++ b/drivers/acpi/pci_link.c
@@ -481,6 +481,9 @@ int __init acpi_irq_penalty_init(void)
struct acpi_pci_link *link;
int i;
+ /* No irq penalty in Hardware Reduced Mode */
+ if (acpi_gbl_reduced_hardware)
+ return 0;
/*
* Update penalties to facilitate IRQ balancing.
*/
--
1.7.7.6
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] ACPI: Do not touch legacy irq in Hardware Reduced ACPI mode
2012-09-25 1:37 [PATCH] ACPI: Do not touch legacy irq in Hardware Reduced ACPI mode Zhang Rui
@ 2012-10-19 17:16 ` Len Brown
0 siblings, 0 replies; 2+ messages in thread
From: Len Brown @ 2012-10-19 17:16 UTC (permalink / raw)
To: Zhang Rui; +Cc: linux-acpi@vger.kernel.org
> @@ -481,6 +481,9 @@ int __init acpi_irq_penalty_init(void)
> struct acpi_pci_link *link;
> int i;
>
> + /* No irq penalty in Hardware Reduced Mode */
> + if (acpi_gbl_reduced_hardware)
> + return 0;
> /*
> * Update penalties to facilitate IRQ balancing.
> */
Although there is no PIC in hw-reduced mode,
and even though "PCI Interrupt Link Devices" are typically
used to describe PIC interrupts in IOAPIC mode,
I think that Links may still be used in straight IOAPIC mode --
at least in theory.
So it isn't clear that we can categorically disable Link support
in HW-reduced mode.
thanks,
Len Brown, Intel Open Source Technology Center
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-10-19 17:16 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-25 1:37 [PATCH] ACPI: Do not touch legacy irq in Hardware Reduced ACPI mode Zhang Rui
2012-10-19 17:16 ` Len Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).