mbox

[GIT,PULL] PCI changes for v4.10

Message ID 20161215202423.GA24490@bhelgaas-glaptop.roam.corp.google.com
State Not Applicable
Headers show

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git tags/pci-v4.10-changes

Message

Bjorn Helgaas Dec. 15, 2016, 8:24 p.m. UTC
PCI changes:

  - Add support for PCI on ARM64 boxes with ACPI.  We already had this for
    theoretical spec-compliant hardware; now we're adding quirks for the
    actual hardware (Cavium, HiSilicon, Qualcomm, X-Gene).

  - Add runtime PM support for hotplug ports. 

  - Enable runtime suspend for Intel UHCI that uses platform-specific
    wakeup signaling.

  - Add yet another host bridge registration interface.  We hope this is
    extensible enough to subsume the others.

  - Expose device revision in sysfs for DRM.

  - To avoid device conflicts, make sure any VF BAR updates are done before
    enabling the VF.

  - Avoid unnecessary link retrains for ASPM.

  - Allow INTx masking on Mellanox devices that support it.

  - Allow access to non-standard VPD for Chelsio devices.

  - Update Broadcom iProc support for PAXB v2, PAXC v2, inbound DMA, etc.

  - Update Rockchip support for max-link-speed.

  - Add NVIDIA Tegra210 support.

  - Add Layerscape LS1046a support.

  - Update R-Car compatibility strings.

  - Add Qualcomm MSM8996 support.

  - Remove some uninformative bootup messages.


The following changes since commit 31a3a7b5b26f75fbe82de10ca99f2b673f6c26b4:

  PCI: rockchip: Add three new resets as required properties (2016-11-10 11:14:37 -0600)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git tags/pci-v4.10-changes

for you to fetch changes up to b08d2e61a6f9ebf5210a047868362a5a4ff37144:

  Merge branch 'pci/host-vmd' into next (2016-12-12 11:25:13 -0600)

----------------------------------------------------------------
pci-v4.10-changes

----------------------------------------------------------------
Alan Stern (2):
      PCI: Check for PME in targeted sleep state
      USB: UHCI: report non-PME wakeup signalling for Intel hardware

Alexey Kardashevskiy (1):
      PCI: Enable access to non-standard VPD for Chelsio devices (cxgb3)

Andy Gospodarek (1):
      PCI: iproc: Skip check for legacy IRQ on PAXC buses

Arnd Bergmann (2):
      PCI: Add pci_register_host_bridge() interface
      PCI: tegra: Use new pci_register_host_bridge() interface

Ashok Raj (2):
      PCI: pciehp: Prioritize data-link event over presence detect
      PCI: pciehp: Leave power indicator on when enabling already-enabled slot

Bjorn Helgaas (45):
      net/mlx4_core: Use device ID defines
      PCI: Warn on possible RW1C corruption for sub-32 bit config writes
      PCI: Ignore BAR updates on virtual functions
      PCI: Update BARs using property bits appropriate for type
      PCI: Separate VF BAR updates from standard BAR updates
      PCI: Don't update VF BARs while VF memory space is enabled
      PCI: Remove pci_resource_bar() and pci_iov_resource_bar()
      PCI: Decouple IORESOURCE_ROM_ENABLE and PCI_ROM_ADDRESS_ENABLE
      PCI: Add comments about ROM BAR updating
      ACPI: Add acpi_resource_consumer() to find device that claims a resource
      arm64: PCI: Add local struct device pointers
      arm64: PCI: Search ACPI namespace to ensure ECAM space is reserved
      arm64: PCI: Exclude ACPI "consumer" resources from host bridge windows
      PCI: thunder-pem: Factor out resource lookup
      PCI: Explain ARM64 ACPI/MCFG quirk Kconfig and build strategy
      PCI/PME: Drop unused support for PMEs from Root Complex Event Collectors
      PCI/PME: Log PME IRQ when claiming Root Port
      PCI/AER: Remove unused version macros
      PCI/AER: Log errors with PCI device, not PCIe service device
      PCI/AER: Log AER IRQ when claiming Root Port
      PCI: Remove service driver load/unload messages
      PCI: hotplug: Remove hotplug core message
      PCI: pciehp: Remove loading message
      PCI: Expand "VPD access disabled" quirk message
      Merge branch 'pci/aspm' into next
      Merge branch 'pci/ecam' into next
      Merge branch 'pci/enumeration' into next
      Merge branch 'pci/hotplug' into next
      Merge branch 'pci/misc' into next
      Merge branch 'pci/msi' into next
      Merge branch 'pci/pm' into next
      Merge branch 'pci/virtualization' into next
      Merge branch 'pci/host' into next
      Merge branch 'pci/host-altera' into next
      Merge branch 'pci/host-hisi' into next
      Merge branch 'pci/host-hv' into next
      Merge branch 'pci/host-imx6' into next
      Merge branch 'pci/host-iproc' into next
      Merge branch 'pci/host-layerscape' into next
      Merge branch 'pci/host-qcom' into next
      Merge branch 'pci/host-rcar' into next
      Merge branch 'pci/host-rockchip' into next
      Merge branch 'pci/host-spear' into next
      Merge branch 'pci/host-tegra' into next
      Merge branch 'pci/host-vmd' into next

Borislav Petkov (1):
      PCI: vmd: Fix suspend handlers defined-but-not-used warning

Brian Norris (1):
      PCI: rockchip: Correct the use of FTS mask

Christopher Covington (1):
      PCI: Add MCFG quirks for Qualcomm QDF2432 host controller

David Daney (1):
      PCI/ASPM: Don't retrain link if ASPM not possible

Dexuan Cui (3):
      PCI: hv: Use the correct buffer size in new_pcichild_device()
      PCI: hv: Fix hv_pci_remove() for hot-remove
      PCI: hv: Delete the device earlier from hbus->children for hot-remove

Dongdong Liu (2):
      PCI/ACPI: Provide acpi_get_rc_resources() for ARM64 platform
      PCI: Add MCFG quirks for HiSilicon Hip05/06/07 host controllers

Duc Dang (1):
      PCI: Add MCFG quirks for X-Gene host controller

Emil Velikov (1):
      PCI: Create revision file in sysfs

Fabio Estevam (2):
      MAINTAINERS: Update Richard Zhu's email address
      MAINTAINERS: Add devicetree binding to PCI i.MX6 entry

Gavin Shan (1):
      PCI: Do any VF BAR updates before enabling the BARs

Geliang Tang (1):
      PCI: spear: Use builtin_platform_driver() to simplify the code

Jan Beulich (1):
      PCI/MSI: Check for NULL affinity mask in pci_irq_get_affinity()

Jon Derrick (1):
      PCI: vmd: Use SRCU as a local RCU to prevent delaying global RCU

Julia Lawall (1):
      PCI/ASPM: Use permission-specific DEVICE_ATTR variants

Long Li (1):
      PCI: hv: Allocate physically contiguous hypercall params buffer

Lukas Wunner (10):
      PCI: Don't acquire ref on parent in pci_bridge_d3_update()
      PCI: Autosense device removal in pci_bridge_d3_update()
      PCI: Speed up algorithm in pci_bridge_d3_update()
      PCI: Activate runtime PM on a PCIe port only if it can suspend
      PCI: Consolidate conditions to allow runtime PM on PCIe ports
      PCI: Unfold conditions to block runtime PM on PCIe ports
      ACPI / hotplug / PCI: Use cached copy of PCI_EXP_SLTCAP_HPC bit
      ACPI / hotplug / PCI: Make device_is_managed_by_native_pciehp() public
      PCI: pciehp: Add runtime PM support for PCIe hotplug ports
      x86/platform/intel-mid: Constify mid_pci_platform_pm

Mingkai Hu (1):
      PCI: layerscape: Add LS1046a support

Noa Osherovich (4):
      PCI: Add Mellanox device IDs
      PCI: Convert broken INTx masking quirks from HEADER to FINAL
      PCI: Convert Mellanox broken INTx quirks to be for listed devices only
      PCI: Support INTx masking on ConnectX-4 with firmware x.14.1100+

Quentin Lambert (1):
      PCI: cpqphp: Add missing call to pci_disable_device()

Ray Jui (13):
      PCI: iproc: Improve core register population
      PCI: iproc: Do not reset PAXC when initializing the driver
      PCI: iproc: Add BCMA type
      PCI: iproc: Fix exception with multi-function devices
      PCI: iproc: Add PAXCv2 related binding
      PCI: iproc: Add PAXC v2 support
      PCI: iproc: Remove redundant outbound properties
      PCI: iproc: Make outbound mapping code more generic
      PCI: iproc: Add optional dma-ranges
      PCI: iproc: Add inbound DMA mapping support
      PCI: iproc: Add PAXBv2 binding info
      PCI: iproc: Add support for the next-gen PAXB controller
      PCI: iproc: Fix incorrect MSI address alignment

Shawn Lin (11):
      Documentation/devicetree: Add PCIe max-link-speed property
      of/pci: Add of_pci_get_max_link_speed() to parse max-link-speed from DT
      PCI: rockchip: Provide captured slot power limit and scale
      PCI: rockchip: Mark RC as common clock architecture
      PCI: rockchip: Add Kconfig COMPILE_TEST
      PCI: rockchip: Fix negotiated lanes calculation
      PCI: rockchip: Specify the link capability
      PCI: rockchip: Remove the pointer to L1 substate cap
      PCI: rockchip: Clean up bit definitions for PCIE_RC_CONFIG_LCS
      PCI: rockchip: Split out rockchip_cfg_atu()
      PCI: rockchip: Move the deassert of pm/aclk/pclk after phy_init()

Simon Horman (3):
      PCI: rcar-gen2: Use gen2 fallback compatibility last
      PCI: rcar: Use gen2 fallback compatibility last
      PCI: rcar: Add gen3 fallback compatibility string for pcie-rcar

Srinivas Kandagatla (1):
      PCI: qcom: Add support for MSM8996 PCIe controller

Thierry Reding (8):
      PCI: Allow driver-specific data in host bridge
      PCI: Export host bridge registration interface
      dt-bindings: pci: tegra: Add Tegra210 support
      PCI: tegra: Implement PCA enable workaround
      PCI: tegra: Add Tegra210 support
      PCI: tegra: Enable the driver on 64-bit ARM
      arm64: tegra: Add PCIe host bridge on Tegra210
      arm64: tegra: Enable PCIe on Jetson TX1

Tobias Klauser (1):
      PCI: hv: Make unnecessarily global IRQ masking functions static

Tomasz Nowicki (5):
      arm64: PCI: Manage controller-specific data on per-controller basis
      PCI/ACPI: Extend pci_mcfg_lookup() to return ECAM config accessors
      PCI/ACPI: Check for platform-specific MCFG quirks
      PCI: Add MCFG quirks for Cavium ThunderX pass2.x host controller
      PCI: Add MCFG quirks for Cavium ThunderX pass1.x host controller

Wang Sheng-Hui (1):
      PCI: Move config space size macros to pci_regs.h

Wei Yongjun (5):
      PCI: altera: Use builtin_platform_driver() to simplify the code
      PCI: altera: Remove redundant error message in altera_pcie_parse_dt()
      PCI: layerscape: Remove redundant error message from ls_pcie_probe()
      PCI: hisi: Remove redundant error message from hisi_pcie_probe()
      PCI: vmd: Remove unnecessary pci_set_drvdata()

 Documentation/ABI/testing/sysfs-bus-pci            |   7 +
 .../devicetree/bindings/pci/brcm,iproc-pcie.txt    |  43 +-
 .../devicetree/bindings/pci/layerscape-pci.txt     |   1 +
 .../bindings/pci/nvidia,tegra20-pcie.txt           | 110 +++
 Documentation/devicetree/bindings/pci/pci.txt      |   6 +
 .../devicetree/bindings/pci/qcom,pcie.txt          |  14 +-
 Documentation/devicetree/bindings/pci/rcar-pci.txt |   1 +
 Documentation/filesystems/sysfs-pci.txt            |   2 +
 MAINTAINERS                                        |   3 +-
 arch/arm64/boot/dts/nvidia/tegra210-p2371-2180.dts |  26 +
 arch/arm64/boot/dts/nvidia/tegra210.dtsi           |  63 ++
 arch/arm64/kernel/pci.c                            |  67 +-
 drivers/acpi/pci_mcfg.c                            | 190 ++++-
 drivers/acpi/resource.c                            |  57 ++
 drivers/net/ethernet/mellanox/mlx4/main.c          |  84 +-
 drivers/of/of_pci.c                                |  21 +
 drivers/pci/access.c                               |  16 +-
 drivers/pci/bus.c                                  |   2 +-
 drivers/pci/ecam.c                                 |  12 +
 drivers/pci/host/Kconfig                           |  16 +-
 drivers/pci/host/Makefile                          |  19 +-
 drivers/pci/host/pci-hyperv.c                      | 100 ++-
 drivers/pci/host/pci-layerscape.c                  |  20 +-
 drivers/pci/host/pci-rcar-gen2.c                   |   2 +-
 drivers/pci/host/pci-tegra.c                       | 160 ++--
 drivers/pci/host/pci-thunder-ecam.c                |   9 +-
 drivers/pci/host/pci-thunder-pem.c                 |  94 +-
 drivers/pci/host/pci-xgene.c                       | 126 ++-
 drivers/pci/host/pcie-altera.c                     |  10 +-
 drivers/pci/host/pcie-hisi.c                       | 107 ++-
 drivers/pci/host/pcie-iproc-bcma.c                 |   1 +
 drivers/pci/host/pcie-iproc-msi.c                  |   1 +
 drivers/pci/host/pcie-iproc-platform.c             |  28 +-
 drivers/pci/host/pcie-iproc.c                      | 949 ++++++++++++++++++---
 drivers/pci/host/pcie-iproc.h                      |  45 +-
 drivers/pci/host/pcie-qcom.c                       | 177 +++-
 drivers/pci/host/pcie-rcar.c                       |   5 +-
 drivers/pci/host/pcie-rockchip.c                   | 284 +++---
 drivers/pci/host/pcie-spear13xx.c                  |   6 +-
 drivers/pci/host/vmd.c                             |  30 +-
 drivers/pci/hotplug/acpiphp_glue.c                 |  31 +-
 drivers/pci/hotplug/cpqphp_core.c                  |   3 +-
 drivers/pci/hotplug/pci_hotplug_core.c             |  10 +-
 drivers/pci/hotplug/pciehp_core.c                  |   9 +-
 drivers/pci/hotplug/pciehp_ctrl.c                  |   8 +-
 drivers/pci/hotplug/pciehp_hpc.c                   |  21 +-
 drivers/pci/iov.c                                  |  70 +-
 drivers/pci/msi.c                                  |   3 +-
 drivers/pci/pci-acpi.c                             | 100 +++
 drivers/pci/pci-mid.c                              |   2 +-
 drivers/pci/pci-sysfs.c                            |   2 +
 drivers/pci/pci.c                                  | 138 ++-
 drivers/pci/pci.h                                  |  19 +-
 drivers/pci/pcie/aer/aerdrv.c                      |  18 +-
 drivers/pci/pcie/aspm.c                            |  22 +-
 drivers/pci/pcie/pme.c                             |  29 +-
 drivers/pci/pcie/portdrv_core.c                    |   3 -
 drivers/pci/pcie/portdrv_pci.c                     |  13 +-
 drivers/pci/probe.c                                | 245 +++---
 drivers/pci/quirks.c                               | 182 +++-
 drivers/pci/remove.c                               |   2 +-
 drivers/pci/rom.c                                  |   5 +
 drivers/pci/setup-res.c                            |  48 +-
 drivers/usb/host/uhci-pci.c                        |   4 +
 drivers/vfio/pci/vfio_pci_config.c                 |   2 -
 include/linux/acpi.h                               |   7 +
 include/linux/of_pci.h                             |   7 +
 include/linux/pci-acpi.h                           |   4 +-
 include/linux/pci-ecam.h                           |   9 +
 include/linux/pci.h                                |  17 +
 include/linux/pci_hotplug.h                        |   2 +
 include/linux/pci_ids.h                            |  27 +-
 include/uapi/linux/pci_regs.h                      |   8 +
 73 files changed, 3101 insertions(+), 883 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html