EDAC/mpc85xx: Prevent building as a module [Linux 5.1.10]

EDAC/mpc85xx: Prevent building as a module [Linux 5.1.10]

This Linux kernel change "EDAC/mpc85xx: Prevent building as a module" is included in the Linux 5.1.10 release. This change is authored by Michael Ellerman <mpe [at] ellerman.id.au> on Fri May 3 00:19:41 2019 +1000. The commit for this change in Linux stable tree is ffbb616 (patch) which is from upstream commit 2b8358a. The same Linux upstream change may have been applied to various maintained Linux releases and you can find all Linux releases containing changes from upstream 2b8358a.

EDAC/mpc85xx: Prevent building as a module

[ Upstream commit 2b8358a951b1e2a534a54924cd8245e58a1c5fb8 ]

The mpc85xx EDAC driver can be configured as a module but then fails to
build because it uses two unexported symbols:

  ERROR: ".pci_find_hose_for_OF_device" [drivers/edac/mpc85xx_edac_mod.ko] undefined!
  ERROR: ".early_find_capability" [drivers/edac/mpc85xx_edac_mod.ko] undefined!

We don't want to export those symbols just for this driver, so make the
driver only configurable as a built-in.

This seems to have been broken since at least

  c92132f59806 ("edac/85xx: Add PCIe error interrupt edac support")

(Nov 2013).

 [ bp: make it depend on EDAC=y so that the EDAC core doesn't get built
   as a module. ]

Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Borislav Petkov <bp@suse.de>
Acked-by: Johannes Thumshirn <jth@kernel.org>
Cc: James Morse <james.morse@arm.com>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: linux-edac <linux-edac@vger.kernel.org>
Cc: linuxppc-dev@ozlabs.org
Cc: morbidrsa@gmail.com
Link: https://lkml.kernel.org/r/20190502141941.12927-1-mpe@ellerman.id.au
Signed-off-by: Sasha Levin <sashal@kernel.org>

There are 4 lines of Linux source code added/deleted in this change. Code changes to Linux kernel are as follows.

 drivers/edac/Kconfig | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/edac/Kconfig b/drivers/edac/Kconfig
index 47eb4d1..5e2e034 100644
--- a/drivers/edac/Kconfig
+++ b/drivers/edac/Kconfig
@@ -263,8 +263,8 @@ config EDAC_PND2
      micro-server but may appear on others in the future.

 config EDAC_MPC85XX
-   tristate "Freescale MPC83xx / MPC85xx"
-   depends on FSL_SOC
+   bool "Freescale MPC83xx / MPC85xx"
+   depends on FSL_SOC && EDAC=y
    help
      Support for error detection and correction on the Freescale
      MPC8349, MPC8560, MPC8540, MPC8548, T4240

Leave a Reply

Your email address will not be published. Required fields are marked *