<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/arch/x86/kernel/quirks.c, branch v3.0.45</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>x86: HPET force enable for CX700 / VIA Epia LT</title>
<updated>2010-09-15T14:27:04+00:00</updated>
<author>
<name>Udo van den Heuvel</name>
<email>udovdh@xs4all.nl</email>
</author>
<published>2010-09-14T05:15:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=892df7f81c31ce7f85778aa78094e8d1f19b8413'/>
<id>892df7f81c31ce7f85778aa78094e8d1f19b8413</id>
<content type='text'>
Allow using HPET with the hpet=force command line option on VIA EPIA
CX700 systems.

Signed-off-by: Udo van den Heuvel &lt;udovdh@xs4all.nl&gt;
Cc: Robert Hancock &lt;hancockrwd@gmail.com&gt;
LKML-Reference:  &lt;4C8F04DC.5060303@xs4all.nl&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Allow using HPET with the hpet=force command line option on VIA EPIA
CX700 systems.

Signed-off-by: Udo van den Heuvel &lt;udovdh@xs4all.nl&gt;
Cc: Robert Hancock &lt;hancockrwd@gmail.com&gt;
LKML-Reference:  &lt;4C8F04DC.5060303@xs4all.nl&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>x86: Force HPET readback_cmp for all ATI chipsets</title>
<updated>2010-07-15T15:10:02+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2010-07-14T19:36:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=08be97962bf338161325d4901642f956ce8c1adb'/>
<id>08be97962bf338161325d4901642f956ce8c1adb</id>
<content type='text'>
commit 30a564be (x86, hpet: Restrict read back to affected ATI
chipset) restricted the workaround for the HPET bug to SMX00
chipsets. This was reasonable as those were the only ones against
which we ever got a bug report.

Stephan Wolf reported now that this patch breaks his IXP400 based
machine. Though it's confirmed to work on other IXP400 based systems.

To error out on the safe side, we force the HPET readback workaround
for all ATI SMbus class chipsets.

Reported-by: Stephan Wolf &lt;stephan@letzte-bankreihe.de&gt;
LKML-Reference: &lt;alpine.LFD.2.00.1007142134140.3321@localhost.localdomain&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Tested-by: Stephan Wolf &lt;stephan@letzte-bankreihe.de&gt;
Acked-by: Borislav Petkov &lt;borislav.petkov@amd.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 30a564be (x86, hpet: Restrict read back to affected ATI
chipset) restricted the workaround for the HPET bug to SMX00
chipsets. This was reasonable as those were the only ones against
which we ever got a bug report.

Stephan Wolf reported now that this patch breaks his IXP400 based
machine. Though it's confirmed to work on other IXP400 based systems.

To error out on the safe side, we force the HPET readback workaround
for all ATI SMbus class chipsets.

Reported-by: Stephan Wolf &lt;stephan@letzte-bankreihe.de&gt;
LKML-Reference: &lt;alpine.LFD.2.00.1007142134140.3321@localhost.localdomain&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Tested-by: Stephan Wolf &lt;stephan@letzte-bankreihe.de&gt;
Acked-by: Borislav Petkov &lt;borislav.petkov@amd.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>x86, hpet: Add reference to chipset erratum documentation for disable-hpet-msi-quirk</title>
<updated>2010-05-17T17:04:43+00:00</updated>
<author>
<name>Andreas Herrmann</name>
<email>andreas.herrmann3@amd.com</email>
</author>
<published>2010-05-17T16:43:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=fec84e330719c20d2146c8dbdc9ff50b3a1d7039'/>
<id>fec84e330719c20d2146c8dbdc9ff50b3a1d7039</id>
<content type='text'>
(At the moment the "SB700 Family Product Errata" document is available
at http://support.amd.com/us/Embedded_TechDocs/46837.pdf)

Signed-off-by: Andreas Herrmann &lt;andreas.herrmann3@amd.com&gt;
LKML-Reference: &lt;20100517164324.GB10254@alberich.amd.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(At the moment the "SB700 Family Product Errata" document is available
at http://support.amd.com/us/Embedded_TechDocs/46837.pdf)

Signed-off-by: Andreas Herrmann &lt;andreas.herrmann3@amd.com&gt;
LKML-Reference: &lt;20100517164324.GB10254@alberich.amd.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>x86, hpet: Restrict read back to affected ATI chipsets</title>
<updated>2010-04-29T01:14:29+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2010-04-13T13:31:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=30a564be9d9554c168a654eddc2165869cc0d7bf'/>
<id>30a564be9d9554c168a654eddc2165869cc0d7bf</id>
<content type='text'>
After programming the HPET, we do a readback as a workaround for
ATI/SBx00 chipsets as a synchronization.  Unfortunately this triggers
an erratum in newer ICH chipsets (ICH9+) where reading the comparator
immediately after the write returns the old value.  Furthermore, as
always, I/O reads are bad for performance.

Therefore, restrict the readback to the chipsets that need it, or, for
debugging purposes, when we are running with hpet=verbose.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Acked-by: Venkatesh Pallipadi &lt;venki@google.com&gt;
LKML-Reference: &lt;20100225185348.GA9674@linux-os.sc.intel.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
After programming the HPET, we do a readback as a workaround for
ATI/SBx00 chipsets as a synchronization.  Unfortunately this triggers
an erratum in newer ICH chipsets (ICH9+) where reading the comparator
immediately after the write returns the old value.  Furthermore, as
always, I/O reads are bad for performance.

Therefore, restrict the readback to the chipsets that need it, or, for
debugging purposes, when we are running with hpet=verbose.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Acked-by: Venkatesh Pallipadi &lt;venki@google.com&gt;
LKML-Reference: &lt;20100225185348.GA9674@linux-os.sc.intel.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>x86: Disable HPET MSI on ATI SB700/SB800</title>
<updated>2010-01-23T05:21:58+00:00</updated>
<author>
<name>Pallipadi, Venkatesh</name>
<email>venkatesh.pallipadi@intel.com</email>
</author>
<published>2010-01-21T19:09:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=73472a46b5b28116b145fb5fc05242c1aa8e1461'/>
<id>73472a46b5b28116b145fb5fc05242c1aa8e1461</id>
<content type='text'>
HPET MSI on platforms with ATI SB700/SB800 as they seem to have some
side-effects on floppy DMA. Do not use HPET MSI on such platforms.

Original problem report from Mark Hounschell
http://lkml.indiana.edu/hypermail/linux/kernel/0912.2/01118.html

[ This patch needs to go to stable as well. But, there are some
  conflicts that prevents the patch from going as is. I can
  rebase/resubmit to stable once the patch goes upstream.
  hpa: still Cc:'ing stable@ as an FYI. ]

Tested-by: Mark Hounschell &lt;markh@compro.net&gt;
Signed-off-by: Venkatesh Pallipadi &lt;venkatesh.pallipadi@intel.com&gt;
Cc: &lt;stable@kernel.org&gt;
LKML-Reference: &lt;20100121190952.GA32523@linux-os.sc.intel.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
HPET MSI on platforms with ATI SB700/SB800 as they seem to have some
side-effects on floppy DMA. Do not use HPET MSI on such platforms.

Original problem report from Mark Hounschell
http://lkml.indiana.edu/hypermail/linux/kernel/0912.2/01118.html

[ This patch needs to go to stable as well. But, there are some
  conflicts that prevents the patch from going as is. I can
  rebase/resubmit to stable once the patch goes upstream.
  hpa: still Cc:'ing stable@ as an FYI. ]

Tested-by: Mark Hounschell &lt;markh@compro.net&gt;
Signed-off-by: Venkatesh Pallipadi &lt;venkatesh.pallipadi@intel.com&gt;
Cc: &lt;stable@kernel.org&gt;
LKML-Reference: &lt;20100121190952.GA32523@linux-os.sc.intel.com&gt;
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>x86: AMD Northbridge: Verify NB's node is online</title>
<updated>2009-11-16T14:43:05+00:00</updated>
<author>
<name>Prarit Bhargava</name>
<email>prarit@redhat.com</email>
</author>
<published>2009-11-12T18:09:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=303fc0870f8fbfabe260c5c32b18e53458d597ea'/>
<id>303fc0870f8fbfabe260c5c32b18e53458d597ea</id>
<content type='text'>
Fix panic seen on some IBM and HP systems on 2.6.32-rc6:

 BUG: unable to handle kernel NULL pointer dereference at (null)
 IP: [&lt;ffffffff8120bf3f&gt;] find_next_bit+0x77/0x9c
  [...]
  [&lt;ffffffff8120bbde&gt;] cpumask_next_and+0x2e/0x3b
  [&lt;ffffffff81225c62&gt;] pci_device_probe+0x8e/0xf5
  [&lt;ffffffff812b9be6&gt;] ? driver_sysfs_add+0x47/0x6c
  [&lt;ffffffff812b9da5&gt;] driver_probe_device+0xd9/0x1f9
  [&lt;ffffffff812b9f1d&gt;] __driver_attach+0x58/0x7c
  [&lt;ffffffff812b9ec5&gt;] ? __driver_attach+0x0/0x7c
  [&lt;ffffffff812b9298&gt;] bus_for_each_dev+0x54/0x89
  [&lt;ffffffff812b9b4f&gt;] driver_attach+0x19/0x1b
  [&lt;ffffffff812b97ae&gt;] bus_add_driver+0xd3/0x23d
  [&lt;ffffffff812ba1e7&gt;] driver_register+0x98/0x109
  [&lt;ffffffff81225ed0&gt;] __pci_register_driver+0x63/0xd3
  [&lt;ffffffff81072776&gt;] ? up_read+0x26/0x2a
  [&lt;ffffffffa0081000&gt;] ? k8temp_init+0x0/0x20 [k8temp]
  [&lt;ffffffffa008101e&gt;] k8temp_init+0x1e/0x20 [k8temp]
  [&lt;ffffffff8100a073&gt;] do_one_initcall+0x6d/0x185
  [&lt;ffffffff8108d765&gt;] sys_init_module+0xd3/0x236
  [&lt;ffffffff81011ac2&gt;] system_call_fastpath+0x16/0x1b

I put in a printk and commented out the set_dev_node()
call when and got this output:

 quirk_amd_nb_node: current numa_node = 0x0, would set to val &amp; 7 = 0x0
 quirk_amd_nb_node: current numa_node = 0x0, would set to val &amp; 7 = 0x1
 quirk_amd_nb_node: current numa_node = 0x0, would set to val &amp; 7 = 0x2
 quirk_amd_nb_node: current numa_node = 0x0, would set to val &amp; 7 = 0x3

I.e. the issue appears to be that the HW has set val to a valid
value, however, the system is only configured for a single
node -- 0, the others are offline.

Check to see if the node is actually online before setting
the numa node for an AMD northbridge in quirk_amd_nb_node().

Signed-off-by: Prarit Bhargava &lt;prarit@redhat.com&gt;
Cc: bhavna.sarathy@amd.com
Cc: jbarnes@virtuousgeek.org
Cc: andreas.herrmann3@amd.com
LKML-Reference: &lt;20091112180933.12532.98685.sendpatchset@prarit.bos.redhat.com&gt;
[ v2: clean up the code and add comments ]
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix panic seen on some IBM and HP systems on 2.6.32-rc6:

 BUG: unable to handle kernel NULL pointer dereference at (null)
 IP: [&lt;ffffffff8120bf3f&gt;] find_next_bit+0x77/0x9c
  [...]
  [&lt;ffffffff8120bbde&gt;] cpumask_next_and+0x2e/0x3b
  [&lt;ffffffff81225c62&gt;] pci_device_probe+0x8e/0xf5
  [&lt;ffffffff812b9be6&gt;] ? driver_sysfs_add+0x47/0x6c
  [&lt;ffffffff812b9da5&gt;] driver_probe_device+0xd9/0x1f9
  [&lt;ffffffff812b9f1d&gt;] __driver_attach+0x58/0x7c
  [&lt;ffffffff812b9ec5&gt;] ? __driver_attach+0x0/0x7c
  [&lt;ffffffff812b9298&gt;] bus_for_each_dev+0x54/0x89
  [&lt;ffffffff812b9b4f&gt;] driver_attach+0x19/0x1b
  [&lt;ffffffff812b97ae&gt;] bus_add_driver+0xd3/0x23d
  [&lt;ffffffff812ba1e7&gt;] driver_register+0x98/0x109
  [&lt;ffffffff81225ed0&gt;] __pci_register_driver+0x63/0xd3
  [&lt;ffffffff81072776&gt;] ? up_read+0x26/0x2a
  [&lt;ffffffffa0081000&gt;] ? k8temp_init+0x0/0x20 [k8temp]
  [&lt;ffffffffa008101e&gt;] k8temp_init+0x1e/0x20 [k8temp]
  [&lt;ffffffff8100a073&gt;] do_one_initcall+0x6d/0x185
  [&lt;ffffffff8108d765&gt;] sys_init_module+0xd3/0x236
  [&lt;ffffffff81011ac2&gt;] system_call_fastpath+0x16/0x1b

I put in a printk and commented out the set_dev_node()
call when and got this output:

 quirk_amd_nb_node: current numa_node = 0x0, would set to val &amp; 7 = 0x0
 quirk_amd_nb_node: current numa_node = 0x0, would set to val &amp; 7 = 0x1
 quirk_amd_nb_node: current numa_node = 0x0, would set to val &amp; 7 = 0x2
 quirk_amd_nb_node: current numa_node = 0x0, would set to val &amp; 7 = 0x3

I.e. the issue appears to be that the HW has set val to a valid
value, however, the system is only configured for a single
node -- 0, the others are offline.

Check to see if the node is actually online before setting
the numa node for an AMD northbridge in quirk_amd_nb_node().

Signed-off-by: Prarit Bhargava &lt;prarit@redhat.com&gt;
Cc: bhavna.sarathy@amd.com
Cc: jbarnes@virtuousgeek.org
Cc: andreas.herrmann3@amd.com
LKML-Reference: &lt;20091112180933.12532.98685.sendpatchset@prarit.bos.redhat.com&gt;
[ v2: clean up the code and add comments ]
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>x86/PCI: pci quirks, fix pci refcounting</title>
<updated>2009-09-09T21:11:02+00:00</updated>
<author>
<name>Jiri Slaby</name>
<email>jirislaby@gmail.com</email>
</author>
<published>2009-09-08T10:16:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=748df9a4c65625c386674c9b54dde73de6cc5af5'/>
<id>748df9a4c65625c386674c9b54dde73de6cc5af5</id>
<content type='text'>
Stanse found a pci reference leak in quirk_amd_nb_node.
Instead of putting nb_ht, there is a put of dev passed as
an argument.

http://stanse.fi.muni.cz/

Signed-off-by: Jiri Slaby &lt;jirislaby@gmail.com&gt;
Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Stanse found a pci reference leak in quirk_amd_nb_node.
Instead of putting nb_ht, there is a put of dev passed as
an argument.

http://stanse.fi.muni.cz/

Signed-off-by: Jiri Slaby &lt;jirislaby@gmail.com&gt;
Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'linus' into x86/cpu</title>
<updated>2009-06-07T10:22:15+00:00</updated>
<author>
<name>Ingo Molnar</name>
<email>mingo@elte.hu</email>
</author>
<published>2009-06-07T10:22:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=5f4457a4f62cc9d78e04c0eb12ff0540899aad89'/>
<id>5f4457a4f62cc9d78e04c0eb12ff0540899aad89</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>x86, hpet: Stop soliciting hpet=force users on ICH4M</title>
<updated>2009-04-24T06:41:39+00:00</updated>
<author>
<name>Len Brown</name>
<email>len.brown@intel.com</email>
</author>
<published>2009-04-23T23:19:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d2c8604121648b744ebb127991f1c5876931885e'/>
<id>d2c8604121648b744ebb127991f1c5876931885e</id>
<content type='text'>
The HPET in the ICH4M is not documented in the data sheet
because it was not officially validated.

While it is fine for hackers to continue to use "hpet=force"
to enable the hardware that they have, it is not prudent to
solicit additional "hpet=force" users on this hardware.

[ Impact: remove hpet=force syslog message on old-ICH systems ]

Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
Acked-by: Venkatesh Pallipadi &lt;venkatesh.pallipadi@intel.com&gt;
LKML-Reference: &lt;alpine.LFD.2.00.0904231918510.15843@localhost.localdomain&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The HPET in the ICH4M is not documented in the data sheet
because it was not officially validated.

While it is fine for hackers to continue to use "hpet=force"
to enable the hardware that they have, it is not prudent to
solicit additional "hpet=force" users on this hardware.

[ Impact: remove hpet=force syslog message on old-ICH systems ]

Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
Acked-by: Venkatesh Pallipadi &lt;venkatesh.pallipadi@intel.com&gt;
LKML-Reference: &lt;alpine.LFD.2.00.0904231918510.15843@localhost.localdomain&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>x86: fixup numa_node information for AMD CPU northbridge functions</title>
<updated>2009-04-17T16:12:36+00:00</updated>
<author>
<name>Andreas Herrmann</name>
<email>andreas.herrmann3@amd.com</email>
</author>
<published>2009-04-17T10:07:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9b94b3a19b13e094c10f65f24bc358f6ffe4eacd'/>
<id>9b94b3a19b13e094c10f65f24bc358f6ffe4eacd</id>
<content type='text'>
Currently the numa_node attribute for these PCI devices is 0 (it
corresponds to the numa_node for PCI bus 0). This is not a big issue
but incorrect.

This inconsistency can be fixed by reading the node number from CPU
NB function 0.

[ Impact: fill in dev-&gt;numa_node information, to optimize DMA allocations ]

Signed-off-by: Andreas Herrmann &lt;andreas.herrmann3@amd.com&gt;
Cc: jbarnes@virtuousgeek.org
LKML-Reference: &lt;20090417100746.GG16198@alberich.amd.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently the numa_node attribute for these PCI devices is 0 (it
corresponds to the numa_node for PCI bus 0). This is not a big issue
but incorrect.

This inconsistency can be fixed by reading the node number from CPU
NB function 0.

[ Impact: fill in dev-&gt;numa_node information, to optimize DMA allocations ]

Signed-off-by: Andreas Herrmann &lt;andreas.herrmann3@amd.com&gt;
Cc: jbarnes@virtuousgeek.org
LKML-Reference: &lt;20090417100746.GG16198@alberich.amd.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
</feed>
