[PATCH v4 0/4] PCI: Keystone: Enable loadable module support

Siddharth Vadapalli s-vadapalli at ti.com
Wed Oct 22 02:57:08 PDT 2025


Hello,

This series enables support for the 'pci-keystone.c' driver to be built
as a loadable module. The motivation for the series is that PCIe is not
a necessity for booting Linux due to which the 'pci-keystone.c' driver
does not need to be built-in.

Series is based on 6.18-rc1 tag of Mainline Linux.

DEPENDENCY
----------
This series has __NO__ dependencies since the dependencies stated in the
cover-letter of the v3 series at:
https://lore.kernel.org/r/20250922071222.2814937-1-s-vadapalli@ti.com/
have been satisfied.

v3:
https://lore.kernel.org/r/20250922071222.2814937-1-s-vadapalli@ti.com/
Changes since v3:
- Rebased series on 6.18-rc1 tag of Mainline Linux.
- Patch 4 has been updated to remove the '__init' keyword from functions
  to avoid triggering an exception due to '__init' memory being freed
  before functions are invoked. This is the equivalent of:
  https://lore.kernel.org/r/20250912100802.3136121-3-s-vadapalli@ti.com/
  while addressing Bjorn's feedback at:
  https://lore.kernel.org/r/20251002143627.GA267439@bhelgaas/
  by introducing a new 'init' function specifically for registering the
  fault handler while the rest of the driver remains the same.

Series has been tested on AM654-EVM with an NVMe SSD connected to the
PCIe Connector of the EVM. Test Logs:
https://gist.github.com/Siddharth-Vadapalli-at-TI/332e8d65c66ed93e95c2d89ec1ee3f68

Regards,
Siddharth.

Siddharth Vadapalli (4):
  PCI: Export pci_get_host_bridge_device() for use by pci-keystone
  PCI: dwc: Export dw_pcie_allocate_domains() and
    dw_pcie_ep_raise_msix_irq()
  PCI: keystone: Exit ks_pcie_probe() for invalid mode
  PCI: keystone: Add support to build as a loadable module

 drivers/pci/controller/dwc/Kconfig            |  6 +--
 drivers/pci/controller/dwc/pci-keystone.c     | 38 +++++++++++++------
 .../pci/controller/dwc/pcie-designware-ep.c   |  1 +
 .../pci/controller/dwc/pcie-designware-host.c |  1 +
 drivers/pci/host-bridge.c                     |  1 +
 include/linux/pci.h                           |  1 +
 6 files changed, 33 insertions(+), 15 deletions(-)

-- 
2.51.0




More information about the linux-arm-kernel mailing list