Paul Gortmaker
154fb60038
PCI: layerscape: Make explicitly non-modular
...
This code is not being built as a module by anyone:
drivers/pci/host/Kconfig:config PCI_LAYERSCAPE
drivers/pci/host/Kconfig: bool "Freescale Layerscape PCIe controller"
Remove uses of MODULE_DESCRIPTION(), MODULE_AUTHOR(), MODULE_LICENSE(),
etc., so that when reading the driver there is no doubt it is builtin-only.
The information is preserved in comments at the top of the file.
Replace module_platform_driver() with builtin_platform_driver(), which uses
the same init level priority, so init ordering is unchanged.
Note that MODULE_DEVICE_TABLE is a no-op for non-modular code.
[bhelgaas: changelog]
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: Minghuan Lian <minghuan.Lian@freescale.com>
CC: Mingkai Hu <mingkai.hu@freescale.com>
CC: Roy Zang <tie-fei.zang@freescale.com>
2016-08-01 12:22:50 -05:00
Linus Torvalds
63e30271b0
PCI changes for the v4.6 merge window:
...
Enumeration
Disable IO/MEM decoding for devices with non-compliant BARs (Bjorn Helgaas)
Mark Broadwell-EP Home Agent & PCU as having non-compliant BARs (Bjorn Helgaas
Resource management
Mark shadow copy of VGA ROM as IORESOURCE_PCI_FIXED (Bjorn Helgaas)
Don't assign or reassign immutable resources (Bjorn Helgaas)
Don't enable/disable ROM BAR if we're using a RAM shadow copy (Bjorn Helgaas)
Set ROM shadow location in arch code, not in PCI core (Bjorn Helgaas)
Remove arch-specific IORESOURCE_ROM_SHADOW size from sysfs (Bjorn Helgaas)
ia64: Use ioremap() instead of open-coded equivalent (Bjorn Helgaas)
ia64: Keep CPU physical (not virtual) addresses in shadow ROM resource (Bjorn Helgaas)
MIPS: Keep CPU physical (not virtual) addresses in shadow ROM resource (Bjorn Helgaas)
Remove unused IORESOURCE_ROM_COPY and IORESOURCE_ROM_BIOS_COPY (Bjorn Helgaas)
Don't leak memory if sysfs_create_bin_file() fails (Bjorn Helgaas)
rcar: Remove PCI_PROBE_ONLY handling (Lorenzo Pieralisi)
designware: Remove PCI_PROBE_ONLY handling (Lorenzo Pieralisi)
Virtualization
Wait for up to 1000ms after FLR reset (Alex Williamson)
Support SR-IOV on any function type (Kelly Zytaruk)
Add ACS quirk for all Cavium devices (Manish Jaggi)
AER
Rename pci_ops_aer to aer_inj_pci_ops (Bjorn Helgaas)
Restore pci_ops pointer while calling original pci_ops (David Daney)
Fix aer_inject error codes (Jean Delvare)
Use dev_warn() in aer_inject (Jean Delvare)
Log actual error causes in aer_inject (Jean Delvare)
Log aer_inject error injections (Jean Delvare)
VPD
Prevent VPD access for buggy devices (Babu Moger)
Move pci_read_vpd() and pci_write_vpd() close to other VPD code (Bjorn Helgaas)
Move pci_vpd_release() from header file to pci/access.c (Bjorn Helgaas)
Remove struct pci_vpd_ops.release function pointer (Bjorn Helgaas)
Rename VPD symbols to remove unnecessary "pci22" (Bjorn Helgaas)
Fold struct pci_vpd_pci22 into struct pci_vpd (Bjorn Helgaas)
Sleep rather than busy-wait for VPD access completion (Bjorn Helgaas)
Update VPD definitions (Hannes Reinecke)
Allow access to VPD attributes with size 0 (Hannes Reinecke)
Determine actual VPD size on first access (Hannes Reinecke)
Generic host bridge driver
Move structure definitions to separate header file (David Daney)
Add pci_host_common_probe(), based on gen_pci_probe() (David Daney)
Expose pci_host_common_probe() for use by other drivers (David Daney)
Altera host bridge driver
Fix altera_pcie_link_is_up() (Ley Foon Tan)
Cavium ThunderX host bridge driver
Add PCIe host driver for ThunderX processors (David Daney)
Add driver for ThunderX-pass{1,2} on-chip devices (David Daney)
Freescale i.MX6 host bridge driver
Add DT bindings to configure PHY Tx driver settings (Justin Waters)
Move imx6_pcie_reset_phy() near other PHY handling functions (Lucas Stach)
Move PHY reset into imx6_pcie_establish_link() (Lucas Stach)
Remove broken Gen2 workaround (Lucas Stach)
Move link up check into imx6_pcie_wait_for_link() (Lucas Stach)
Freescale Layerscape host bridge driver
Add "fsl,ls2085a-pcie" compatible ID (Yang Shi)
Intel VMD host bridge driver
Attach VMD resources to parent domain's resource tree (Jon Derrick)
Set bus resource start to 0 (Keith Busch)
Microsoft Hyper-V host bridge driver
Add fwnode_handle to x86 pci_sysdata (Jake Oshins)
Look up IRQ domain by fwnode_handle (Jake Oshins)
Add paravirtual PCI front-end for Microsoft Hyper-V VMs (Jake Oshins)
NVIDIA Tegra host bridge driver
Add pci_ops.{add,remove}_bus() callbacks (Thierry Reding)
Implement ->{add,remove}_bus() callbacks (Thierry Reding)
Remove unused struct tegra_pcie.num_ports field (Thierry Reding)
Track bus -> CPU mapping (Thierry Reding)
Remove misleading PHYS_OFFSET (Thierry Reding)
Renesas R-Car host bridge driver
Depend on ARCH_RENESAS, not ARCH_SHMOBILE (Simon Horman)
Synopsys DesignWare host bridge driver
ARC: Add PCI support (Joao Pinto)
Add generic dw_pcie_wait_for_link() (Joao Pinto)
Add default link up check if sub-driver doesn't override (Joao Pinto)
Add driver for prototyping kits based on ARC SDP (Joao Pinto)
TI Keystone host bridge driver
Defer probing if devm_phy_get() returns -EPROBE_DEFER (Shawn Lin)
Xilinx AXI host bridge driver
Use of_pci_get_host_bridge_resources() to parse DT (Bharat Kumar Gogada)
Remove dependency on ARM-specific struct hw_pci (Bharat Kumar Gogada)
Don't call pci_fixup_irqs() on Microblaze (Bharat Kumar Gogada)
Update Zynq binding with Microblaze node (Bharat Kumar Gogada)
microblaze: Support generic Xilinx AXI PCIe Host Bridge IP driver (Bharat Kumar Gogada)
Xilinx NWL host bridge driver
Add support for Xilinx NWL PCIe Host Controller (Bharat Kumar Gogada)
Miscellaneous
Check device_attach() return value always (Bjorn Helgaas)
Move pci_set_flags() from asm-generic/pci-bridge.h to linux/pci.h (Bjorn Helgaas)
Remove includes of empty asm-generic/pci-bridge.h (Bjorn Helgaas)
ARM64: Remove generated include of asm-generic/pci-bridge.h (Bjorn Helgaas)
Remove empty asm-generic/pci-bridge.h (Bjorn Helgaas)
Remove includes of asm/pci-bridge.h (Bjorn Helgaas)
Consolidate PCI DMA constants and interfaces in linux/pci-dma-compat.h (Bjorn Helgaas)
unicore32: Remove unused HAVE_ARCH_PCI_SET_DMA_MASK definition (Bjorn Helgaas)
Cleanup pci/pcie/Kconfig whitespace (Andreas Ziegler)
Include pci/hotplug Kconfig directly from pci/Kconfig (Bjorn Helgaas)
Include pci/pcie/Kconfig directly from pci/Kconfig (Bogicevic Sasa)
frv: Remove stray pci_{alloc,free}_consistent() declaration (Christoph Hellwig)
Move pci_dma_* helpers to common code (Christoph Hellwig)
Add PCI_CLASS_SERIAL_USB_DEVICE definition (Heikki Krogerus)
Add QEMU top-level IDs for (sub)vendor & device (Robin H. Johnson)
Fix broken URL for Dell biosdevname (Naga Venkata Sai Indubhaskar Jupudi)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJW6XgMAAoJEFmIoMA60/r8Yq4P/1nNwwZPikU+9Z8k0HyGPll6
vqXBOYj/wlbAxJTzH2weaoyUamFrwvsKaO3Vap3xHkAeTFPD/Dp0TipCCNMrZ82Z
j1y83JJpenkRyX6ifLARCNYpOtvnvgzSrO9x7Sb2Xfqb64dPb7+jGAfOpGNzhKsO
n1nj/L7RGx8Q6fNFGf8ANMXKTsdkdL+1pdwegjUXmD5WdOT+oW8DmqVbhyfSKwl0
E8r4Ml2lIg7Qd5Wu5iKMIBsR0+5HEyrwV7ch92wXChwKfoRwG70qnn7FGdc0y5ZB
XvJuj8UD5UeMxEUeoRa9SwU6wWQT3Q9e6BzMS+P+43z36SPYjMfy/Xffv054z/bY
rQomLjuGxNLESpmfNK5JfKxWoe2YNXjHQIDWMrAHyNlwdKJbYiwPcxnZJhvOa/eB
p0QYcGS7O43STjibG9PZhzeq8tuSJRshxi0W6iB9QlqO8qs8nJQxIO+sZj/vl4yz
lSnswWcV9062KITl8Fe9xDw244/RTz1xSVCdldlSoDhJyeMOjRvzS8raUMyyVmbA
YULsI3l2iCl+fwDm/T21o7hJG966oYdAmgEv7lc7BWfgEAMg//LZXvMzVvrPFB2D
R77u/0idtOciVJrmnO/x9DnQO2hzro9SLmVH6m0+0YU4wSSpZfGn98PCrtkatOAU
c8zT9dJgyJVE3Z7cnPJ4
=otsF
-----END PGP SIGNATURE-----
Merge tag 'pci-v4.6-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci
Pull PCI updates from Bjorn Helgaas:
"PCI changes for v4.6:
Enumeration:
- Disable IO/MEM decoding for devices with non-compliant BARs (Bjorn Helgaas)
- Mark Broadwell-EP Home Agent & PCU as having non-compliant BARs (Bjorn Helgaas
Resource management:
- Mark shadow copy of VGA ROM as IORESOURCE_PCI_FIXED (Bjorn Helgaas)
- Don't assign or reassign immutable resources (Bjorn Helgaas)
- Don't enable/disable ROM BAR if we're using a RAM shadow copy (Bjorn Helgaas)
- Set ROM shadow location in arch code, not in PCI core (Bjorn Helgaas)
- Remove arch-specific IORESOURCE_ROM_SHADOW size from sysfs (Bjorn Helgaas)
- ia64: Use ioremap() instead of open-coded equivalent (Bjorn Helgaas)
- ia64: Keep CPU physical (not virtual) addresses in shadow ROM resource (Bjorn Helgaas)
- MIPS: Keep CPU physical (not virtual) addresses in shadow ROM resource (Bjorn Helgaas)
- Remove unused IORESOURCE_ROM_COPY and IORESOURCE_ROM_BIOS_COPY (Bjorn Helgaas)
- Don't leak memory if sysfs_create_bin_file() fails (Bjorn Helgaas)
- rcar: Remove PCI_PROBE_ONLY handling (Lorenzo Pieralisi)
- designware: Remove PCI_PROBE_ONLY handling (Lorenzo Pieralisi)
Virtualization:
- Wait for up to 1000ms after FLR reset (Alex Williamson)
- Support SR-IOV on any function type (Kelly Zytaruk)
- Add ACS quirk for all Cavium devices (Manish Jaggi)
AER:
- Rename pci_ops_aer to aer_inj_pci_ops (Bjorn Helgaas)
- Restore pci_ops pointer while calling original pci_ops (David Daney)
- Fix aer_inject error codes (Jean Delvare)
- Use dev_warn() in aer_inject (Jean Delvare)
- Log actual error causes in aer_inject (Jean Delvare)
- Log aer_inject error injections (Jean Delvare)
VPD:
- Prevent VPD access for buggy devices (Babu Moger)
- Move pci_read_vpd() and pci_write_vpd() close to other VPD code (Bjorn Helgaas)
- Move pci_vpd_release() from header file to pci/access.c (Bjorn Helgaas)
- Remove struct pci_vpd_ops.release function pointer (Bjorn Helgaas)
- Rename VPD symbols to remove unnecessary "pci22" (Bjorn Helgaas)
- Fold struct pci_vpd_pci22 into struct pci_vpd (Bjorn Helgaas)
- Sleep rather than busy-wait for VPD access completion (Bjorn Helgaas)
- Update VPD definitions (Hannes Reinecke)
- Allow access to VPD attributes with size 0 (Hannes Reinecke)
- Determine actual VPD size on first access (Hannes Reinecke)
Generic host bridge driver:
- Move structure definitions to separate header file (David Daney)
- Add pci_host_common_probe(), based on gen_pci_probe() (David Daney)
- Expose pci_host_common_probe() for use by other drivers (David Daney)
Altera host bridge driver:
- Fix altera_pcie_link_is_up() (Ley Foon Tan)
Cavium ThunderX host bridge driver:
- Add PCIe host driver for ThunderX processors (David Daney)
- Add driver for ThunderX-pass{1,2} on-chip devices (David Daney)
Freescale i.MX6 host bridge driver:
- Add DT bindings to configure PHY Tx driver settings (Justin Waters)
- Move imx6_pcie_reset_phy() near other PHY handling functions (Lucas Stach)
- Move PHY reset into imx6_pcie_establish_link() (Lucas Stach)
- Remove broken Gen2 workaround (Lucas Stach)
- Move link up check into imx6_pcie_wait_for_link() (Lucas Stach)
Freescale Layerscape host bridge driver:
- Add "fsl,ls2085a-pcie" compatible ID (Yang Shi)
Intel VMD host bridge driver:
- Attach VMD resources to parent domain's resource tree (Jon Derrick)
- Set bus resource start to 0 (Keith Busch)
Microsoft Hyper-V host bridge driver:
- Add fwnode_handle to x86 pci_sysdata (Jake Oshins)
- Look up IRQ domain by fwnode_handle (Jake Oshins)
- Add paravirtual PCI front-end for Microsoft Hyper-V VMs (Jake Oshins)
NVIDIA Tegra host bridge driver:
- Add pci_ops.{add,remove}_bus() callbacks (Thierry Reding)
- Implement ->{add,remove}_bus() callbacks (Thierry Reding)
- Remove unused struct tegra_pcie.num_ports field (Thierry Reding)
- Track bus -> CPU mapping (Thierry Reding)
- Remove misleading PHYS_OFFSET (Thierry Reding)
Renesas R-Car host bridge driver:
- Depend on ARCH_RENESAS, not ARCH_SHMOBILE (Simon Horman)
Synopsys DesignWare host bridge driver:
- ARC: Add PCI support (Joao Pinto)
- Add generic dw_pcie_wait_for_link() (Joao Pinto)
- Add default link up check if sub-driver doesn't override (Joao Pinto)
- Add driver for prototyping kits based on ARC SDP (Joao Pinto)
TI Keystone host bridge driver:
- Defer probing if devm_phy_get() returns -EPROBE_DEFER (Shawn Lin)
Xilinx AXI host bridge driver:
- Use of_pci_get_host_bridge_resources() to parse DT (Bharat Kumar Gogada)
- Remove dependency on ARM-specific struct hw_pci (Bharat Kumar Gogada)
- Don't call pci_fixup_irqs() on Microblaze (Bharat Kumar Gogada)
- Update Zynq binding with Microblaze node (Bharat Kumar Gogada)
- microblaze: Support generic Xilinx AXI PCIe Host Bridge IP driver (Bharat Kumar Gogada)
Xilinx NWL host bridge driver:
- Add support for Xilinx NWL PCIe Host Controller (Bharat Kumar Gogada)
Miscellaneous:
- Check device_attach() return value always (Bjorn Helgaas)
- Move pci_set_flags() from asm-generic/pci-bridge.h to linux/pci.h (Bjorn Helgaas)
- Remove includes of empty asm-generic/pci-bridge.h (Bjorn Helgaas)
- ARM64: Remove generated include of asm-generic/pci-bridge.h (Bjorn Helgaas)
- Remove empty asm-generic/pci-bridge.h (Bjorn Helgaas)
- Remove includes of asm/pci-bridge.h (Bjorn Helgaas)
- Consolidate PCI DMA constants and interfaces in linux/pci-dma-compat.h (Bjorn Helgaas)
- unicore32: Remove unused HAVE_ARCH_PCI_SET_DMA_MASK definition (Bjorn Helgaas)
- Cleanup pci/pcie/Kconfig whitespace (Andreas Ziegler)
- Include pci/hotplug Kconfig directly from pci/Kconfig (Bjorn Helgaas)
- Include pci/pcie/Kconfig directly from pci/Kconfig (Bogicevic Sasa)
- frv: Remove stray pci_{alloc,free}_consistent() declaration (Christoph Hellwig)
- Move pci_dma_* helpers to common code (Christoph Hellwig)
- Add PCI_CLASS_SERIAL_USB_DEVICE definition (Heikki Krogerus)
- Add QEMU top-level IDs for (sub)vendor & device (Robin H. Johnson)
- Fix broken URL for Dell biosdevname (Naga Venkata Sai Indubhaskar Jupudi)"
* tag 'pci-v4.6-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (94 commits)
PCI: Add PCI_CLASS_SERIAL_USB_DEVICE definition
PCI: designware: Add driver for prototyping kits based on ARC SDP
PCI: designware: Add default link up check if sub-driver doesn't override
PCI: designware: Add generic dw_pcie_wait_for_link()
PCI: Cleanup pci/pcie/Kconfig whitespace
PCI: Simplify pci_create_attr() control flow
PCI: Don't leak memory if sysfs_create_bin_file() fails
PCI: Simplify sysfs ROM cleanup
PCI: Remove unused IORESOURCE_ROM_COPY and IORESOURCE_ROM_BIOS_COPY
MIPS: Loongson 3: Keep CPU physical (not virtual) addresses in shadow ROM resource
MIPS: Loongson 3: Use temporary struct resource * to avoid repetition
ia64/PCI: Keep CPU physical (not virtual) addresses in shadow ROM resource
ia64/PCI: Use ioremap() instead of open-coded equivalent
ia64/PCI: Use temporary struct resource * to avoid repetition
PCI: Clean up pci_map_rom() whitespace
PCI: Remove arch-specific IORESOURCE_ROM_SHADOW size from sysfs
PCI: thunder: Add driver for ThunderX-pass{1,2} on-chip devices
PCI: thunder: Add PCIe host driver for ThunderX processors
PCI: generic: Expose pci_host_common_probe() for use by other drivers
PCI: generic: Add pci_host_common_probe(), based on gen_pci_probe()
...
2016-03-16 14:45:55 -07:00
Minghuan Lian
1195c103f6
PCI: layerscape: Fix MSG TLP drop setting
...
Some kinds of Layerscape PCIe controllers will forward the received message
TLPs to system application address space, which could corrupt system memory
or lead to a system hang. Enable MSG_DROP to fix this issue.
Signed-off-by: Minghuan Lian <Minghuan.Lian@nxp.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2016-02-29 17:24:15 -06:00
Yang Shi
dbae40b76a
PCI: layerscape: Add "fsl,ls2085a-pcie" compatible ID
...
The Layerscape PCI host driver must recognize ls2085a compatible when using
firmware with ls2085a compatible property, otherwise the PCI bus won't be
detected even though ls2085a compatible is included by the dts.
Signed-off-by: Yang Shi <yang.shi@linaro.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2016-02-05 14:30:01 -06:00
Minghuan Lian
bd33b87a9a
PCI: layerscape: Add ls_pcie_msi_host_init()
...
Layerscape PCIe has its own MSI implementation.
Register ls_pcie_msi_host_init() to avoid using DesignWare's MSI.
[bhelgaas: add comment]
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2015-11-02 15:38:39 -06:00
Minghuan Lian
5192ec7b24
PCI: layerscape: Add support for LS1043a and LS2080a
...
Both LS1043a and LS2080a are based on ARMv8 64-bit architecture and have
similar PCIe implementation. LUT is added to controller.
Add LS1043a and LS2080a support.
[bhelgaas: move unused field removal into separate patch, include DT update]
Signed-off-by: Bhupesh Sharma <bhupesh.sharma@freescale.com> (DT update)
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Arnd Bergmann <arnd@arndb.de> (DT update)
2015-11-02 15:38:39 -06:00
Minghuan Lian
0f3cb324be
PCI: layerscape: Remove unused fields from struct ls_pcie
...
Removed unused node, dev, and bus fields from struct ls_pcie.
[bhelgaas: split into separate patch]
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2015-11-02 15:38:39 -06:00
Minghuan Lian
a167fb73be
PCI: layerscape: Update ls_add_pcie_port()
...
Update the ls_add_pcie_port() signature to keep it consistent with the
other DesignWare-based host drivers.
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2015-11-02 15:38:39 -06:00
Minghuan Lian
d64633453e
PCI: layerscape: Factor out SCFG related function
...
For the LS1021a PCIe controller, some status registers are located in SCFG,
unlike other Layerscape devices.
Move SCFG-related code to ls1021_pcie_host_init() and rename
ls_pcie_link_up() to ls1021_pcie_link_up() because LTSSM status is also in
SCFG.
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2015-11-02 15:38:39 -06:00
Minghuan Lian
7af4ce3571
PCI: layerscape: Ignore PCIe controllers in Endpoint mode
...
Layerscape PCIe controller supports root complex (RC) and endpoint (EP)
modes, which can be set by RCW.
If not in RC mode, return -ENODEV without claiming the controller.
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2015-11-02 15:38:38 -06:00
Minghuan Lian
72f71afb86
PCI: layerscape: Remove ls_pcie_establish_link()
...
ls_pcie_establish_link() does not do any real operation, except to wait for
the linkup establishment. In fact, this is not necessary. Moreover, each
PCIe controller not inserted device will increase the Linux startup time
about 200ms.
Remove ls_pcie_establish_link().
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2015-11-02 15:38:38 -06:00
Bjorn Helgaas
6cbb247e85
PCI: designware: Wait for link to come up with consistent style
...
All the DesignWare-based host drivers loop waiting for the link to come up,
but they do it several ways that are needlessly different.
Wait for the link to come up in a consistent style across all the
DesignWare drivers. No functional change.
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Pratyush Anand <pratyush.anand@gmail.com>
2015-06-10 13:52:59 -05:00
Bjorn Helgaas
1d3f9bac71
PCI: layerscape: Factor out ls_pcie_establish_link()
...
All other DesignWare-based drivers have a *_establish_link() function.
This functionality is trivial for Layerscape, but factor out a
ls_pcie_establish_link() for consistency with the other drivers. No
functional change.
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Pratyush Anand <pratyush.anand@gmail.com>
2015-06-10 13:52:46 -05:00
Bjorn Helgaas
1200edcbdd
PCI: layerscape: Use dw_pcie_link_up() consistently
...
All the other DesignWare-based drivers use dw_pcie_link_up(), so use it in
this driver, too, for consistency. No functional change.
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Pratyush Anand <pratyush.anand@gmail.com>
2015-06-10 13:52:36 -05:00
Bjorn Helgaas
e3dc17a53f
PCI: layerscape: Simplify platform_get_resource_byname() failure checking
...
devm_ioremap_resource() validates the resource it receives, so if we check
for devm_ioremap_resource() failure, we need not check for failure of the
preceding platform_get_resource().
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2015-04-09 14:36:52 -05:00
Julia Lawall
80f6d910dc
PCI: layerscape: Fix platform_no_drv_owner.cocci warnings
...
No need to set .owner here. The core will do it.
Generated by: scripts/coccinelle/api/platform_no_drv_owner.cocci
Signed-off-by: Julia Lawall <julia.lawall@lip6.fr>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
2014-12-26 16:25:11 -07:00
Minghuan Lian
62d0ff83c6
PCI: layerscape: Add Freescale Layerscape PCIe driver
...
Add support for Freescale Layerscape PCIe controller. This driver re-uses
the Synopsis DesignWare core code.
[bhelgaas: add Kconfig dependency on CONFIG_ARM]
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2014-11-13 09:31:52 -07:00