History

ACPI / LPSS: Power up LPSS devices during enumeration

Commit 7cd8407 (ACPI / PM: Do not execute _PS0 for devices without _PSC during initialization) introduced a regression on some systems with Intel Lynxpoint Low-Power Subsystem (LPSS) where some devices need to be powered up during initialization, but their device objects in the ACPI namespace have _PS0 and _PS3 only (without _PSC or power resources). To work around this problem, make the ACPI LPSS driver power up devices it knows about by using a new helper function acpi_device_fix_up_power() that does all of the necessary sanity checks and calls acpi_dev_pm_explicit_set() to put the device into D0.

Rafael J. Wysocki committed 13 years ago

Commit b9e95fc1 parent 6ee22e93 files · +36 −6Browse files

Showing the changes to include (1 of 3 files). Show all

Unified · Split

include/acpi/acpi_bus.h+1−0
@@ -382,6 +382,7 @@ const char *acpi_power_state_string(int state); · 381 unmodified lines
382int acpi_device_get_power(struct acpi_device *device, int *state);382int acpi_device_get_power(struct acpi_device *device, int *state);
383int acpi_device_set_power(struct acpi_device *device, int state);383int acpi_device_set_power(struct acpi_device *device, int state);
384int acpi_bus_init_power(struct acpi_device *device);384int acpi_bus_init_power(struct acpi_device *device);
385int acpi_device_fix_up_power(struct acpi_device *device);
385int acpi_bus_update_power(acpi_handle handle, int *state_p);386int acpi_bus_update_power(acpi_handle handle, int *state_p);
386bool acpi_bus_power_manageable(acpi_handle handle);387bool acpi_bus_power_manageable(acpi_handle handle);
387 388