Re: [PATCH 1/4] PCI: cadence: Add support to build pcie-cadence library as a kernel module

From: Manivannan Sadhasivam
Date: Tue Mar 18 2025 - 03:54:10 EST


On Fri, Mar 14, 2025 at 12:24:44PM +0530, Siddharth Vadapalli wrote:
> On Thu, Mar 13, 2025 at 11:14:16PM +0530, Manivannan Sadhasivam wrote:
>
> Hello Mani,
>
> > On Fri, Mar 07, 2025 at 04:01:25PM +0530, Siddharth Vadapalli wrote:
> > > From: Kishon Vijay Abraham I <kishon@xxxxxx>
> > >
> > > Currently, the Cadence PCIe controller driver can be built as a built-in
> > > module only. Since PCIe functionality is not a necessity for booting, add
> > > support to build the Cadence PCIe driver as a loadable module as well.
> > >
> > > Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
> > > Signed-off-by: Siddharth Vadapalli <s-vadapalli@xxxxxx>
> >
> > Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>
> >
> > > ---
> > > drivers/pci/controller/cadence/Kconfig | 6 +++---
> > > drivers/pci/controller/cadence/pcie-cadence-ep.c | 6 ++++++
> > > drivers/pci/controller/cadence/pcie-cadence-host.c | 9 +++++++++
> > > drivers/pci/controller/cadence/pcie-cadence.c | 12 ++++++++++++
> > > drivers/pci/controller/cadence/pcie-cadence.h | 4 ++--
> > > 5 files changed, 32 insertions(+), 5 deletions(-)
> > >
> > > diff --git a/drivers/pci/controller/cadence/Kconfig b/drivers/pci/controller/cadence/Kconfig
> > > index 8a0044bb3989..82b58096eea0 100644
> > > --- a/drivers/pci/controller/cadence/Kconfig
> > > +++ b/drivers/pci/controller/cadence/Kconfig
> > > @@ -4,16 +4,16 @@ menu "Cadence-based PCIe controllers"
> > > depends on PCI
> > >
> > > config PCIE_CADENCE
> > > - bool
> > > + tristate
> > >
> > > config PCIE_CADENCE_HOST
> > > - bool
> > > + tristate
> > > depends on OF
> > > select IRQ_DOMAIN
> >
> > Even though this was added earlier, looks like not needed.
>
> Thank you for reviewing this patch.
>
> drivers/pci/controller/cadence/Kconfig has the following:
> ...
> config PCIE_CADENCE_HOST
> bool
> depends on OF
> select IRQ_DOMAIN
> select PCIE_CADENCE
> ...
> config PCI_J721E_HOST
> bool "TI J721E PCIe controller (host mode)"
> depends on ARCH_K3 || COMPILE_TEST
> depends on OF
> select PCIE_CADENCE_HOST
> select PCI_J721E
> ...
> So PCI_J721E_HOST selects PCIE_CADENCE_HOST which in turn selects
> PCIE_CADENCE. As of now, none of these configs are enabled in
> arm64-defconfig, and they also will not be accepted as built-in modules
> as it will bloat the Linux Image for everyone. For that reason, they are
> all being converted to loadable modules, and their configs will eventually
> be enabled in arm64-defconfig as loadable modules.
>
> Please let me know if I misunderstood your comment regarding the quoted
> change not being required.
>

Yes, you misunderstood indeed :) My earlier comment was about IRQ_DOMAIN symbol
which looked like not needed at all.

- Mani

--
மணிவண்ணன் சதாசிவம்