Hi, On Thu, Apr 05, 2012 at 10:31:20AM +0800, Lin Ming wrote: > > > > The only situation where a device can be put into ACPI D3_hot (which is not > > the same as PCI D3_hot, mind you) is when: > > > > (1) There is _PR3 listing some of the device's power resources as "on". > > (2) The power resources listed by the _PR3 as "off" are turned off and the > > power resources listed by the _PR3 as "on" are left in the "on" state. > > I don't understand item (2): > > If the power resource is listed as "off", which means it's already > turned off. Then why should it be turned off again? Rafael, I think you misunderstand the meaning of _PR3. The _PR3 will evaluate a list of power resources, not two lists(one "on" list and one "off" list), as illustrated by Ming below. And for a device to be put to D3 hot, it should: 1 execuate _PS3 first if available 2 turn on all the power resources referenced by _PR3 And for a device to be put to D3 cold, it should: 1 execute _PS3 first if available 2 turn off power resources referenced by _PRx, where x is the previous state number of the device. Say if the device is put to D3 cold from D0, the x would be 0. Is this correct? Thank, Aaron > > Let's see an example > > Assume a device "dev0" depends on 5 power resources: > > pr1, pr2, pr3, pr4, pr5 > > _PR3 lists 3 power resources: pr3, pr4, pr5 > > Device(dev0) > { > Name(_PR3, Package (0x03) > { > pr3, > pr4, > pr5 > }) > } > > If dev0 is put into ACPI D3_hot and pr1 and pr2 are not referenced by > other devices, then it requires: > > - pr1 and pr2 are off > - pr3, pr4 and pr5 are on > > right? > > Thanks, > Lin Ming > > > -- 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