ChangeSet 1.1445, 2005/05/06 09:24:37+01:00, kaf24@xxxxxxxxxxxxxxxxxxxx
More acpi cleanups. Fix 'acpi=ht'.
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
acpi/Makefile | 4 ++++
acpi/boot.c | 6 ------
mpparse.c | 13 ++++++++++++-
setup.c | 8 ++++----
4 files changed, 20 insertions(+), 11 deletions(-)
diff -Nru a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/Makefile
b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/Makefile
--- a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/Makefile
2005-05-06 05:03:04 -04:00
+++ b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/Makefile
2005-05-06 05:03:04 -04:00
@@ -7,3 +7,7 @@
$(patsubst %.o,$(obj)/%.c,$(c-obj-y) $(c-link)):
@ln -fsn $(srctree)/arch/i386/kernel/acpi/$(notdir $@) $@
+obj-y += $(c-obj-y) $(s-obj-y)
+
+clean-files += $(patsubst %.o,%.c,$(c-obj-y) $(c-obj-) $(c-link))
+clean-files += $(patsubst %.o,%.S,$(s-obj-y) $(s-obj-) $(s-link))
diff -Nru a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/boot.c
b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/boot.c
--- a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/boot.c 2005-05-06
05:03:04 -04:00
+++ b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/boot.c 2005-05-06
05:03:04 -04:00
@@ -672,10 +672,6 @@
{
int count;
-#ifdef CONFIG_XEN
- return 0;
-#endif
-
/*
* Note that the LAPIC address is obtained from the MADT (32-bit value)
* and (optionally) overriden by a LAPIC_ADDR_OVR entry (64-bit value).
@@ -871,9 +867,7 @@
}
#ifdef __i386__
-#ifndef CONFIG_XEN
check_acpi_pci();
-#endif
#endif
acpi_table_parse(ACPI_BOOT, acpi_parse_sbf);
diff -Nru a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/mpparse.c
b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/mpparse.c
--- a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/mpparse.c 2005-05-06
05:03:04 -04:00
+++ b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/mpparse.c 2005-05-06
05:03:04 -04:00
@@ -109,7 +109,7 @@
{
return hweight_long(apicid & 0xf) == 1 && (apicid >> 4) != 0xf;
}
-#else
+#elif !defined(CONFIG_XEN)
static int MP_valid_apicid(int apicid, int version)
{
if (version >= 0x14)
@@ -119,6 +119,7 @@
}
#endif
+#ifndef CONFIG_XEN
void __init MP_processor_info (struct mpc_config_processor *m)
{
int ver, apicid;
@@ -217,6 +218,12 @@
apic_version[m->mpc_apicid] = ver;
bios_cpu_apicid[num_processors - 1] = m->mpc_apicid;
}
+#else
+void __init MP_processor_info (struct mpc_config_processor *m)
+{
+ num_processors++;
+}
+#endif /* CONFIG_XEN */
static void __init MP_bus_info (struct mpc_config_bus *m)
{
@@ -816,12 +823,14 @@
void __init mp_register_lapic_address (
u64 address)
{
+#ifndef CONFIG_XEN
mp_lapic_addr = (unsigned long) address;
if (boot_cpu_physical_apicid == -1U)
boot_cpu_physical_apicid = GET_APIC_ID(apic_read(APIC_ID));
Dprintk("Boot CPU = %d\n", boot_cpu_physical_apicid);
+#endif
}
@@ -841,6 +850,7 @@
if (id == boot_cpu_physical_apicid)
boot_cpu = 1;
+#ifndef CONFIG_XEN
processor.mpc_type = MP_PROCESSOR;
processor.mpc_apicid = id;
processor.mpc_apicver = GET_APIC_VERSION(apic_read(APIC_LVR));
@@ -851,6 +861,7 @@
processor.mpc_featureflag = boot_cpu_data.x86_capability[0];
processor.mpc_reserved[0] = 0;
processor.mpc_reserved[1] = 0;
+#endif
MP_processor_info(&processor);
}
diff -Nru a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/setup.c
b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/setup.c
--- a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/setup.c 2005-05-06
05:03:04 -04:00
+++ b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/setup.c 2005-05-06
05:03:04 -04:00
@@ -1567,6 +1567,10 @@
if (efi_enabled)
efi_map_memmap();
+ op.cmd = PHYSDEVOP_SET_IOPL;
+ op.u.set_iopl.iopl = current->thread.io_pl = 1;
+ HYPERVISOR_physdev_op(&op);
+
/*
* Parse the ACPI tables for possible boot-time SMP configuration.
*/
@@ -1583,10 +1587,6 @@
noirqdebug_setup("");
register_memory();
-
- op.cmd = PHYSDEVOP_SET_IOPL;
- op.u.set_iopl.iopl = current->thread.io_pl = 1;
- HYPERVISOR_physdev_op(&op);
if (xen_start_info.flags & SIF_INITDOMAIN) {
if (!(xen_start_info.flags & SIF_PRIVILEGED))
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|