patch-2.4.0-test2 linux/arch/i386/kernel/acpi.c
Next file: linux/arch/i386/kernel/apic.c
Previous file: linux/arch/i386/kernel/Makefile
Back to the patch index
Back to the overall index
- Lines: 44
- Date:
Mon Jun 19 12:56:08 2000
- Orig file:
v2.4.0-test1/linux/arch/i386/kernel/acpi.c
- Orig date:
Tue May 23 15:31:33 2000
diff -u --recursive --new-file v2.4.0-test1/linux/arch/i386/kernel/acpi.c linux/arch/i386/kernel/acpi.c
@@ -700,7 +700,7 @@
if (!(pmregmisc & ACPI_PIIX4_PMIOSE))
return -ENODEV;
- base = dev->resource[PCI_BRIDGE_RESOURCES].start & PCI_BASE_ADDRESS_IO_MASK;
+ base = pci_resource_start (dev, PCI_BRIDGE_RESOURCES);
if (!base)
return -ENODEV;
@@ -759,7 +759,6 @@
if (!base)
return -ENODEV;
}
- base &= PCI_BASE_ADDRESS_IO_MASK;
pci_read_config_byte(dev, 0x42, &irq);
@@ -824,7 +823,7 @@
{acpi_init_via},
};
-const static struct pci_device_id acpi_pci_tbl[] =
+static struct pci_device_id acpi_pci_tbl[] __initdata =
{
{0x8086, 0x7113, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CH_INTEL_PIIX4},
{0x1106, 0x3040, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CH_VIA_586},
@@ -1169,6 +1168,8 @@
acpi_sleep_start = get_cmos_time();
acpi_enter_dx(ACPI_D3);
+ // disable interrupts globally while suspended
+ cli();
acpi_sleep_state = state;
facp = (struct acpi_facp*) acpi_facp.table;
@@ -1191,6 +1192,8 @@
// finished sleeping, update system time
acpi_update_clock();
acpi_enter_dx(ACPI_D0);
+ // reenable interrupts globally after resume
+ sti();
acpi_sleep_state = ACPI_S0;
return 0;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)