1. 20 Apr, 2023 24 commits
    • Bjorn Helgaas's avatar
      Merge branch 'pci/controller/kconfig' · 09a8e5f0
      Bjorn Helgaas authored
      - Use uniform language in Kconfig menu entries (Bjorn Helgaas)
      
      - Sort controller Kconfig entries by vendor (Bjorn Helgaas)
      
      * pci/controller/kconfig:
        PCI: xilinx: Drop obsolete dependency on COMPILE_TEST
        PCI: mobiveil: Sort Kconfig entries by vendor
        PCI: dwc: Sort Kconfig entries by vendor
        PCI: Sort controller Kconfig entries by vendor
        PCI: Use consistent controller Kconfig menu entry language
        PCI: xilinx-nwl: Add 'Xilinx' to Kconfig prompt
        PCI: hv: Add 'Microsoft' to Kconfig prompt
        PCI: meson: Add 'Amlogic' to Kconfig prompt
        PCI: Use of_property_present() for testing DT property presence
        PCI/PM: Extend D3hot delay for NVIDIA HDA controllers
        dt-bindings: PCI: qcom: Document msi-map and msi-map-mask properties
        PCI: qcom: Add SM8550 PCIe support
        dt-bindings: PCI: qcom: Add SM8550 compatible
        PCI: qcom: Add support for SDX55 SoC
        dt-bindings: PCI: qcom-ep: Fix the unit address used in example
        dt-bindings: PCI: qcom: Add SDX55 SoC
        dt-bindings: PCI: qcom: Update maintainers entry
        PCI: qcom: Enable async probe by default
        PCI: qcom: Add support for system suspend and resume
        PCI/PM: Drop pci_bridge_wait_for_secondary_bus() timeout parameter
        PCI/PM: Increase wait time after resume
        PCI: pciehp: Fix AB-BA deadlock between reset_lock and device_lock
        PCI: Fix up L1SS capability for Intel Apollo Lake Root Port
        PCI: qcom: Expose link transition counts via debugfs
        dt-bindings: PCI: qcom: Add "mhi" register region to supported SoCs
        PCI: qcom: Rename qcom_pcie_config_sid_sm8250() to reflect IP version
        PCI: qcom: Use macros for defining total no. of clocks & supplies
        PCI: qcom: Use bulk reset APIs for handling resets for IP rev 2.4.0
        PCI: qcom: Use bulk reset APIs for handling resets for IP rev 2.3.3
        PCI: qcom: Use bulk clock APIs for handling clocks for IP rev 2.3.3
        PCI: qcom: Use bulk clock APIs for handling clocks for IP rev 2.3.2
        PCI: qcom: Use bulk clock APIs for handling clocks for IP rev 1.0.0
        PCI: qcom: Use bulk reset APIs for handling resets for IP rev 2.1.0
        PCI: qcom: Use lower case for hex
        PCI: qcom: Add missing macros for register fields
        PCI: qcom: Use bitfield definitions for register fields
        PCI: qcom: Sort and group registers and bitfield definitions
        PCI: qcom: Remove PCIE20_ prefix from register definitions
        PCI: qcom: Fix the incorrect register usage in v2.7.0 config
        PCI/EDR: Add edr_handle_event() comments
        PCI/EDR: Clear Device Status after EDR error recovery
        efi/cper: Remove unnecessary aer.h include
        dt-bindings: imx6q-pcie: Restruct i.MX PCIe schema
        PCI/P2PDMA: Fix pci_p2pmem_find_many() kernel-doc
        EISA: Drop unused pci_bus_for_each_resource() index argument
        PCI: Make pci_bus_for_each_resource() index optional
        PCI: Document pci_bus_for_each_resource()
        PCI: Introduce pci_dev_for_each_resource()
        PCI: Introduce pci_resource_n()
        PCI: ixp4xx: Use PCI_CONF1_ADDRESS() macro
        PCI: mt7621: Use dev_info() to log PCIe card detection
        PCI: imx6: Install the fault handler only on compatible match
        PCI: layerscape: Add EP mode support for ls1028a
        PCI: rcar: Avoid defines prefixed with CONFIG
        dt-bindings: PCI: convert amlogic,meson-pcie.txt to dt-schema
        PCI: kirin: Select REGMAP_MMIO
      09a8e5f0
    • Jean Delvare's avatar
      PCI: xilinx: Drop obsolete dependency on COMPILE_TEST · ab072a3b
      Jean Delvare authored
      Since commit 0166dc11 ("of: make CONFIG_OF user selectable"), it is
      possible to test-build any driver which depends on OF on any architecture
      by explicitly selecting OF. Therefore depending on COMPILE_TEST as an
      alternative is no longer needed.
      
      Link: https://lore.kernel.org/r/20230407190843.529caf19@endymion.delvareSigned-off-by: default avatarJean Delvare <jdelvare@suse.de>
      Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
      Cc: Rob Herring <robh@kernel.org>
      Cc: "Krzysztof Wilczyński" <kw@linux.com>
      ab072a3b
    • Bjorn Helgaas's avatar
      PCI: mobiveil: Sort Kconfig entries by vendor · 9f3c35bf
      Bjorn Helgaas authored
      Sort Kconfig entries by vendor so they appear in alphabetical order in
      menuconfig.
      
      Link: https://lore.kernel.org/r/20230418174336.145585-8-helgaas@kernel.orgSigned-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      9f3c35bf
    • Bjorn Helgaas's avatar
      PCI: dwc: Sort Kconfig entries by vendor · c39819c0
      Bjorn Helgaas authored
      Sort Kconfig entries by vendor so they appear in alphabetical order in
      menuconfig.
      
      Link: https://lore.kernel.org/r/20230418174336.145585-7-helgaas@kernel.orgSigned-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      c39819c0
    • Bjorn Helgaas's avatar
      PCI: Sort controller Kconfig entries by vendor · 81c362e7
      Bjorn Helgaas authored
      Sort Kconfig entries by vendor so they appear in alphabetical order in
      menuconfig.
      
      Link: https://lore.kernel.org/r/20230418174336.145585-6-helgaas@kernel.orgSigned-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      81c362e7
    • Bjorn Helgaas's avatar
      PCI: Use consistent controller Kconfig menu entry language · 80c170d7
      Bjorn Helgaas authored
      Use "PCIe controller" consistently instead of "host bridge", "bus driver",
      etc.  Annotate with "(host mode)" or "(endpoint mode)" as needed.
      
      Link: https://lore.kernel.org/r/20230418174336.145585-5-helgaas@kernel.orgSigned-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      80c170d7
    • Bjorn Helgaas's avatar
      PCI: xilinx-nwl: Add 'Xilinx' to Kconfig prompt · bf909c57
      Bjorn Helgaas authored
      Add the "Xilinx" vendor name to the CONFIG_PCIE_XILINX_NWL Kconfig prompt
      so it matches other drivers.  Rename from "PCIe Core" to "PCIe controller".
      
      Link: https://lore.kernel.org/r/20230418174336.145585-4-helgaas@kernel.orgSigned-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      Acked-by: default avatarMichal Simek <michal.simek@amd.com>
      bf909c57
    • Bjorn Helgaas's avatar
      PCI: hv: Add 'Microsoft' to Kconfig prompt · 7f5441c1
      Bjorn Helgaas authored
      Add the "Microsoft" vendor name to the CONFIG_PCI_HYPERV_INTERFACE Kconfig
      prompt so it matches other PCIe drivers and other Hyper-V prompts.
      
      Link: https://lore.kernel.org/r/20230418174336.145585-3-helgaas@kernel.orgSigned-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      Acked-by: default avatarWei Liu <wei.liu@kernel.org>
      Cc: K. Y. Srinivasan <kys@microsoft.com>
      Cc: Haiyang Zhang <haiyangz@microsoft.com>
      Cc: Dexuan Cui <decui@microsoft.com>
      7f5441c1
    • Bjorn Helgaas's avatar
      PCI: meson: Add 'Amlogic' to Kconfig prompt · 6ba4ce6b
      Bjorn Helgaas authored
      Add the "Amlogic" vendor name to the CONFIG_PCI_MESON Kconfig prompt to
      match other PCIe drivers.  Capitalize "Meson" to match other Meson Kconfig
      prompts.
      
      Link: https://lore.kernel.org/r/20230418174336.145585-2-helgaas@kernel.orgSigned-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      Cc: Yue Wang <yue.wang@Amlogic.com>
      6ba4ce6b
    • Bjorn Helgaas's avatar
      Merge branch 'pci/controller/rcar' · 30dc83a9
      Bjorn Helgaas authored
      - Rename internal #defines without "CONFIG_" prefix to avoid confusion
        (Lukas Bulwahn)
      
      * pci/controller/rcar:
        PCI: rcar: Avoid defines prefixed with CONFIG
      30dc83a9
    • Bjorn Helgaas's avatar
      Merge branch 'pci/controller/qcom' · 5c5dd883
      Bjorn Helgaas authored
      - Use correct PCIE20_PARF_AXI_MSTR_WR_ADDR_HALT_V2 register for v2.7.0
        (Manivannan Sadhasivam)
      
      - Remove "PCIE20_" prefix from register definitions (Manivannan Sadhasivam)
      
      - Sort registers and bitfield declarations (Manivannan Sadhasivam)
      
      - Convert to GENMASK and FIELD_PREP (Manivannan Sadhasivam)
      
      - Use bulk APIs for clocks of IP 1.0.0, 2.3.2, 2.3.3 (Manivannan
        Sadhasivam)
      
      - Use bulk APIs for reset of IP 2.1.0, 2.3.3, 2.4.0 (Manivannan Sadhasivam)
      
      - Rename qcom_pcie_config_sid_sm8250() to be non SM8250-specific
        (Manivannan Sadhasivam)
      
      - Add DT "mhi" register region for supported SoCs (Manivannan Sadhasivam)
      
      - Expose link transition counts via debugfs to help debug low power issues
        (Manivannan Sadhasivam)
      
      - Support system suspend and resume; reduce interconnect bandwidth and turn
        off clock and PHY if there are no active devices (Manivannan Sadhasivam)
      
      - Enable async probe by default to reduce boot time (Manivannan Sadhasivam)
      
      - Add Manivannan Sadhasivam as qcom DT binding maintainer, replacing
        Stanimir Varbanov (Manivannan Sadhasivam)
      
      - Add DT binding and driver support for Qcom SDX55 SoC (Manivannan
        Sadhasivam)
      
      - Add DT binding and driver support for SM8550 SoC (Abel Vesa)
      
      - Document msi-map and msi-map-mask DT properties (Manivannan Sadhasivam)
      
      * pci/controller/qcom:
        dt-bindings: PCI: qcom: Document msi-map and msi-map-mask properties
        PCI: qcom: Add SM8550 PCIe support
        dt-bindings: PCI: qcom: Add SM8550 compatible
        PCI: qcom: Add support for SDX55 SoC
        dt-bindings: PCI: qcom-ep: Fix the unit address used in example
        dt-bindings: PCI: qcom: Add SDX55 SoC
        dt-bindings: PCI: qcom: Update maintainers entry
        PCI: qcom: Enable async probe by default
        PCI: qcom: Add support for system suspend and resume
        PCI: qcom: Expose link transition counts via debugfs
        dt-bindings: PCI: qcom: Add "mhi" register region to supported SoCs
        PCI: qcom: Rename qcom_pcie_config_sid_sm8250() to reflect IP version
        PCI: qcom: Use macros for defining total no. of clocks & supplies
        PCI: qcom: Use bulk reset APIs for handling resets for IP rev 2.4.0
        PCI: qcom: Use bulk reset APIs for handling resets for IP rev 2.3.3
        PCI: qcom: Use bulk clock APIs for handling clocks for IP rev 2.3.3
        PCI: qcom: Use bulk clock APIs for handling clocks for IP rev 2.3.2
        PCI: qcom: Use bulk clock APIs for handling clocks for IP rev 1.0.0
        PCI: qcom: Use bulk reset APIs for handling resets for IP rev 2.1.0
        PCI: qcom: Use lower case for hex
        PCI: qcom: Add missing macros for register fields
        PCI: qcom: Use bitfield definitions for register fields
        PCI: qcom: Sort and group registers and bitfield definitions
        PCI: qcom: Remove PCIE20_ prefix from register definitions
        PCI: qcom: Fix the incorrect register usage in v2.7.0 config
      5c5dd883
    • Bjorn Helgaas's avatar
      Merge branch 'pci/controller/mt7621' · b4c85e7b
      Bjorn Helgaas authored
      - Log empty slots with dev_info(), not dev_err() (Sergio Paracuellos)
      
      * pci/controller/mt7621:
        PCI: mt7621: Use dev_info() to log PCIe card detection
      b4c85e7b
    • Bjorn Helgaas's avatar
      Merge branch 'pci/controller/layerscape' · d7493f27
      Bjorn Helgaas authored
      - Add ls1028a endpoint mode support (Xiaowei Bao)
      
      * pci/controller/layerscape:
        PCI: layerscape: Add EP mode support for ls1028a
      d7493f27
    • Bjorn Helgaas's avatar
      Merge branch 'pci/controller/kirin' · 2ad2e019
      Bjorn Helgaas authored
      - Select CONFIG_REGMAP_MMIO so kirin driver links correctly (Josh Triplett)
      
      * pci/controller/kirin:
        PCI: kirin: Select REGMAP_MMIO
      2ad2e019
    • Bjorn Helgaas's avatar
      Merge branch 'pci/controller/ixp4xx' · 73af737e
      Bjorn Helgaas authored
      - Use the PCI_CONF1_ADDRESS() macro to simplify config space address
        computation (Pali Rohár)
      
      * pci/controller/ixp4xx:
        PCI: ixp4xx: Use PCI_CONF1_ADDRESS() macro
      73af737e
    • Bjorn Helgaas's avatar
      Merge branch 'pci/controller/dwc' · 0c78d418
      Bjorn Helgaas authored
      - Install i.MX6 PCI abort handler only when DT contains a PCI controller
        claimed by the imx6 driver (H. Nikolaus Schaller)
      
      * pci/controller/dwc:
        PCI: imx6: Install the fault handler only on compatible match
      0c78d418
    • Bjorn Helgaas's avatar
      Merge branch 'pci/controller/dt' · 580b8bce
      Bjorn Helgaas authored
      - Convert Amlogic Meson AXG DWC PCIe SoC controller bindings to dt-schema
        (Neil Armstrong)
      
      - Restructure i.MX schema to extract common properties to be shared by Root
        Complex and Endpoint schema (Richard Zhu)
      
      * pci/controller/dt:
        dt-bindings: imx6q-pcie: Restruct i.MX PCIe schema
        dt-bindings: PCI: convert amlogic,meson-pcie.txt to dt-schema
      580b8bce
    • Bjorn Helgaas's avatar
      Merge branch 'pci/resource' · 1c03b5bf
      Bjorn Helgaas authored
      - Add pci_dev_for_each_resource() and pci_bus_for_each_resource() iterators
        to simplify loops (Andy Shevchenko)
      
      * pci/resource:
        EISA: Drop unused pci_bus_for_each_resource() index argument
        PCI: Make pci_bus_for_each_resource() index optional
        PCI: Document pci_bus_for_each_resource()
        PCI: Introduce pci_dev_for_each_resource()
        PCI: Introduce pci_resource_n()
      1c03b5bf
    • Bjorn Helgaas's avatar
      Merge branch 'pci/reset' · 43ca31e0
      Bjorn Helgaas authored
      - Wait longer for devices to become ready after resume (as we do for reset)
        to accommodate Intel Titan Ridge xHCI devices (Mika Westerberg)
      
      - Drop pci_bridge_wait_for_secondary_bus() timeout parameter since all
        callers pass the same value (Mika Westerberg)
      
      - Extend D3hot delay for NVIDIA HDA controllers to avoid unrecoverable
        devices after a bus reset (Alex Williamson)
      
      * pci/reset:
        PCI/PM: Extend D3hot delay for NVIDIA HDA controllers
        PCI/PM: Drop pci_bridge_wait_for_secondary_bus() timeout parameter
        PCI/PM: Increase wait time after resume
      43ca31e0
    • Bjorn Helgaas's avatar
      Merge branch 'pci/p2pdma' · cc8a983d
      Bjorn Helgaas authored
      - Fix pci_p2pmem_find_many() kernel-doc (Cai Huoqing)
      
      * pci/p2pdma:
        PCI/P2PDMA: Fix pci_p2pmem_find_many() kernel-doc
      cc8a983d
    • Bjorn Helgaas's avatar
      Merge branch 'pci/hotplug' · 8745c3d5
      Bjorn Helgaas authored
      - Fix pciehp AB-BA deadlock between reset_lock and device_lock (Lukas
        Wunner)
      
      * pci/hotplug:
        PCI: pciehp: Fix AB-BA deadlock between reset_lock and device_lock
      8745c3d5
    • Bjorn Helgaas's avatar
      Merge branch 'pci/enumeration' · 66d3d0d0
      Bjorn Helgaas authored
      - Use of_property_present(), instead of lower-level functions like
        of_get_property(), for testing DT property presence (Rob Herring)
      
      * pci/enumeration:
        PCI: Use of_property_present() for testing DT property presence
      66d3d0d0
    • Bjorn Helgaas's avatar
      Merge branch 'pci/aspm' · 90d66d4d
      Bjorn Helgaas authored
      - Work around Chromebook firmware issue that corrupts Extended Capability
        list (including L1 PM Substates capability) on D3cold -> D0 transitions
        (Ron Lee)
      
      * pci/aspm:
        PCI: Fix up L1SS capability for Intel Apollo Lake Root Port
      90d66d4d
    • Bjorn Helgaas's avatar
      Merge branch 'pci/aer' · 1a65a327
      Bjorn Helgaas authored
      - Remove unnecessary <linux/aer.h> includes (Bjorn Helgaas)
      
      - Clear Device Status after EDR error recovery.  Firmware collects EDR
        error information, but the OS is responsible for clearing it (Kuppuswamy
        Sathyanarayanan)
      
      * pci/aer:
        PCI/EDR: Add edr_handle_event() comments
        PCI/EDR: Clear Device Status after EDR error recovery
        efi/cper: Remove unnecessary aer.h include
      1a65a327
  2. 18 Apr, 2023 1 commit
  3. 17 Apr, 2023 1 commit
    • Alex Williamson's avatar
      PCI/PM: Extend D3hot delay for NVIDIA HDA controllers · a5a6dd26
      Alex Williamson authored
      Assignment of NVIDIA Ampere-based GPUs have seen a regression since the
      below referenced commit, where the reduced D3hot transition delay appears
      to introduce a small window where a D3hot->D0 transition followed by a bus
      reset can wedge the device.  The entire device is subsequently unavailable,
      returning -1 on config space read and is unrecoverable without a host
      reset.
      
      This has been observed with RTX A2000 and A5000 GPU and audio functions
      assigned to a Windows VM, where shutdown of the VM places the devices in
      D3hot prior to vfio-pci performing a bus reset when userspace releases the
      devices.  The issue has roughly a 2-3% chance of occurring per shutdown.
      
      Restoring the HDA controller d3hot_delay to the effective value before the
      below commit has been shown to resolve the issue.  NVIDIA confirms this
      change should be safe for all of their HDA controllers.
      
      Fixes: 3e347969 ("PCI/PM: Reduce D3hot delay with usleep_range()")
      Link: https://lore.kernel.org/r/20230413194042.605768-1-alex.williamson@redhat.comReported-by: default avatarZhiyi Guo <zhguo@redhat.com>
      Signed-off-by: default avatarAlex Williamson <alex.williamson@redhat.com>
      Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      Reviewed-by: default avatarTarun Gupta <targupta@nvidia.com>
      Cc: Abhishek Sahu <abhsahu@nvidia.com>
      Cc: Tarun Gupta <targupta@nvidia.com>
      a5a6dd26
  4. 12 Apr, 2023 9 commits
  5. 11 Apr, 2023 5 commits