All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Helgaas <helgaas@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
	Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Subject: [GIT PULL] PCI changes for v5.2
Date: Mon, 13 May 2019 18:57:21 -0500	[thread overview]
Message-ID: <20190513235721.GA157967@google.com> (raw)

Enumeration changes:

  - Add _HPX Type 3 settings support, which gives firmware more influence
    over device configuration (Alexandru Gagniuc)

  - Support fixed bus numbers from bridge Enhanced Allocation capabilities
    (Subbaraya Sundeep)

  - Add "external-facing" DT property to identify cases where we require
    IOMMU protection against untrusted devices (Jean-Philippe Brucker)

  - Enable PCIe services for host controller drivers that use managed host
    bridge alloc (Jean-Philippe Brucker)

  - Log PCIe port service messages with pci_dev, not the pcie_device
    (Frederick Lawler)

  - Convert pciehp from pciehp_debug module parameter to generic dynamic
    debug (Frederick Lawler)

Peer-to-peer DMA:

  - Add whitelist of Root Complexes that support peer-to-peer DMA between
    Root Ports (Christian König)

Native controller drivers:

  - Add PCI host bridge DMA ranges for bridges that can't DMA everywhere,
    e.g., iProc (Srinath Mannam)

  - Add Amazon Annapurna Labs PCIe host controller driver (Jonathan
    Chocron)

  - Fix Tegra MSI target allocation so DMA doesn't generate unwanted MSIs
    (Vidya Sagar)

  - Fix of_node reference leaks (Wen Yang)

  - Fix Hyper-V module unload & device removal issues (Dexuan Cui)

  - Cleanup R-Car driver (Marek Vasut)

  - Cleanup Keystone driver (Kishon Vijay Abraham I)

  - Cleanup i.MX6 driver (Andrey Smirnov)

Significant bug fixes:

  - Reset Lenovo ThinkPad P50 GPU so nouveau works after reboot (Lyude
    Paul)

  - Fix Switchtec firmware update performance issue (Wesley Sheng)

  - Work around Pericom switch link retraining erratum (Stefan Mätje)


The following changes since commit 9e98c678c2d6ae3a17cb2de55d17f69dddaa231b:

  Linux 5.1-rc1 (2019-03-17 14:22:26 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git tags/pci-v5.2-changes

for you to fetch changes up to c7a1c2bbb65e25551d585fba0fd36a01e0a22690:

  Merge branch 'pci/trivial' (2019-05-13 18:34:48 -0500)

----------------------------------------------------------------
pci-v5.2-changes

----------------------------------------------------------------
Alexandru Gagniuc (4):
      PCI/ACPI: Do not export pci_get_hp_params()
      PCI/ACPI: Remove the need for 'struct hotplug_params'
      PCI/ACPI: Implement _HPX Type 3 Setting Record
      PCI/ACPI: Advertise _HPX Type 3 support via _OSC

Andrey Smirnov (11):
      PCI: imx6: Simplify imx7d_pcie_wait_for_phy_pll_lock()
      PCI: imx6: Drop imx6_pcie_wait_for_link()
      PCI: imx6: Return -ETIMEOUT from imx6_pcie_wait_for_speed_change()
      PCI: imx6: Remove PCIE_PL_PFLR_* constants
      PCI: dwc: imx6: Share PHY debug register definitions
      PCI: imx6: Make use of BIT() in constant definitions
      PCI: imx6: Simplify bit operations in PHY functions
      PCI: imx6: Simplify pcie_phy_poll_ack()
      PCI: imx6: Restrict PHY register data to 16-bit
      PCI: imx6: Use flags to indicate support for suspend
      PCI: imx6: Use usleep_range() in imx6_pcie_enable_ref_clk()

Bjorn Helgaas (35):
      PCI/MSI: Remove unused __write_msi_msg() and write_msi_msg()
      PCI/MSI: Remove unused mask_msi_irq() and unmask_msi_irq()
      PCI: Cleanup register definition width and whitespace
      PCI: Fix comment typos
      CPER: Add UEFI spec references
      CPER: Remove unnecessary use of user-space types
      PCI: Use dev_printk() when possible
      PCI: pciehp: Remove pciehp_debug uses
      PCI: pciehp: Remove pointless PCIE_MODULE_NAME definition
      PCI: pciehp: Remove pointless MY_NAME definition
      Merge branch 'pci/aer'
      Merge branch 'pci/enumeration'
      Merge branch 'pci/hotplug'
      Merge branch 'pci/msi'
      Merge branch 'pci/misc'
      Merge branch 'pci/peer-to-peer'
      Merge branch 'pci/portdrv'
      Merge branch 'pci/switchtec'
      Merge branch 'pci/virtualization'
      Merge branch 'pci/host/al'
      Merge branch 'remotes/lorenzo/pci/controller-fixes'
      Merge branch 'pci/dwc'
      Merge branch 'remotes/lorenzo/pci/imx'
      Merge branch 'remotes/lorenzo/pci/iproc'
      Merge branch 'remotes/lorenzo/pci/keystone'
      Merge branch 'remotes/lorenzo/pci/mediatek'
      Merge branch 'remotes/lorenzo/pci/rcar'
      Merge branch 'remotes/lorenzo/pci/rockchip'
      Merge branch 'remotes/lorenzo/pci/tegra'
      Merge branch 'remotes/lorenzo/pci/xilinx'
      Merge branch 'remotes/lorenzo/pci/misc'
      Merge branch 'pci/iova-dma-ranges'
      Merge branch 'pci/printk'
      Merge branch 'pci/printk-portdrv'
      Merge branch 'pci/trivial'

Christian König (1):
      PCI/P2PDMA: Allow P2P DMA between any devices under AMD ZEN Root Complex

Chunfeng Yun (1):
      PCI: mediatek: Get optional clocks with devm_clk_get_optional()

Colin Ian King (1):
      PCI: rockchip: Fix rockchip_pcie_ep_assert_intx() bitwise operations

Dexuan Cui (3):
      PCI: hv: Fix a memory leak in hv_eject_device_work()
      PCI: hv: Add hv_pci_remove_slots() when we unload the driver
      PCI: hv: Add pci_destroy_slot() in pci_devices_present_work(), if necessary

Frederick Lawler (7):
      PCI/AER: Replace dev_printk(KERN_DEBUG) with dev_info()
      PCI/PME: Replace dev_printk(KERN_DEBUG) with dev_info()
      PCI/DPC: Log messages with pci_dev, not pcie_device
      PCI/AER: Log messages with pci_dev, not pcie_device
      PCI: pciehp: Replace pciehp_debug module param with dyndbg
      PCI: pciehp: Log messages with pci_dev, not pcie_device
      PCI: pciehp: Remove unused dbg/err/info/warn() wrappers

Gustavo A. R. Silva (1):
      PCI: Mark expected switch fall-throughs

Heiner Kallweit (8):
      PCI: Add pci_dev_id() helper
      r8169: use pci_dev_id() helper
      powerpc/powernv/npu: Use pci_dev_id() helper
      drm/amdkfd: Use pci_dev_id() helper
      iommu/amd: Use pci_dev_id() helper
      iommu/vt-d: Use pci_dev_id() helper
      stmmac: pci: Use pci_dev_id() helper
      platform/chrome: chromeos_laptop: use pci_dev_id() helper

Honghui Zhang (1):
      arm64: dts: mt2712: Remove un-used property for PCIe

James Prestwood (1):
      PCI: Mark Atheros AR9462 to avoid bus reset

Jean-Jacques Hiblot (1):
      tools: PCI: Exit with error code when test fails

Jean-Philippe Brucker (3):
      PCI: Init PCIe feature bits for managed host bridge alloc
      dt-bindings: Add "external-facing" PCIe port property
      PCI: OF: Support "external-facing" property

Jisheng Zhang (6):
      PCI/AER: Change pci_aer_init() stub to return void
      PCI: dwc: Fix dw_pcie_free_msi() if msi_irq is invalid
      PCI: dwc: Free MSI IRQ page in dw_pcie_free_msi()
      PCI: dwc: Free MSI in dw_pcie_host_init() error path
      PCI: dwc: Use devm_pci_alloc_host_bridge() to simplify code
      PCI: dwc: Save root bus for driver remove hooks

Johannes Thumshirn (1):
      PCI: Remove unused pci_request_region_exclusive()

Jonathan Chocron (1):
      PCI: al: Add Amazon Annapurna Labs PCIe host controller driver

Kangjie Lu (3):
      PCI: xilinx: Check for __get_free_pages() failure
      PCI: rcar: Fix a potential NULL pointer dereference
      PCI: endpoint: Fix a potential NULL pointer dereference

Kazufumi Ikeda (1):
      PCI: rcar: Add the initialization of PCIe link in resume_noirq()

Kishon Vijay Abraham I (37):
      PCI: keystone: Cleanup interrupt related macros
      PCI: keystone: Add separate functions for configuring MSI and legacy interrupt
      PCI: keystone: Use hwirq to get the MSI IRQ number offset
      PCI: keystone: Cleanup ks_pcie_msi_irq_handler()
      PCI: dwc: Add support to use non default msi_irq_chip
      PCI: keystone: Use Keystone specific msi_irq_chip
      PCI: dwc: Remove Keystone specific dw_pcie_host_ops
      PCI: dwc: Remove default MSI initialization for platform specific MSI chips
      tools: PCI: Add 'h' in optstring of getopt()
      tools: PCI: Handle pcitest.sh independently from pcitest
      PCI: keystone: Add start_link()/stop_link() dw_pcie_ops
      PCI: keystone: Cleanup error_irq configuration
      dt-bindings: PCI: keystone: Add "reg-names" binding information
      PCI: keystone: Perform host initialization in a single function
      PCI: keystone: Use platform_get_resource_byname() to get memory resources
      PCI: keystone: Move resources initialization to prepare for EP support
      dt-bindings: PCI: Add dt-binding to configure PCIe mode
      PCI: keystone: Explicitly set the PCIe mode
      dt-bindings: PCI: Document "atu" reg-names
      PCI: dwc: Enable iATU unroll for endpoint too
      PCI: dwc: Fix ATU identification for designware version >= 4.80
      PCI: keystone: Prevent ARM32 specific code to be compiled for ARM64
      dt-bindings: PCI: Add PCI RC DT binding documentation for AM654
      PCI: keystone: Add support for PCIe RC in AM654x Platforms
      PCI: keystone: Invoke phy_reset() API before enabling PHY
      PCI: OF: Allow of_pci_get_max_link_speed() to be used by PCI Endpoint drivers
      PCI: keystone: Add support to set the max link speed from DT
      PCI: endpoint: Add support to specify alignment for buffers allocated to BARs
      PCI: dwc: Add const qualifier to struct dw_pcie_ep_ops
      PCI: dwc: Fix dw_pcie_ep_find_capability() to return correct capability offset
      PCI: dwc: Add callbacks for accessing dbi2 address space
      dt-bindings: PCI: Add PCI EP DT binding documentation for AM654
      PCI: keystone: Add support for PCIe EP in AM654x Platforms
      PCI: designware-ep: Configure Resizable BAR cap to advertise the smallest size
      PCI: designware-ep: Use aligned ATU window for raising MSI interrupts
      misc: pci_endpoint_test: Add support to test PCI EP in AM654x
      misc: pci_endpoint_test: Fix test_reg_bar to be updated in pci_endpoint_test

Lucas Stach (1):
      PCI: imx6: Allow asynchronous probing

Lyude Paul (1):
      PCI: Reset Lenovo ThinkPad P50 nvgpu at boot if necessary

Marc Gonzalez (1):
      PCI: qcom: Use default config space read function

Marek Vasut (6):
      PCI: rcar: Clean up remaining macros defining bits
      PCI: rcar: Replace unsigned long with u32/unsigned int in register accessors
      PCI: rcar: Replace various variable types with unsigned ones for register values
      PCI: rcar: Replace (8 * n) with (BITS_PER_BYTE * n)
      PCI: rcar: Clean up debug messages
      PCI: rcar: Fix 64bit MSI message address handling

Mika Westerberg (1):
      PCI/LINK: Disable bandwidth notification interrupt during suspend

Mohan Kumar (2):
      PCI: Replace printk(KERN_INFO) with pr_info(), etc
      PCI: Replace dev_printk(KERN_DEBUG) with dev_info(), etc

Nicholas Johnson (1):
      PCI: Cleanup setup-bus.c comments and whitespace

Nikolai Kostrigin (1):
      PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken

Srinath Mannam (6):
      PCI: iproc: Add CRS check in config read
      PCI: iproc: Allow outbound configuration for 32-bit I/O region
      PCI: iproc: Enable iProc config read for PAXBv2
      PCI: Add dma_ranges window list
      iommu/dma: Reserve IOVA for PCIe inaccessible DMA address
      PCI: iproc: Add sorted dma ranges resource entries to host bridge

Stefan Mätje (3):
      PCI: Factor out pcie_retrain_link() function
      PCI: Work around Pericom PCIe-to-PCI bridge Retrain Link erratum
      PCI: Rework pcie_retrain_link() wait loop

Subbaraya Sundeep (1):
      PCI: Assign bus numbers present in EA capability for bridges

Subrahmanya Lingappa (1):
      MAINTAINERS: Add Karthikeyan Mitran and Hou Zhiqiang for Mobiveil PCI

Tyrel Datwyler (2):
      PCI: rpadlpar: Fix leaked device_node references in add/remove paths
      PCI: rpaphp: Get/put device node reference during slot alloc/dealloc

Vidya Sagar (1):
      PCI: tegra: Use the DMA-API to get the MSI address

Wen Yang (7):
      PCI: dwc: pci-dra7xx: Fix a leaked reference by adding missing of_node_put()
      PCI: uniphier: Fix a leaked reference by adding missing of_node_put()
      PCI: dwc: layerscape: Fix a leaked reference by adding missing of_node_put()
      PCI: rockchip: Fix a leaked reference by adding missing of_node_put()
      PCI: aardvark: Fix a leaked reference by adding missing of_node_put()
      PCI: iproc: Fix a leaked reference by adding missing of_node_put()
      PCI: mediatek: Fix a leaked reference by adding missing of_node_put()

Wenwen Wang (1):
      x86/PCI: Fix PCI IRQ routing table memory leak

Wesley Sheng (2):
      switchtec: Increase PFF limit from 48 to 255
      switchtec: Fix unintended mask of MRPC event

Wolfram Sang (1):
      PCI: rcar: Do not shadow the 'irq' variable

 .../devicetree/bindings/pci/designware-pcie.txt    |   7 +-
 .../devicetree/bindings/pci/pci-keystone.txt       |  58 +-
 Documentation/devicetree/bindings/pci/pci.txt      |  50 ++
 MAINTAINERS                                        |   9 +-
 arch/arm64/boot/dts/mediatek/mt2712e.dtsi          |   2 -
 arch/powerpc/platforms/powernv/npu-dma.c           |  14 +-
 arch/x86/pci/irq.c                                 |  10 +-
 drivers/acpi/pci_mcfg.c                            |  12 +
 drivers/acpi/pci_root.c                            |   2 +
 drivers/gpu/drm/amd/amdkfd/kfd_topology.c          |   3 +-
 drivers/iommu/amd_iommu.c                          |   2 +-
 drivers/iommu/dma-iommu.c                          |  35 +-
 drivers/iommu/intel-iommu.c                        |   2 +-
 drivers/iommu/intel_irq_remapping.c                |   2 +-
 drivers/misc/pci_endpoint_test.c                   |  18 +
 drivers/net/ethernet/realtek/r8169.c               |   3 +-
 drivers/net/ethernet/stmicro/stmmac/stmmac_pci.c   |   2 +-
 drivers/pci/Makefile                               |   2 +-
 drivers/pci/bus.c                                  |   5 +-
 drivers/pci/controller/dwc/Kconfig                 |  29 +-
 drivers/pci/controller/dwc/Makefile                |   1 +
 drivers/pci/controller/dwc/pci-dra7xx.c            |   3 +-
 drivers/pci/controller/dwc/pci-imx6.c              | 144 ++--
 drivers/pci/controller/dwc/pci-keystone.c          | 926 +++++++++++++++------
 drivers/pci/controller/dwc/pci-layerscape-ep.c     |   2 +-
 drivers/pci/controller/dwc/pci-layerscape.c        |   1 +
 drivers/pci/controller/dwc/pcie-al.c               |  93 +++
 drivers/pci/controller/dwc/pcie-artpec6.c          |   2 +-
 drivers/pci/controller/dwc/pcie-designware-ep.c    |  55 +-
 drivers/pci/controller/dwc/pcie-designware-host.c  | 157 ++--
 drivers/pci/controller/dwc/pcie-designware-plat.c  |   2 +-
 drivers/pci/controller/dwc/pcie-designware.c       |  64 +-
 drivers/pci/controller/dwc/pcie-designware.h       |  26 +-
 drivers/pci/controller/dwc/pcie-qcom.c             |  23 +-
 drivers/pci/controller/dwc/pcie-uniphier.c         |  11 +-
 drivers/pci/controller/pci-aardvark.c              |  13 +-
 drivers/pci/controller/pci-host-generic.c          |   2 +-
 drivers/pci/controller/pci-hyperv.c                |  23 +
 drivers/pci/controller/pci-tegra.c                 |  37 +-
 drivers/pci/controller/pcie-iproc-msi.c            |   2 +-
 drivers/pci/controller/pcie-iproc.c                |  98 ++-
 drivers/pci/controller/pcie-mediatek.c             |  51 +-
 drivers/pci/controller/pcie-rcar.c                 |  85 +-
 drivers/pci/controller/pcie-rockchip-ep.c          |   2 +-
 drivers/pci/controller/pcie-rockchip-host.c        |   1 +
 drivers/pci/controller/pcie-xilinx-nwl.c           |   9 +-
 drivers/pci/controller/pcie-xilinx.c               |  12 +-
 drivers/pci/endpoint/functions/pci-epf-test.c      |  10 +-
 drivers/pci/endpoint/pci-epf-core.c                |  10 +-
 drivers/pci/hotplug/pciehp.h                       |  31 +-
 drivers/pci/hotplug/pciehp_core.c                  |  18 +-
 drivers/pci/hotplug/pciehp_ctrl.c                  |   2 +
 drivers/pci/hotplug/pciehp_hpc.c                   |  17 +-
 drivers/pci/hotplug/pciehp_pci.c                   |   2 +
 drivers/pci/hotplug/rpadlpar_core.c                |   4 +
 drivers/pci/hotplug/rpaphp_slot.c                  |   3 +-
 drivers/pci/msi.c                                  |   6 +-
 drivers/pci/of.c                                   |  58 +-
 drivers/pci/p2pdma.c                               |  38 +-
 drivers/pci/pci-acpi.c                             | 183 ++--
 drivers/pci/pci-stub.c                             |  10 +-
 drivers/pci/pci-sysfs.c                            |   3 +-
 drivers/pci/pci.c                                  | 344 ++++----
 drivers/pci/pci.h                                  |   2 +-
 drivers/pci/pcie/aer.c                             |  30 +-
 drivers/pci/pcie/aer_inject.c                      |  20 +-
 drivers/pci/pcie/aspm.c                            |  47 +-
 drivers/pci/pcie/bw_notification.c                 |  14 +
 drivers/pci/pcie/dpc.c                             |  37 +-
 drivers/pci/pcie/pme.c                             |  10 +-
 drivers/pci/probe.c                                | 230 ++++-
 drivers/pci/proc.c                                 |   1 +
 drivers/pci/quirks.c                               |  92 +-
 drivers/pci/search.c                               |  10 +-
 drivers/pci/setup-bus.c                            | 526 ++++++------
 drivers/pci/slot.c                                 |   2 +-
 drivers/pci/switch/switchtec.c                     |  42 +-
 drivers/pci/xen-pcifront.c                         |   9 +-
 drivers/platform/chrome/chromeos_laptop.c          |   2 +-
 include/linux/acpi.h                               |   3 +-
 include/linux/cper.h                               | 336 ++++----
 include/linux/msi.h                                |  18 -
 include/linux/pci-ecam.h                           |   1 +
 include/linux/pci-epc.h                            |   2 +
 include/linux/pci-epf.h                            |   3 +-
 include/linux/pci.h                                |   9 +-
 include/linux/pci_hotplug.h                        |  66 +-
 include/linux/switchtec.h                          |   2 +-
 include/uapi/linux/pci_regs.h                      | 138 +--
 include/uapi/linux/switchtec_ioctl.h               |  13 +-
 tools/pci/Makefile                                 |   8 +-
 tools/pci/pcitest.c                                |   8 +-
 92 files changed, 2911 insertions(+), 1621 deletions(-)
 create mode 100644 drivers/pci/controller/dwc/pcie-al.c

             reply	other threads:[~2019-05-13 23:57 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-13 23:57 Bjorn Helgaas [this message]
2019-05-14 17:50 ` [GIT PULL] PCI changes for v5.2 pr-tracker-bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190513235721.GA157967@google.com \
    --to=helgaas@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.