diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2024-07-19 19:03:18 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2024-07-19 19:03:18 -0700 | 
| commit | 3f386cb8ee9f04ff4be164ca7a1d0ef3f81f7374 (patch) | |
| tree | fe1033d20b226e21fac504ff9fcd492c0aee36b7 /drivers/usb/cdns3/cdns3-trace.c | |
| parent | 8e5c0abfa02d85b9cd2419567ad2d73ed8fe4b74 (diff) | |
| parent | 45659274e60864f9acabba844468e405362bdc8c (diff) | |
Merge tag 'pci-v6.11-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci
Pull pci updates from Bjorn Helgaas:
 "Enumeration:
   - Define PCIE_RESET_CONFIG_DEVICE_WAIT_MS for the generic 100ms
     required after reset before config access (Kevin Xie)
   - Define PCIE_T_RRS_READY_MS for the generic 100ms required after
     reset before config access (probably should be unified with
     PCIE_RESET_CONFIG_DEVICE_WAIT_MS) (Damien Le Moal)
  Resource management:
   - Rename find_resource() to find_resource_space() to be more
     descriptive (Ilpo Järvinen)
   - Export find_resource_space() for use by PCI core, which needs to
     learn whether there is available space for a bridge window (Ilpo
     Järvinen)
   - Prevent double counting of resources so window size doesn't grow on
     each remove/rescan cycle (Ilpo Järvinen)
   - Relax bridge window sizing algorithm so a device doesn't break
     simply because it was removed and rescanned (Ilpo Järvinen)
   - Evaluate the ACPI PRESERVE_BOOT_CONFIG _DSM in
     pci_register_host_bridge() (not acpi_pci_root_create()) so we can
     unify it with similar DT functionality (Vidya Sagar)
   - Extend use of DT "linux,pci-probe-only" property so it works
     per-host bridge as well as globally (Vidya Sagar)
   - Unify support for ACPI PRESERVE_BOOT_CONFIG _DSM and the DT
     "linux,pci-probe-only" property in pci_preserve_config() (Vidya
     Sagar)
  Driver binding:
   - Add devres infrastructure for managed request and map of partial
     BAR resources (Philipp Stanner)
   - Deprecate pcim_iomap_table() because uses like
     "pcim_iomap_table()[0]" have no good way to return errors (Philipp
     Stanner)
   - Add an always-managed pcim_request_region() for use instead of
     pci_request_region() and similar, which are sometimes managed
     depending on whether pcim_enable_device() has been called
     previously (Philipp Stanner)
   - Reimplement pcim_set_mwi() so it doesn't need to keep store MWI
     state (Philipp Stanner)
   - Add pcim_intx() for use instead of pci_intx(), which is sometimes
     managed depending on whether pcim_enable_device() has been called
     previously (Philipp Stanner)
   - Add managed pcim_iomap_range() to allow mapping of a partial BAR
     (Philipp Stanner)
   - Fix a devres mapping leak in drm/vboxvideo (Philipp Stanner)
  Error handling:
   - Add missing bridge locking in device reset path and add a warning
     for other possible lock issues (Dan Williams)
   - Fix use-after-free on concurrent DPC and hot-removal (Lukas Wunner)
  Power management:
   - Disable AER and DPC during suspend to avoid spurious wakeups if
     they share an interrupt with PME (Kai-Heng Feng)
  PCIe native device hotplug:
   - Detect if a device was removed or replaced during system sleep so
     we don't assume a new device is the one that used to be there
     (Lukas Wunner)
  Virtualization:
   - Add an ACS quirk for Broadcom BCM5760X multi-function NIC; it
     prevents transactions between functions even though it doesn't
     advertise ACS, so the functions can be attached individually via
     VFIO (Ajit Khaparde)
  Peer-to-peer DMA:
   - Add a "pci=config_acs=" kernel command-line parameter to relax
     default ACS settings to enable additional peer-to-peer
     configurations. Requires expert knowledge of topology and ACS
     operation (Vidya Sagar)
  Endpoint framework:
   - Remove unused struct pci_epf_group.type_group (Christophe JAILLET)
   - Fix error handling in vpci_scan_bus() and epf_ntb_epc_cleanup()
     (Dan Carpenter)
   - Make struct pci_epc_class constant (Greg Kroah-Hartman)
   - Remove unused pci_endpoint_test_bar_{readl,writel} functions
     (Jiapeng Chong)
   - Rename "BME" to "Bus Master Enable" (Manivannan Sadhasivam)
   - Rename struct pci_epc_event_ops.core_init() callback to epc_init()
     (Manivannan Sadhasivam)
   - Move DMA init to MHI .epc_init() callback for uniformity
     (Manivannan Sadhasivam)
   - Cancel EPF test delayed work when link goes down (Manivannan
     Sadhasivam)
   - Add struct pci_epc_event_ops.epc_deinit() callback for cleanup
     needed on fundamental reset (Manivannan Sadhasivam)
   - Add 64KB alignment to endpoint test to support Rockchip rk3588
     (Niklas Cassel)
   - Optimize endpoint test by using memcpy() instead of readl() (Niklas
     Cassel)
  Device tree bindings:
   - Add generic "ats-supported" property to advertise that a PCIe Root
     Complex supports ATS (Jean-Philippe Brucker)
  Amazon Annapurna Labs PCIe controller driver:
   - Validate IORESOURCE_BUS presence to avoid NULL pointer dereference
     (Aleksandr Mishin)
  Axis ARTPEC-6 PCIe controller driver:
   - Rename .cpu_addr_fixup() parameter to reflect that it is a PCI
     address, not a CPU address (Niklas Cassel)
  Freescale i.MX6 PCIe controller driver:
   - Convert to agnostic GPIO API (Andy Shevchenko)
  Freescale Layerscape PCIe controller driver:
   - Make struct mobiveil_rp_ops constant (Christophe JAILLET)
   - Use new generic dw_pcie_ep_linkdown() to handle link-down events
     (Manivannan Sadhasivam)
  HiSilicon Kirin PCIe controller driver:
   - Convert to agnostic GPIO API (Andy Shevchenko)
   - Use _scoped() iterator for OF children to ensure refcounts are
     decremented at loop exit (Javier Carrasco)
  Intel VMD host bridge driver:
   - Create sysfs "domain" symlink before downstream devices are exposed
     to userspace by pci_bus_add_devices() (Jiwei Sun)
  Loongson PCIe controller driver:
   - Enable MSI when LS7A is used with new CPUs that have integrated
     PCIe Root Complex, e.g., Loongson-3C6000, so downstream devices can
     use MSI (Huacai Chen)
  Microchip AXI PolarFlare PCIe controller driver:
   - Move pcie-microchip-host.c to a new PLDA directory (Minda Chen)
   - Factor PLDA generic items out to a common
     plda,xpressrich3-axi-common.yaml binding (Minda Chen)
   - Factor PLDA generic data structures and code out to shared
     pcie-plda.h, pcie-plda-host.c (Minda Chen)
   - Add PLDA generic interrupt handling with a .request_event_irq()
     callback for vendor-specific events (Minda Chen)
   - Add PLDA generic host init/deinit and map bus functions for use by
     vendor-specific drivers (Minda Chen)
   - Rework to use PLDA core (Minda Chen)
  Microsoft Hyper-V host bridge driver:
   - Return zero, not garbage, when reading PCI_INTERRUPT_PIN (Wei Liu)
  NVIDIA Tegra194 PCIe controller driver:
   - Remove unused struct tegra_pcie_soc (Dr. David Alan Gilbert)
   - Set 64KB inbound ATU alignment restriction (Jon Hunter)
  Qualcomm PCIe controller driver:
   - Make the MHI reg region mandatory for X1E80100, since all PCIe
     controllers have it (Abel Vesa)
   - Prevent use of uninitialized data and possible error pointer
     dereference (Dan Carpenter)
   - Return error, not success, if dev_pm_opp_find_freq_floor() fails
     (Dan Carpenter)
   - Add Operating Performance Points (OPP) support to scale performance
     state based on aggregate link bandwidth to improve SoC power
     efficiency (Krishna chaitanya chundru)
   - Vote for the CPU-PCIe ICC (interconnect) path to ensure it stays
     active even if other drivers don't vote for it (Krishna chaitanya
     chundru)
   - Use devm_clk_bulk_get_all() to get all the clocks from DT to avoid
     writing out all the clock names (Manivannan Sadhasivam)
   - Add DT binding and driver support for the SA8775P SoC (Mrinmay
     Sarkar)
   - Add HDMA support for the SA8775P SoC (Mrinmay Sarkar)
   - Override the SA8775P NO_SNOOP default to avoid possible memory
     corruption (Mrinmay Sarkar)
   - Make sure resources are disabled during PERST# assertion, even if
     the link is already disabled (Manivannan Sadhasivam)
   - Use new generic dw_pcie_ep_linkdown() to handle link-down events
     (Manivannan Sadhasivam)
   - Add DT and endpoint driver support for the SA8775P SoC (Mrinmay
     Sarkar)
   - Add Hyper DMA (HDMA) support for the SA8775P SoC and enable it in
     the EPF MHI driver (Mrinmay Sarkar)
   - Set PCIE_PARF_NO_SNOOP_OVERIDE to override the default NO_SNOOP
     attribute on the SA8775P SoC (both Root Complex and Endpoint mode)
     to avoid possible memory corruption (Mrinmay Sarkar)
  Renesas R-Car PCIe controller driver:
   - Demote WARN() to dev_warn_ratelimited() in rcar_pcie_wakeup() to
     avoid unnecessary backtrace (Marek Vasut)
   - Add DT and driver support for R-Car V4H (R8A779G0) host and
     endpoint. This requires separate proprietary firmware (Yoshihiro
     Shimoda)
  Rockchip PCIe controller driver:
   - Assert PERST# for 100ms after power is stable (Damien Le Moal)
   - Wait PCIE_T_RRS_READY_MS (100ms) after reset before starting
     configuration (Damien Le Moal)
   - Use GPIOD_OUT_LOW flag while requesting ep_gpio to fix a firmware
     crash on Qcom-based modems with Rockpro64 board (Manivannan
     Sadhasivam)
  Rockchip DesignWare PCIe controller driver:
   - Factor common parts of rockchip-dw-pcie DT binding to be shared by
     Root Complex and Endpoint mode (Niklas Cassel)
   - Add missing INTx signals to common DT binding (Niklas Cassel)
   - Add eDMA items to DT binding for Endpoint controller (Niklas
     Cassel)
   - Fix initial dw-rockchip PERST# GPIO value to prevent unnecessary
     short assert/deassert that causes issues with some WLAN controllers
     (Niklas Cassel)
   - Refactor dw-rockchip and add support for Endpoint mode (Niklas
     Cassel)
   - Call pci_epc_init_notify() and drop dw_pcie_ep_init_notify()
     wrapper (Niklas Cassel)
   - Add error messages in .probe() error paths to improve user
     experience (Uwe Kleine-König)
  Samsung Exynos PCIe controller driver:
   - Use bulk clock APIs to simplify clock setup (Shradha Todi)
  StarFive PCIe controller driver:
   - Add DT binding and driver support for the StarFive JH7110
     PLDA-based PCIe controller (Minda Chen)
  Synopsys DesignWare PCIe controller driver:
   - Add generic support for sending PME_Turn_Off when system suspends
     (Frank Li)
   - Fix incorrect interpretation of iATU slot 0 after PERST#
     assert/deassert (Frank Li)
   - Use msleep() instead of usleep_range() while waiting for link
     (Konrad Dybcio)
   - Refactor dw_pcie_edma_find_chip() to enable adding support for
     Hyper DMA (HDMA) (Manivannan Sadhasivam)
   - Enable drivers to supply the eDMA channel count since some can't
     auto detect this (Manivannan Sadhasivam)
   - Call pci_epc_init_notify() and drop dw_pcie_ep_init_notify()
     wrapper (Manivannan Sadhasivam)
   - Pass the eDMA mapping format directly from drivers instead of
     maintaining a capability for it (Manivannan Sadhasivam)
   - Add generic dw_pcie_ep_linkdown() to notify EPF drivers about
     link-down events and restore non-sticky DWC registers lost on link
     down (Manivannan Sadhasivam)
   - Add vendor-specific "apb" reg name, interrupt names, INTx names to
     generic binding (Niklas Cassel)
   - Enforce DWC restriction that 64-bit BARs must start with an
     even-numbered BAR (Niklas Cassel)
   - Consolidate args of dw_pcie_prog_outbound_atu() into a structure
     (Yoshihiro Shimoda)
   - Add support for endpoints to send Message TLPs, e.g., for INTx
     emulation (Yoshihiro Shimoda)
  TI DRA7xx PCIe controller driver:
   - Rename .cpu_addr_fixup() parameter to reflect that it is a PCI
     address, not a CPU address (Niklas Cassel)
  TI Keystone PCIe controller driver:
   - Validate IORESOURCE_BUS presence to avoid NULL pointer dereference
     (Aleksandr Mishin)
   - Work around AM65x/DRA80xM Errata #i2037 that corrupts TLPs and
     causes processor hangs by limiting Max_Read_Request_Size (MRRS) and
     Max_Payload_Size (MPS) (Kishon Vijay Abraham I)
   - Leave BAR 0 disabled for AM654x to fix a regression caused by
     6ab15b5e7057 ("PCI: dwc: keystone: Convert .scan_bus() callback to
     use add_bus"), which caused a 45-second boot delay (Siddharth
     Vadapalli)
  Xilinx Versal CPM PCIe controller driver:
   - Fix overlapping bridge registers and 32-bit BAR addresses in DT
     binding (Thippeswamy Havalige)
  MicroSemi Switchtec management driver:
   - Make struct switchtec_class constant (Greg Kroah-Hartman)
  Miscellaneous:
   - Remove unused struct acpi_handle_node (Dr. David Alan Gilbert)
   - Add missing MODULE_DESCRIPTION() macros (Jeff Johnson)"
* tag 'pci-v6.11-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci: (154 commits)
  PCI: loongson: Enable MSI in LS7A Root Complex
  PCI: Extend ACS configurability
  PCI: Add missing bridge lock to pci_bus_lock()
  drm/vboxvideo: fix mapping leaks
  PCI: Add managed pcim_iomap_range()
  PCI: Remove legacy pcim_release()
  PCI: Add managed pcim_intx()
  PCI: vmd: Create domain symlink before pci_bus_add_devices()
  PCI: qcom: Prevent use of uninitialized data in qcom_pcie_suspend_noirq()
  PCI: qcom: Prevent potential error pointer dereference
  PCI: qcom: Fix missing error code in qcom_pcie_probe()
  PCI: Give pcim_set_mwi() its own devres cleanup callback
  PCI: Move struct pci_devres.pinned bit to struct pci_dev
  PCI: Remove struct pci_devres.enabled status bit
  PCI: Document hybrid devres hazards
  PCI: Add managed pcim_request_region()
  PCI: Deprecate pcim_iomap_table(), pcim_iomap_regions_request_all()
  PCI: Add managed partial-BAR request and map infrastructure
  PCI: Add devres helpers for iomap table
  PCI: Add and use devres helper for bit masks
  ...
Diffstat (limited to 'drivers/usb/cdns3/cdns3-trace.c')
0 files changed, 0 insertions, 0 deletions
