On Sun, Nov 25, 2012 at 03:58:14PM +0100, Rafael J. Wysocki wrote: > From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> > > Drivers usually expect that the devices they are supposed to handle > will be operational when their .probe() routines are called, but that > need not be the case on some ACPI-based systems with ACPI-based > device enumeration where the BIOSes don't put devices into D0 by > default. To work around this problem it is sufficient to change > bus type .probe() routines to ensure that devices will be powered > on before the drivers' .probe() routines run (and their .remove() > and .shutdown() routines accordingly). > > Modify platform_drv_probe() to run acpi_dev_pm_attach() for devices > whose ACPI handles are present, so that ACPI power management is used > to change their power states and change their power states to D0 > before driver probing. Analogously, modify platform_drv_remove() and > platform_drv_shutdown() to call acpi_dev_pm_detach() for those > devices, so that they are not subject to ACPI PM any more. > > Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> Acked-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html