public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH v5 0/4] PCI: Keystone: Enable loadable module support
@ 2025-10-29  8:04 Siddharth Vadapalli
  2025-10-29  8:04 ` [PATCH v5 1/4] PCI: Export pci_get_host_bridge_device() for use by pci-keystone Siddharth Vadapalli
                   ` (4 more replies)
  0 siblings, 5 replies; 13+ messages in thread
From: Siddharth Vadapalli @ 2025-10-29  8:04 UTC (permalink / raw)
  To: lpieralisi, kwilczynski, mani, robh, bhelgaas, jingoohan1,
	christian.bruel, krishna.chundru, qiang.yu, shradha.t,
	thippeswamy.havalige, inochiama, fan.ni, cassel, kishon,
	18255117159, rongqianfeng, jirislaby
  Cc: linux-pci, linux-kernel, linux-arm-kernel, srk, s-vadapalli

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.

This series has __NO__ dependencies.

v4:
https://lore.kernel.org/r/20251022095724.997218-1-s-vadapalli@ti.com/
Changes since v4:
- To fix the build error on ARM32 platforms as reported at:
  https://lore.kernel.org/r/202510281008.jw19XuyP-lkp@intel.com/
  patch 4 in the series has been updated by introducing a new config
  named "PCI_KEYSTONE_TRISTATE" which allows building the driver as
  a loadable module. Additionally, this newly introduced config can
  be enabled only for non-ARM32 platforms. As a result, ARM32 platforms
  continue using the existing PCI_KEYSTONE config which is a bool, while
  ARM64 platforms can use PCI_KEYSTONE_TRISTATE which is a tristate, and
  can optionally enabled loadable module support being enabled by this
  series.

Series has been compile tested with W=1 for ARM32 using
arm-none-linux-gnueabihf-gcc

Series has been tested for functionality on an ARM64 platform (AM65 SoC):
AM654-EVM with an NVMe SSD connected to the PCIe Connector of the EVM.
Test Logs:
https://gist.github.com/Siddharth-Vadapalli-at-TI/474a16037d990206e1d22399a93dfee7

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            | 15 +++-
 drivers/pci/controller/dwc/Makefile           |  3 +
 drivers/pci/controller/dwc/pci-keystone.c     | 80 +++++++++++--------
 .../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 +
 7 files changed, 65 insertions(+), 37 deletions(-)

-- 
2.51.0



^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2025-11-13 18:48 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-29  8:04 [PATCH v5 0/4] PCI: Keystone: Enable loadable module support Siddharth Vadapalli
2025-10-29  8:04 ` [PATCH v5 1/4] PCI: Export pci_get_host_bridge_device() for use by pci-keystone Siddharth Vadapalli
2025-10-29  8:04 ` [PATCH v5 2/4] PCI: dwc: Export dw_pcie_allocate_domains() and dw_pcie_ep_raise_msix_irq() Siddharth Vadapalli
2025-10-29  8:04 ` [PATCH v5 3/4] PCI: keystone: Exit ks_pcie_probe() for invalid mode Siddharth Vadapalli
2025-10-29  8:04 ` [PATCH v5 4/4] PCI: keystone: Add support to build as a loadable module Siddharth Vadapalli
2025-11-05 17:23   ` Manivannan Sadhasivam
2025-11-06  7:01     ` Siddharth Vadapalli
2025-11-06  8:00       ` Manivannan Sadhasivam
2025-11-13 18:13   ` Bjorn Helgaas
2025-11-13 18:35     ` Russell King (Oracle)
2025-11-13 18:48       ` Bjorn Helgaas
2025-11-06  8:10 ` [PATCH v5 0/4] PCI: Keystone: Enable loadable module support Manivannan Sadhasivam
2025-11-13 18:25   ` Bjorn Helgaas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox