<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/acpi/sleep.c, branch linux-2.6.36.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.36.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.36.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2010-09-24T20:52:02Z</updated>
<entry>
<title>PM / ACPI: Blacklist systems known to require acpi_sleep=nonvs</title>
<updated>2010-09-24T20:52:02Z</updated>
<author>
<name>Rafael J. Wysocki</name>
</author>
<published>2010-09-24T20:46:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=539986482b0db07b7164ab086d167ab99b4d3061'/>
<id>urn:sha1:539986482b0db07b7164ab086d167ab99b4d3061</id>
<content type='text'>
Commit 2a6b69765ad794389f2fc3e14a0afa1a995221c2 (ACPI: Store NVS
state even when entering suspend to RAM) changed the ACPI suspend
to RAM code so that the NVS memory area is always unconditionally
saved during suspend and restored during resume, since some systems
evidently need that for the suspend-resume to work on them.  However,
it turned out that this change broke suspend-resume on a few systems,
so commit 72ad5d77fb981963edae15eee8196c80238f5ed0 (ACPI / Sleep:
Allow the NVS saving to be skipped during suspend to RAM) introduced
the acpi_sleep=nonvs command line switch to allow their users to
work around this issue.  To keep track of the systems that require
this workaround and to make the life of their users slightly easier
blacklist them in acpisleep_dmi_table[].

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

Signed-off-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'acpica-gpe' into release</title>
<updated>2010-08-15T04:25:40Z</updated>
<author>
<name>Len Brown</name>
</author>
<published>2010-08-15T04:25:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c172cb73bc79fe69915b1a1a48e374aa4b1f8a59'/>
<id>urn:sha1:c172cb73bc79fe69915b1a1a48e374aa4b1f8a59</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'nvs' into release</title>
<updated>2010-08-15T03:55:44Z</updated>
<author>
<name>Len Brown</name>
</author>
<published>2010-08-15T03:55:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f2a66185bed21427d8d347a42eaf0ad1d3d9fc63'/>
<id>urn:sha1:f2a66185bed21427d8d347a42eaf0ad1d3d9fc63</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ACPI / Sleep: Allow the NVS saving to be skipped during suspend to RAM</title>
<updated>2010-07-25T03:26:09Z</updated>
<author>
<name>Rafael J. Wysocki</name>
</author>
<published>2010-07-23T20:59:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=72ad5d77fb981963edae15eee8196c80238f5ed0'/>
<id>urn:sha1:72ad5d77fb981963edae15eee8196c80238f5ed0</id>
<content type='text'>
Commit 2a6b69765ad794389f2fc3e14a0afa1a995221c2
(ACPI: Store NVS state even when entering suspend to RAM) caused the
ACPI suspend code save the NVS area during suspend and restore it
during resume unconditionally, although it is known that some systems
need to use acpi_sleep=s4_nonvs for hibernation to work.  To allow
the affected systems to avoid saving and restoring the NVS area
during suspend to RAM and resume, introduce kernel command line
option acpi_sleep=nonvs and make acpi_sleep=s4_nonvs work as its
alias temporarily (add acpi_sleep=s4_nonvs to the feature removal
file).

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

Signed-off-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Reported-and-tested-by: tomas m &lt;tmezzadra@gmail.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPICA: Introduce acpi_gpe_wakeup()</title>
<updated>2010-07-07T02:34:26Z</updated>
<author>
<name>Rafael J. Wysocki</name>
</author>
<published>2010-06-24T23:18:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e8b6f970107cfc9c00cdcdb12ec6c7e135cf379f'/>
<id>urn:sha1:e8b6f970107cfc9c00cdcdb12ec6c7e135cf379f</id>
<content type='text'>
ACPICA uses reference counters to avoid disabling GPEs too early in
case they have been enabled for many times.  This is done separately
for runtime and for wakeup, but the wakeup GPE reference counter is
not really necessary, because GPEs are only enabled to wake up the
system at the hardware level by acpi_enter_sleep_state().  Thus it
only is necessary to set the corresponding bits in the wakeup enable
masks of these GPEs' registers right before the system enters a sleep
state.  Moreover, the GPE wakeup enable bits can only be set when the
target sleep state of the system is known and they need to be cleared
immediately after wakeup regardless of how many wakeup devices are
associated with a given GPE.

On the basis of the above observations, introduce function
acpi_gpe_wakeup() to be used for setting or clearing the enable bit
corresponding to a given GPE in its enable register's enable_for_wake
mask.  Modify the ACPI suspend and wakeup code the use
acpi_gpe_wakeup() instead of acpi_{enable|disable}_gpe() to set
and clear GPE enable bits in their registers' enable_for_wake masks
during system transitions to a sleep state and back to the working
state, respectively.  [This will allow us to drop the third
argument of acpi_{enable|disable}_gpe() and simplify the GPE
handling code.]

Signed-off-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
Signed-off-by: Bob Moore &lt;robert.moore@intel.com&gt;
Signed-off-by: Lin Ming &lt;ming.m.lin@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI / Sleep: Drop acpi_suspend_finish()</title>
<updated>2010-07-07T02:14:30Z</updated>
<author>
<name>Rafael J. Wysocki</name>
</author>
<published>2010-07-01T22:14:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=618d7fd0d4e51a45d25d9bc6097a0cb1e5a2f226'/>
<id>urn:sha1:618d7fd0d4e51a45d25d9bc6097a0cb1e5a2f226</id>
<content type='text'>
The function acpi_suspend_finish() is not necessary any more, because
acpi_pm_finish() can be used instead of it just fine.  Remove it.

Signed-off-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI / Sleep: Consolidate suspend and hibernation routines</title>
<updated>2010-07-07T02:14:19Z</updated>
<author>
<name>Rafael J. Wysocki</name>
</author>
<published>2010-07-01T22:14:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c5f7a1bb65bca03253c189e946b3ca79669f08af'/>
<id>urn:sha1:c5f7a1bb65bca03253c189e946b3ca79669f08af</id>
<content type='text'>
Some hibernation and suspend routines can be merged, which reduces
the complexity of code a bit.

Signed-off-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI / Wakeup: Simplify enabling of wakeup devices</title>
<updated>2010-07-07T02:09:38Z</updated>
<author>
<name>Rafael J. Wysocki</name>
</author>
<published>2010-07-07T02:09:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=78f5f023167813130d2cf657d1b9eadc32f0e992'/>
<id>urn:sha1:78f5f023167813130d2cf657d1b9eadc32f0e992</id>
<content type='text'>
To simplify the enabling of wakeup devices during system suspend and
hibernation, merge acpi_enable_wakeup_device_prep() with
acpi_disable_wakeup_device() and remove unnecessary (and no longer
valid) comments from the latter.  Rename acpi_enable_wakeup_device()
to acpi_enable_wakeup_devices() and acpi_disable_wakeup_device()
to acpi_disable_wakeup_devices(), because these functions usually
operate on multiple device objects.

Signed-off-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI / Sleep: Rework enabling wakeup devices</title>
<updated>2010-07-06T22:29:47Z</updated>
<author>
<name>Rafael J. Wysocki</name>
</author>
<published>2010-07-01T22:12:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=25bed55753b8cf243406e8837990b55946c5278d'/>
<id>urn:sha1:25bed55753b8cf243406e8837990b55946c5278d</id>
<content type='text'>
There is no reason why acpi_enable_wakeup_device() should be called
with interrupts disabled, because it doesn't access hardware.  Thus
it is possible to move it next to acpi_enable_wakeup_device_prep()
and make the ACPI suspend, hibernate and poweroff code more
straightforward.

Signed-off-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI / Sleep: Free NVS copy if suspending of devices fails</title>
<updated>2010-07-06T22:28:35Z</updated>
<author>
<name>Rafael J. Wysocki</name>
</author>
<published>2010-07-06T22:28:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e96c4b081df0991a57b244f68c3955a9ea00bd0a'/>
<id>urn:sha1:e96c4b081df0991a57b244f68c3955a9ea00bd0a</id>
<content type='text'>
If suspending of devices fails or system suspend is tested in the
"devices" mode, the memory allocated for storing a copy of the ACPI
NVS area will not be freed, because acpi_pm_finish() is not called
in that case.  Fix this by moving the suspend_nvs_free() call to
acpi_pm_end().

Signed-off-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
</feed>
