https://bugzilla.kernel.org/show_bug.cgi?id=43228





--- Comment #14 from Peter <lekenst...@gmail.com>  2012-05-16 22:43:53 ---
I wish I could say yes, but it fails with:

    ACPI: Device [PEGP] failed to transition to D4

Looking at your changes, it became clear that code in __acpi_bus_set_power is
wrongly placed. It should be placed in the statement following the "state <
device->power.state" condition, not the else-statement after. Otherwise, it
causes the function to call _PS4 (fails).

Now this fixes it at boot, but on suspend/resume I get the error again if
bbswitch tries to put the device back in D3 state. bbswitch:

 1. Before suspend, it turns the card back on: bbswitch_on().
 2. bbswitch_on() calls pci_set_power_state(dis_dev, PCI_D0); somewhere
 3. After resume, it turns the card back off if necessary: bbswitch_off().
 4. bbswitch_off() calls pci_set_power_state(dis_dev, PCI_D3hot);

Before the D3 changes, I had no issues with suspend/resume. Perhaps there are
more places where ACPI_STATE_D3 (4) should become .._HOT (3)? Do you want be to
test the suspend/resume process while setting object_name[3] = '3' earlier
(i.e. right before the if/else as in my last patch)?

-- 
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

Reply via email to