<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/stable/linux-stable.git/drivers/pci, branch linux-2.6.39.y</title>
<subtitle>Linux kernel stable tree</subtitle>
<id>https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/atom?h=linux-2.6.39.y</id>
<link rel='self' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/atom?h=linux-2.6.39.y'/>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/'/>
<updated>2011-08-03T19:42:42+00:00</updated>
<entry>
<title>mmc: Added quirks for Ricoh 1180:e823 lower base clock frequency</title>
<updated>2011-08-03T19:42:42+00:00</updated>
<author>
<name>Manoj Iyer</name>
<email>manoj.iyer@canonical.com</email>
</author>
<published>2011-07-11T21:28:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=10ecd66736d5e34cc2e85c9b0705a785fc8d7068'/>
<id>urn:sha1:10ecd66736d5e34cc2e85c9b0705a785fc8d7068</id>
<content type='text'>
commit 15bed0f2fa8e1d7db201692532c210a7823d2d21 upstream.

Ricoh 1180:e823 does not recognize certain types of SD/MMC cards,
as reported at http://launchpad.net/bugs/773524.  Lowering the SD
base clock frequency from 200Mhz to 50Mhz fixes this issue. This
solution was suggest by Koji Matsumuro, Ricoh Company, Ltd.

This change has no negative performance effect on standard SD
cards, though it's quite possible that there will be one on
UHS-1 cards.

Signed-off-by: Manoj Iyer &lt;manoj.iyer@canonical.com&gt;
Tested-by: Daniel Manrique &lt;daniel.manrique@canonical.com&gt;
Cc: Koji Matsumuro &lt;matsumur@nts.ricoh.co.jp&gt;
Acked-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>PCI / PM: Block races between runtime PM and system sleep</title>
<updated>2011-07-09T06:15:25+00:00</updated>
<author>
<name>Rafael J. Wysocki</name>
<email>rjw@sisk.pl</email>
</author>
<published>2011-06-21T21:47:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=d1657494cad496bf8e45cad7c236236c4a1a5a0d'/>
<id>urn:sha1:d1657494cad496bf8e45cad7c236236c4a1a5a0d</id>
<content type='text'>
commit a5f76d5eba157bf637beb2dd18026db2917c512e upstream.

After commit e8665002477f0278f84f898145b1f141ba26ee26
(PM: Allow pm_runtime_suspend() to succeed during system suspend) it
is possible that a device resumed by the pm_runtime_resume(dev) in
pci_pm_prepare() will be suspended immediately from a work item,
timer function or otherwise, defeating the very purpose of calling
pm_runtime_resume(dev) from there.  To prevent that from happening
it is necessary to increment the runtime PM usage counter of the
device by replacing pm_runtime_resume() with pm_runtime_get_sync().
Moreover, the incremented runtime PM usage counter has to be
decremented by the corresponding pci_pm_complete(), via
pm_runtime_put_sync().

Signed-off-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Acked-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>mmc: Add PCI fixup quirks for Ricoh 1180:e823 reader</title>
<updated>2011-07-09T06:15:12+00:00</updated>
<author>
<name>Manoj Iyer</name>
<email>manoj.iyer@canonical.com</email>
</author>
<published>2011-05-26T16:19:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=0c79f65e8d8ce889bbafa63f3ecf4dd7b9c91eaf'/>
<id>urn:sha1:0c79f65e8d8ce889bbafa63f3ecf4dd7b9c91eaf</id>
<content type='text'>
commit be98ca652faa6468916a9b7608befff215a8ca70 upstream.

Signed-off-by: Manoj Iyer &lt;manoj.iyer@canonical.com&gt;
Signed-off-by: Chris Ball &lt;cjb@laptop.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>PCI: Set PCIE maxpayload for card during hotplug insertion</title>
<updated>2011-06-23T22:05:34+00:00</updated>
<author>
<name>Jordan_Hargrave@Dell.com</name>
<email>Jordan_Hargrave@Dell.com</email>
</author>
<published>2011-05-09T20:24:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=a9c48a40ee2a8e5bf07515ec4cfcd349b8f0f8ad'/>
<id>urn:sha1:a9c48a40ee2a8e5bf07515ec4cfcd349b8f0f8ad</id>
<content type='text'>
commit e522a7126c7c144a1dd14c6f217ac31e71082b1d upstream.

The following patch sets the MaxPayload setting to match the parent
reading when inserting a PCIE card into a hotplug slot.  On our system,
the upstream bridge is set to 256, but when inserting a card, the card
setting defaults to 128.  As soon as I/O is performed to the card it
starts receiving errors since the payload size is too small.

Reviewed-by: Kenji Kaneshige &lt;kaneshige.kenji@jp.fujitsu.com&gt;
Signed-off-by: Jordan Hargrave &lt;jordan_hargrave@dell.com&gt;
Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>intel-iommu: Add domain check in domain_remove_one_dev_info</title>
<updated>2011-06-23T22:05:31+00:00</updated>
<author>
<name>Mike Habeck</name>
<email>habeck@sgi.com</email>
</author>
<published>2011-05-28T18:15:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=f4f6cfc11c3481c36cc3c8cff15dd756ddf1748e'/>
<id>urn:sha1:f4f6cfc11c3481c36cc3c8cff15dd756ddf1748e</id>
<content type='text'>
commit 8519dc4401ddf8a5399f979870bbeeadbc111186 upstream.

The comment in domain_remove_one_dev_info() states "No need to compare
PCI domain; it has to be the same". But for the si_domain that isn't
going to be true, as it consists of all the PCI devices that are
identity mapped thus multiple PCI domains can be in si_domain.  The
code needs to validate the PCI domain too.

Signed-off-by: Mike Habeck &lt;habeck@sgi.com&gt;
Signed-off-by: Mike Travis &lt;travis@sgi.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>intel-iommu: Remove Host Bridge devices from identity mapping</title>
<updated>2011-06-23T22:05:31+00:00</updated>
<author>
<name>Mike Travis</name>
<email>travis@sgi.com</email>
</author>
<published>2011-05-28T18:15:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=b8f794de1463ab32ed90c97ad6edbcecd931abed'/>
<id>urn:sha1:b8f794de1463ab32ed90c97ad6edbcecd931abed</id>
<content type='text'>
commit 825507d6d059f1cbe2503e0e5a3926225b983aec upstream.

When using the 1:1 (identity) PCI DMA remapping, PCI Host Bridge devices
that do not use the IOMMU causes a kernel panic.  Fix that by not
inserting those devices into the si_domain.

Signed-off-by: Mike Travis &lt;travis@sgi.com&gt;
Reviewed-by: Mike Habeck &lt;habeck@sgi.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>intel-iommu: Use coherent DMA mask when requested</title>
<updated>2011-06-23T22:05:31+00:00</updated>
<author>
<name>Mike Travis</name>
<email>travis@sgi.com</email>
</author>
<published>2011-05-28T18:15:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=80ebe0ace73cb376f66bdeeb92f4e7b5d4a3f8fb'/>
<id>urn:sha1:80ebe0ace73cb376f66bdeeb92f4e7b5d4a3f8fb</id>
<content type='text'>
commit c681d0ba1252954208220ad32248a3e8e2fc98e4 upstream.

The __intel_map_single function is not honoring the passed in DMA mask.
This results in not using the coherent DMA mask when called from
intel_alloc_coherent().

Signed-off-by: Mike Travis &lt;travis@sgi.com&gt;
Acked-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
Reviewed-by: Mike Habeck &lt;habeck@sgi.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>intel-iommu: Dont cache iova above 32bit</title>
<updated>2011-06-23T22:05:31+00:00</updated>
<author>
<name>Chris Wright</name>
<email>chrisw@sous-sol.org</email>
</author>
<published>2011-05-28T18:15:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=87cc4d1e3e05af38c7c51323a3d86fe2572ab033'/>
<id>urn:sha1:87cc4d1e3e05af38c7c51323a3d86fe2572ab033</id>
<content type='text'>
commit 1c9fc3d11b84fbd0c4f4aa7855702c2a1f098ebb upstream.

Mike Travis and Mike Habeck reported an issue where iova allocation
would return a range that was larger than a device's dma mask.

https://lkml.org/lkml/2011/3/29/423

The dmar initialization code will reserve all PCI MMIO regions and copy
those reservations into a domain specific iova tree.  It is possible for
one of those regions to be above the dma mask of a device.  It is typical
to allocate iovas with a 32bit mask (despite device's dma mask possibly
being larger) and cache the result until it exhausts the lower 32bit
address space.  Freeing the iova range that is &gt;= the last iova in the
lower 32bit range when there is still an iova above the 32bit range will
corrupt the cached iova by pointing it to a region that is above 32bit.
If that region is also larger than the device's dma mask, a subsequent
allocation will return an unusable iova and cause dma failure.

Simply don't cache an iova that is above the 32bit caching boundary.

Reported-by: Mike Travis &lt;travis@sgi.com&gt;
Reported-by: Mike Habeck &lt;habeck@sgi.com&gt;
Acked-by: Mike Travis &lt;travis@sgi.com&gt;
Tested-by: Mike Habeck &lt;habeck@sgi.com&gt;
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>intel-iommu: Speed up processing of the identity_mapping function</title>
<updated>2011-06-23T22:05:31+00:00</updated>
<author>
<name>Mike Travis</name>
<email>travis@sgi.com</email>
</author>
<published>2011-05-28T18:15:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=3a2bc9ae5ee092a0db8aa07d695e15b14a3fe2a4'/>
<id>urn:sha1:3a2bc9ae5ee092a0db8aa07d695e15b14a3fe2a4</id>
<content type='text'>
commit cb452a4040bb051d92e85d6e7eb60c11734c1781 upstream.

When there are a large count of PCI devices, and the pass through
option for iommu is set, much time is spent in the identity_mapping
function hunting though the iommu domains to check if a specific
device is "identity mapped".

Speed up the function by checking the cached info to see if
it's mapped to the static identity domain.

Signed-off-by: Mike Travis &lt;travis@sgi.com&gt;
Reviewed-by: Mike Habeck &lt;habeck@sgi.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>intel-iommu: Check for identity mapping candidate using system dma mask</title>
<updated>2011-06-23T22:05:31+00:00</updated>
<author>
<name>Chris Wright</name>
<email>chrisw@sous-sol.org</email>
</author>
<published>2011-05-28T18:15:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=001a5287ce15ac855136d9912ba3a71e40befa0a'/>
<id>urn:sha1:001a5287ce15ac855136d9912ba3a71e40befa0a</id>
<content type='text'>
commit 8fcc5372fbac085199d84a880503ed67aba3fe49 upstream.

The identity mapping code appears to make the assumption that if the
devices dma_mask is greater than 32bits the device can use identity
mapping.  But that is not true: take the case where we have a 40bit
device in a 44bit architecture. The device can potentially receive a
physical address that it will truncate and cause incorrect addresses
to be used.

Instead check to see if the device's dma_mask is large enough
to address the system's dma_mask.

Signed-off-by: Mike Travis &lt;travis@sgi.com&gt;
Reviewed-by: Mike Habeck &lt;habeck@sgi.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
</feed>
