Re: [PATCH v2 2/3] MIPS: cm/cpc: export some missing symbols to be able to use them from driver code
From: Bjorn Helgaas <helgaas@kernel.org>
Date: 2021-10-28 20:49:49
Also in:
linux-mediatek, linux-mips, linux-next, linux-pci
On Thu, Oct 28, 2021 at 11:59:17AM +0200, Sergio Paracuellos wrote:
On Thu, Oct 28, 2021 at 11:34 AM Sergio Paracuellos [off-list ref] wrote:quoted
On Thu, Oct 28, 2021 at 11:24 AM Thomas Bogendoerfer [off-list ref] wrote:quoted
On Thu, Oct 28, 2021 at 06:11:18AM +0200, Sergio Paracuellos wrote:quoted
On Thu, Oct 28, 2021 at 6:05 AM Yanteng Si [off-list ref] wrote:quoted
Since commit 2bdd5238e756 ("PCI: mt7621: Add MediaTek MT7621 PCIe host controller driver") the MT7621 PCIe host controller driver is built as a module but modpost complains once these drivers become modules. ERROR: modpost: "mips_cm_unlock_other" [drivers/pci/controller/pcie-mt7621.ko] undefined! ERROR: modpost: "mips_cpc_base" [drivers/pci/controller/pcie-mt7621.ko] undefined! ERROR: modpost: "mips_cm_lock_other" [drivers/pci/controller/pcie-mt7621.ko] undefined! ERROR: modpost: "mips_cm_is64" [drivers/pci/controller/pcie-mt7621.ko] undefined! ERROR: modpost: "mips_gcr_base" [drivers/pci/controller/pcie-mt7621.ko] undefined! Let's just export them. Signed-off-by: Yanteng Si <redacted> --- arch/mips/kernel/mips-cm.c | 5 +++++ arch/mips/kernel/mips-cpc.c | 1 + 2 files changed, 6 insertions(+)Reviewed-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>could we instead make the pcie-mt761 driver non modular ? Exporting all MIPS specific stuff for just making an essential driver modular doesn't IMHO make much sense.The driver is modular because I have been advised other times that new drivers should be able to be compiled as modules and we should avoid using 'bool' in Kconfig for new drivers. That's the only reason. I am also always including as 'y' the driver since for me not having pci in my boards has no sense... I am ok in changing Kconfig to be 'bool' instead of 'tristate', but I don't know what should be the correct thing to do in this case. Thoughts?I guess we also want the driver to at least be compile tested in 'allmodconfig' and other similars...
Sounds like the systems that actually use this driver require it to be built-in, and the only benefit of exporting these symbols is that we would get better compile test coverage. If that's the case, I agree that it's better to just make it non-modular. Bjorn _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel