WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] Xen can parse the ACPI tables to get IOAPIC information

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] Xen can parse the ACPI tables to get IOAPIC information -- we can rely
From: BitKeeper Bot <riel@xxxxxxxxxxx>
Date: Fri, 06 May 2005 09:51:46 +0000
Delivery-date: Fri, 06 May 2005 10:05:50 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: Xen Development List <xen-devel@xxxxxxxxxxxxxxxxxxx>
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
ChangeSet 1.1447, 2005/05/06 10:51:46+01:00, kaf24@xxxxxxxxxxxxxxxxxxxx

        Xen can parse the ACPI tables to get IOAPIC information -- we can rely
        on domain0 to fill in information we miss because Xen lacks an ACPI
        interpreter.
        Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>



 acpi.c    |   12 ++++++++++--
 mpparse.c |    4 ++--
 2 files changed, 12 insertions(+), 4 deletions(-)


diff -Nru a/xen/arch/x86/acpi.c b/xen/arch/x86/acpi.c
--- a/xen/arch/x86/acpi.c       2005-05-06 06:06:21 -04:00
+++ b/xen/arch/x86/acpi.c       2005-05-06 06:06:21 -04:00
@@ -189,7 +189,7 @@
 
 #endif /*CONFIG_X86_LOCAL_APIC*/
 
-#if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI_INTERPRETER)
+#if defined(CONFIG_X86_IO_APIC) /*&& defined(CONFIG_ACPI_INTERPRETER)*/
 
 static int __init
 acpi_parse_ioapic (
@@ -211,6 +211,7 @@
        return 0;
 }
 
+#ifdef CONFIG_ACPI_INTERPRETER
 /*
  * Parse Interrupt Source Override for the ACPI SCI
  */
@@ -244,6 +245,7 @@
        acpi_sci_override_gsi = gsi;
        return;
 }
+#endif
 
 static int __init
 acpi_parse_fadt(unsigned long phys, unsigned long size)
@@ -277,11 +279,13 @@
 
        acpi_table_print_madt_entry(header);
 
+#ifdef CONFIG_ACPI_INTERPRETER
        if (intsrc->bus_irq == acpi_fadt.sci_int) {
                acpi_sci_ioapic_setup(intsrc->global_irq,
                        intsrc->flags.polarity, intsrc->flags.trigger);
                return 0;
        }
+#endif
 
        mp_override_legacy_irq (
                intsrc->bus_irq,
@@ -460,13 +464,14 @@
 
 #endif /*CONFIG_X86_LOCAL_APIC*/
 
-#if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI_INTERPRETER)
+#if defined(CONFIG_X86_IO_APIC) /*&& defined(CONFIG_ACPI_INTERPRETER)*/
 
        /* 
         * I/O APIC 
         * --------
         */
 
+#if 0
        /*
         * ACPI interpreter is required to complete interrupt setup,
         * so if it is off, don't enumerate the io-apics with ACPI.
@@ -476,6 +481,7 @@
        if (acpi_disabled || acpi_noirq) {
                return 1;
        }
+#endif
 
        /*
         * if "noapic" boot option, don't look for IO-APICs
@@ -510,12 +516,14 @@
                return result;
        }
 
+#ifdef CONFIG_ACPI_INTERPRETER
        /*
         * If BIOS did not supply an INT_SRC_OVR for the SCI
         * pretend we got one so we can set the SCI flags.
         */
        if (!acpi_sci_override_gsi)
                acpi_sci_ioapic_setup(acpi_fadt.sci_int, 0, 0);
+#endif
 
        result = acpi_table_parse_madt(ACPI_MADT_NMI_SRC, acpi_parse_nmi_src);
        if (result < 0) {
diff -Nru a/xen/arch/x86/mpparse.c b/xen/arch/x86/mpparse.c
--- a/xen/arch/x86/mpparse.c    2005-05-06 06:06:21 -04:00
+++ b/xen/arch/x86/mpparse.c    2005-05-06 06:06:21 -04:00
@@ -1017,7 +1017,7 @@
        MP_processor_info(&processor);
 }
 
-#if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_ACPI_INTERPRETER)
+#if defined(CONFIG_X86_IO_APIC) /*&& defined(CONFIG_ACPI_INTERPRETER)*/
 
 #define MP_ISA_BUS             0
 #define MP_MAX_IOAPIC_PIN      127
@@ -1085,7 +1085,7 @@
        mp_ioapic_routing[idx].irq_end = irq_base + 
                io_apic_get_redir_entries(idx);
 
-       printk("IOAPIC[%d]: apic_id %d, version %d, address 0x%lx, "
+       printk("IOAPIC[%d]: apic_id %d, version %d, address 0x%x, "
                "IRQ %d-%d\n", idx, mp_ioapics[idx].mpc_apicid, 
                mp_ioapics[idx].mpc_apicver, mp_ioapics[idx].mpc_apicaddr,
                mp_ioapic_routing[idx].irq_start,

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] Xen can parse the ACPI tables to get IOAPIC information -- we can rely, BitKeeper Bot <=