diff options
-rw-r--r-- | drivers/acpi/bus.c | 6 | ||||
-rw-r--r-- | drivers/acpi/scan.c | 4 | ||||
-rw-r--r-- | include/acpi/acpi_drivers.h | 1 |
3 files changed, 7 insertions, 4 deletions
diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c index ccae305ee55d..0e0bbc6209e5 100644 --- a/drivers/acpi/bus.c +++ b/drivers/acpi/bus.c | |||
@@ -749,6 +749,12 @@ static int __init acpi_bus_init(void) | |||
749 | goto error1; | 749 | goto error1; |
750 | } | 750 | } |
751 | 751 | ||
752 | /* | ||
753 | * Maybe EC region is required at bus_scan/acpi_get_devices. So it | ||
754 | * is necessary to enable it as early as possible. | ||
755 | */ | ||
756 | acpi_boot_ec_enable(); | ||
757 | |||
752 | printk(KERN_INFO PREFIX "Interpreter enabled\n"); | 758 | printk(KERN_INFO PREFIX "Interpreter enabled\n"); |
753 | 759 | ||
754 | /* Initialize sleep structures */ | 760 | /* Initialize sleep structures */ |
diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c index f6f52c1a2aba..2ae218f5ea59 100644 --- a/drivers/acpi/scan.c +++ b/drivers/acpi/scan.c | |||
@@ -1545,7 +1545,6 @@ static int acpi_bus_scan_fixed(struct acpi_device *root) | |||
1545 | return result; | 1545 | return result; |
1546 | } | 1546 | } |
1547 | 1547 | ||
1548 | int __init acpi_boot_ec_enable(void); | ||
1549 | 1548 | ||
1550 | static int __init acpi_scan_init(void) | 1549 | static int __init acpi_scan_init(void) |
1551 | { | 1550 | { |
@@ -1579,9 +1578,6 @@ static int __init acpi_scan_init(void) | |||
1579 | */ | 1578 | */ |
1580 | result = acpi_bus_scan_fixed(acpi_root); | 1579 | result = acpi_bus_scan_fixed(acpi_root); |
1581 | 1580 | ||
1582 | /* EC region might be needed at bus_scan, so enable it now */ | ||
1583 | acpi_boot_ec_enable(); | ||
1584 | |||
1585 | if (!result) | 1581 | if (!result) |
1586 | result = acpi_bus_scan(acpi_root, &ops); | 1582 | result = acpi_bus_scan(acpi_root, &ops); |
1587 | 1583 | ||
diff --git a/include/acpi/acpi_drivers.h b/include/acpi/acpi_drivers.h index e5f38e5ce86f..ab926a70b39f 100644 --- a/include/acpi/acpi_drivers.h +++ b/include/acpi/acpi_drivers.h | |||
@@ -100,6 +100,7 @@ int acpi_power_transition(struct acpi_device *device, int state); | |||
100 | -------------------------------------------------------------------------- */ | 100 | -------------------------------------------------------------------------- */ |
101 | #ifdef CONFIG_ACPI_EC | 101 | #ifdef CONFIG_ACPI_EC |
102 | int acpi_ec_ecdt_probe(void); | 102 | int acpi_ec_ecdt_probe(void); |
103 | int acpi_boot_ec_enable(void); | ||
103 | #endif | 104 | #endif |
104 | 105 | ||
105 | /* -------------------------------------------------------------------------- | 106 | /* -------------------------------------------------------------------------- |