aboutsummaryrefslogtreecommitdiffstats
path: root/arch/tile/kernel/pci.c
diff options
context:
space:
mode:
authorYijing Wang <wangyijing@huawei.com>2013-09-09 09:13:04 -0400
committerBjorn Helgaas <bhelgaas@google.com>2013-09-24 14:10:04 -0400
commit503275bf371fbab01a14f2e9fd1ac7aa20c81645 (patch)
tree295daeca82f990fce2400440234526af6b1bb264 /arch/tile/kernel/pci.c
parentf1c66c4678ad223bda0dcd261e4048f009234f85 (diff)
tile/PCI: use cached pci_dev->pcie_mpss to simplify code
The PCI core caches the "PCIe Max Payload Size Supported" in pci_dev->pcie_mpss, so use that instead of pcie_capability_read_dword(). Signed-off-by: Yijing Wang <wangyijing@huawei.com> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'arch/tile/kernel/pci.c')
-rw-r--r--arch/tile/kernel/pci.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/tile/kernel/pci.c b/arch/tile/kernel/pci.c
index b7180e6e900d..c45593db7718 100644
--- a/arch/tile/kernel/pci.c
+++ b/arch/tile/kernel/pci.c
@@ -251,15 +251,12 @@ static void fixup_read_and_payload_sizes(void)
251 /* Scan for the smallest maximum payload size. */ 251 /* Scan for the smallest maximum payload size. */
252 for_each_pci_dev(dev) { 252 for_each_pci_dev(dev) {
253 u32 devcap; 253 u32 devcap;
254 int max_payload;
255 254
256 if (!pci_is_pcie(dev)) 255 if (!pci_is_pcie(dev))
257 continue; 256 continue;
258 257
259 pcie_capability_read_dword(dev, PCI_EXP_DEVCAP, &devcap); 258 if (dev->pcie_mpss < smallest_max_payload)
260 max_payload = devcap & PCI_EXP_DEVCAP_PAYLOAD; 259 smallest_max_payload = dev->pcie_mpss;
261 if (max_payload < smallest_max_payload)
262 smallest_max_payload = max_payload;
263 } 260 }
264 261
265 /* Now, set the max_payload_size for all devices to that value. */ 262 /* Now, set the max_payload_size for all devices to that value. */