diff options
Diffstat (limited to 'arch/arm/mach-tegra/pcie.c')
-rw-r--r-- | arch/arm/mach-tegra/pcie.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/arch/arm/mach-tegra/pcie.c b/arch/arm/mach-tegra/pcie.c index 3463fb5b79c7..a8dba6489c9b 100644 --- a/arch/arm/mach-tegra/pcie.c +++ b/arch/arm/mach-tegra/pcie.c | |||
@@ -352,17 +352,7 @@ DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_NVIDIA, 0x0bf1, tegra_pcie_fixup_class); | |||
352 | /* Tegra PCIE requires relaxed ordering */ | 352 | /* Tegra PCIE requires relaxed ordering */ |
353 | static void __devinit tegra_pcie_relax_enable(struct pci_dev *dev) | 353 | static void __devinit tegra_pcie_relax_enable(struct pci_dev *dev) |
354 | { | 354 | { |
355 | u16 val16; | 355 | pcie_capability_set_word(dev, PCI_EXP_DEVCTL, PCI_EXP_DEVCTL_RELAX_EN); |
356 | int pos = pci_find_capability(dev, PCI_CAP_ID_EXP); | ||
357 | |||
358 | if (pos <= 0) { | ||
359 | dev_err(&dev->dev, "skipping relaxed ordering fixup\n"); | ||
360 | return; | ||
361 | } | ||
362 | |||
363 | pci_read_config_word(dev, pos + PCI_EXP_DEVCTL, &val16); | ||
364 | val16 |= PCI_EXP_DEVCTL_RELAX_EN; | ||
365 | pci_write_config_word(dev, pos + PCI_EXP_DEVCTL, val16); | ||
366 | } | 356 | } |
367 | DECLARE_PCI_FIXUP_FINAL(PCI_ANY_ID, PCI_ANY_ID, tegra_pcie_relax_enable); | 357 | DECLARE_PCI_FIXUP_FINAL(PCI_ANY_ID, PCI_ANY_ID, tegra_pcie_relax_enable); |
368 | 358 | ||