mirror of https://gitee.com/openkylin/linux.git
[ACPI] revert Embedded Controller to polling-mode by default (ala 2.6.12)
Burst mode isn't ready for prime time, but can be enabled for test via "ec_burst=1" Signed-off-by: Luming Yu <luming.yu@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
parent
ecc21ebe60
commit
7b15f5e7bb
|
@ -76,13 +76,14 @@ static int acpi_ec_remove (struct acpi_device *device, int type);
|
|||
static int acpi_ec_start (struct acpi_device *device);
|
||||
static int acpi_ec_stop (struct acpi_device *device, int type);
|
||||
static int acpi_ec_burst_add ( struct acpi_device *device);
|
||||
static int acpi_ec_polling_add ( struct acpi_device *device);
|
||||
|
||||
static struct acpi_driver acpi_ec_driver = {
|
||||
.name = ACPI_EC_DRIVER_NAME,
|
||||
.class = ACPI_EC_CLASS,
|
||||
.ids = ACPI_EC_HID,
|
||||
.ops = {
|
||||
.add = acpi_ec_burst_add,
|
||||
.add = acpi_ec_polling_add,
|
||||
.remove = acpi_ec_remove,
|
||||
.start = acpi_ec_start,
|
||||
.stop = acpi_ec_stop,
|
||||
|
@ -164,7 +165,7 @@ static union acpi_ec *ec_ecdt;
|
|||
|
||||
/* External interfaces use first EC only, so remember */
|
||||
static struct acpi_device *first_ec;
|
||||
static int acpi_ec_polling_mode;
|
||||
static int acpi_ec_polling_mode = EC_POLLING;
|
||||
|
||||
/* --------------------------------------------------------------------------
|
||||
Transaction Management
|
||||
|
@ -1710,11 +1711,24 @@ static int __init acpi_fake_ecdt_setup(char *str)
|
|||
acpi_fake_ecdt_enabled = 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
__setup("acpi_fake_ecdt", acpi_fake_ecdt_setup);
|
||||
static int __init acpi_ec_set_polling_mode(char *str)
|
||||
{
|
||||
acpi_ec_polling_mode = EC_POLLING;
|
||||
acpi_ec_driver.ops.add = acpi_ec_polling_add;
|
||||
int burst;
|
||||
|
||||
if (!get_option(&str, &burst))
|
||||
return 0;
|
||||
|
||||
if (burst) {
|
||||
acpi_ec_polling_mode = EC_BURST;
|
||||
acpi_ec_driver.ops.add = acpi_ec_burst_add;
|
||||
} else {
|
||||
acpi_ec_polling_mode = EC_POLLING;
|
||||
acpi_ec_driver.ops.add = acpi_ec_polling_add;
|
||||
}
|
||||
printk(KERN_INFO PREFIX "EC %s mode.\n",
|
||||
burst ? "burst": "polling");
|
||||
return 0;
|
||||
}
|
||||
__setup("ec_polling", acpi_ec_set_polling_mode);
|
||||
__setup("ec_burst=", acpi_ec_set_polling_mode);
|
||||
|
|
Loading…
Reference in New Issue