<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/include/acpi, branch v2.6.33.11</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/include/acpi?h=v2.6.33.11</id>
<link rel='self' href='https://git.amat.us/linux/atom/include/acpi?h=v2.6.33.11'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2010-08-02T17:26:45Z</updated>
<entry>
<title>ACPI: skip checking BM_STS if the BIOS doesn't ask for it</title>
<updated>2010-08-02T17:26:45Z</updated>
<author>
<name>Len Brown</name>
<email>len.brown@intel.com</email>
</author>
<published>2010-07-22T20:54:27Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=75676db2d5fe83904ca91c6c40ac81aad54b6493'/>
<id>urn:sha1:75676db2d5fe83904ca91c6c40ac81aad54b6493</id>
<content type='text'>
commit 718be4aaf3613cf7c2d097f925abc3d3553c0605 upstream.

It turns out that there is a bit in the _CST for Intel FFH C3
that tells the OS if we should be checking BM_STS or not.

Linux has been unconditionally checking BM_STS.
If the chip-set is configured to enable BM_STS,
it can retard or completely prevent entry into
deep C-states -- as illustrated by turbostat:

http://userweb.kernel.org/~lenb/acpi/utils/pmtools/turbostat/

ref: Intel Processor Vendor-Specific ACPI Interface Specification
table 4 "_CST FFH GAS Field Encoding"
Bit 1: Set to 1 if OSPM should use Bus Master avoidance for this C-state

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

Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>Merge branch 'bugzilla-14483' into release</title>
<updated>2010-01-20T06:14:50Z</updated>
<author>
<name>Len Brown</name>
<email>len.brown@intel.com</email>
</author>
<published>2010-01-20T06:14:50Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=378fa825f63b026ecb8660370298d74678cac319'/>
<id>urn:sha1:378fa825f63b026ecb8660370298d74678cac319</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ACPI: don't cond_resched if irq is disabled</title>
<updated>2010-01-16T06:35:36Z</updated>
<author>
<name>Xiaotian Feng</name>
<email>dfeng@redhat.com</email>
</author>
<published>2009-12-10T11:56:45Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c084ca704a3661bf77690a05bc6bd2c305d87c34'/>
<id>urn:sha1:c084ca704a3661bf77690a05bc6bd2c305d87c34</id>
<content type='text'>
commit 8bd108d adds preemption point after each opcode parse, then
a sleeping function called from invalid context bug was founded
during suspend/resume stage. this was fixed in commit abe1dfa by
don't cond_resched when irq_disabled. But recent commit 138d156 changes
the behaviour to don't cond_resched when in_atomic. This makes the
sleeping function called from invalid context bug happen again, which
is reported in http://lkml.org/lkml/2009/12/1/371.

This patch also fixes http://bugzilla.kernel.org/show_bug.cgi?id=14483

Reported-and-bisected-by: Larry Finger &lt;Larry.Finger@lwfinger.net&gt;
Reported-and-bisected-by: Justin P. Mattock &lt;justinmattock@gmail.com&gt;
Signed-off-by: Xiaotian Feng &lt;dfeng@redhat.com&gt;
Acked-by: Alexey Starikovskiy &lt;astarikovskiy@suse.de&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI: processor: remove _PDC object list from struct acpi_processor</title>
<updated>2009-12-22T08:35:16Z</updated>
<author>
<name>Alex Chiang</name>
<email>achiang@hp.com</email>
</author>
<published>2009-12-20T19:23:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e59897fe443b5b0a71e135ef4020d1937c9f8901'/>
<id>urn:sha1:e59897fe443b5b0a71e135ef4020d1937c9f8901</id>
<content type='text'>
When we call _PDC, we get a handle to the processor, allocate the
object list buffer as needed, and free it immediately after calling
_PDC.

There's no need to drag around this object list with us everywhere
else, so let's just get rid of it.

Signed-off-by: Alex Chiang &lt;achiang@hp.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI: processor: change acpi_processor_set_pdc() interface</title>
<updated>2009-12-22T08:33:58Z</updated>
<author>
<name>Alex Chiang</name>
<email>achiang@hp.com</email>
</author>
<published>2009-12-20T19:23:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=43bab25ced218385f7e6a076c2459ea008cfd2e1'/>
<id>urn:sha1:43bab25ced218385f7e6a076c2459ea008cfd2e1</id>
<content type='text'>
When calling _PDC, we really only need the handle to the processor
to call the method; we don't look at any other parts of the
struct acpi_processor * given to us.

In the early path, when we walk the namespace, we are given the
handle directly, so just pass it through to acpi_processor_set_pdc()
without stuffing it into a wasteful struct acpi_processor allocated
on the stack each time

This saves 2834 bytes of stack.

Update the interface accordingly.

Signed-off-by: Alex Chiang &lt;achiang@hp.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI: processor: unify arch_acpi_processor_cleanup_pdc</title>
<updated>2009-12-22T08:24:14Z</updated>
<author>
<name>Alex Chiang</name>
<email>achiang@hp.com</email>
</author>
<published>2009-12-20T19:19:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=47817254b8637b56730aec26eed2c337d3938bb5'/>
<id>urn:sha1:47817254b8637b56730aec26eed2c337d3938bb5</id>
<content type='text'>
The x86 and ia64 implementations of the function in $subject are
exactly the same.

Also, since the arch-specific implementations of setting _PDC have
been completely hollowed out, remove the empty shells.

Cc: Tony Luck &lt;tony.luck@intel.com&gt;
Cc: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Ingo Molnar &lt;mingo@redhat.com&gt;
Cc: "H. Peter Anvin" &lt;hpa@zytor.com&gt;
Signed-off-by: Alex Chiang &lt;achiang@hp.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI: processor: finish unifying arch_acpi_processor_init_pdc()</title>
<updated>2009-12-22T08:24:13Z</updated>
<author>
<name>Alex Chiang</name>
<email>achiang@hp.com</email>
</author>
<published>2009-12-20T19:19:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6c5807d7bc7d051fce00863ffb98d36325501eb2'/>
<id>urn:sha1:6c5807d7bc7d051fce00863ffb98d36325501eb2</id>
<content type='text'>
The only thing arch-specific about calling _PDC is what bits get
set in the input obj_list buffer.

There's no need for several levels of indirection to twiddle those
bits. Additionally, since we're just messing around with a buffer,
we can simplify the interface; no need to pass around the entire
struct acpi_processor * just to get at the buffer.

Cc: Tony Luck &lt;tony.luck@intel.com&gt;
Cc: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Ingo Molnar &lt;mingo@redhat.com&gt;
Cc: "H. Peter Anvin" &lt;hpa@zytor.com&gt;
Signed-off-by: Alex Chiang &lt;achiang@hp.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI: processor: call _PDC early</title>
<updated>2009-12-22T08:24:08Z</updated>
<author>
<name>Alex Chiang</name>
<email>achiang@hp.com</email>
</author>
<published>2009-12-20T19:19:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=78f1699659963fff97975df44db6d5dbe7218e55'/>
<id>urn:sha1:78f1699659963fff97975df44db6d5dbe7218e55</id>
<content type='text'>
We discovered that at least one machine (HP Envy), methods in the DSDT
attempt to call external methods defined in a dynamically loaded SSDT.

Unfortunately, the DSDT methods we are trying to call are part of the
EC initialization, which happens very early, and the the dynamic SSDT
is only loaded when a processor _PDC method runs much later.

This results in namespace lookup errors for the (as of yet) undefined
methods.

Since Windows doesn't have any issues with this machine, we take it
as a hint that they must be evaluating _PDC much earlier than we are.

Thus, the proper thing for Linux to do should be to match the Windows
implementation more closely.

Provide a mechanism to call _PDC before we enable the EC. Doing so loads
the dynamic tables, and allows the EC to be enabled correctly.

The ACPI processor driver will still evaluate _PDC in its .add() method
to cover the hotplug case.

Resolves: http://bugzilla.kernel.org/show_bug.cgi?id=14824

Cc: ming.m.lin@intel.com
Signed-off-by: Alex Chiang &lt;achiang@hp.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ost' into release</title>
<updated>2009-12-16T07:18:36Z</updated>
<author>
<name>Len Brown</name>
<email>len.brown@intel.com</email>
</author>
<published>2009-12-16T07:18:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8fa79e08f50f4ec1fd8903eca6fd6f36c36dd4c4'/>
<id>urn:sha1:8fa79e08f50f4ec1fd8903eca6fd6f36c36dd4c4</id>
<content type='text'>
Conflicts:
	include/acpi/processor.h

Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'acpica' into release</title>
<updated>2009-12-16T03:27:39Z</updated>
<author>
<name>Len Brown</name>
<email>len.brown@intel.com</email>
</author>
<published>2009-12-16T03:27:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=173cc11a6e10c38ff7d4949b48e8d2eb0aee3e05'/>
<id>urn:sha1:173cc11a6e10c38ff7d4949b48e8d2eb0aee3e05</id>
<content type='text'>
</content>
</entry>
</feed>
