https://bugzilla.kernel.org/show_bug.cgi?id=43228
--- Comment #9 from Rafael J. Wysocki <r...@sisk.pl> 2012-05-16 19:33:35 --- Well, this is not a correct fix. I would prefer it if you didn't guess things, but tried to understand what really happened instead. :-) acpi_bus_get_power_flags() works as intended, ie. it only sets the "valid" flag for ACPI_STATE_D3_HOT if _PR3 is present, so the problem has to be elsewhere. So, let's see why it still doesn't work with the patch from comment #5 applied. * pci_set_power_state(dis_dev, PCI_D3hot) is called. * __pci_complete_power_transition(dev, PCI_D3hot) is called. * pci_platform_power_transition(dev, PCI_D3hot) is called. * platform_pci_set_power_state(dev, PCI_D3hot) is called. This calls pci_platform_pm->set_state() with the same arguments, which for ACPI points to acpi_pci_set_power_state(). * acpi_pci_set_power_state(dev, PCI_D3hot) is called. With the patch from comment #5 applied it choses ACPI_STATE_D3 as the argument for acpi_bus_set_power(), which calls __acpi_bus_set_power(device, ACPI_STATE_D3), where ACPI_STATE_D3 == 4 as you have observed already. * Thus object_name[] contains the string "_PS4", which obviously doesn't represent anything meaningful, right? So, in addition to the patch in comment #5 we need the following change in __acpi_bus_set_power(): Index: linux/drivers/acpi/bus.c =================================================================== --- linux.orig/drivers/acpi/bus.c +++ linux/drivers/acpi/bus.c @@ -250,6 +250,10 @@ static int __acpi_bus_set_power(struct a return -ENODEV; } + /* _PS3 should be executed for transitions into D3cold. */ + if (state == ACPI_STATE_D3_COLD) + object_name[3] = '3'; + /* * Transition Power * ---------------- I'll attach an updated patch in a while. -- Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching the assignee of the bug. ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ acpi-bugzilla mailing list acpi-bugzilla@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla