Re: [PATCH] mailbox, remoteproc: omap2+: fix compile testing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 9/9/24 3:38 PM, Arnd Bergmann wrote:
From: Arnd Bergmann <arnd@xxxxxxxx>

Selecting CONFIG_OMAP2PLUS_MBOX while compile testing
causes a build failure:

WARNING: unmet direct dependencies detected for OMAP2PLUS_MBOX
   Depends on [n]: MAILBOX [=y] && (ARCH_OMAP2PLUS || ARCH_K3)
   Selected by [m]:
   - TI_K3_M4_REMOTEPROC [=m] && REMOTEPROC [=y] && (ARCH_K3 || COMPILE_TEST [=y])

Using 'select' to force-enable another subsystem is generally
a mistake and causes problems such as this one, so change the
three drivers that link against this driver to use 'depends on'
instead, and ensure the driver itself can be compile tested
regardless of the platform.

When compile-testing without CONFIG_TI_SCI_PROTOCOL=m, there
is a chance for a link failure, so add a careful dependency
on that.

arm-linux-gnueabi-ld: drivers/remoteproc/ti_k3_m4_remoteproc.o: in function `k3_m4_rproc_probe':
ti_k3_m4_remoteproc.c:(.text.k3_m4_rproc_probe+0x76): undefined reference to `devm_ti_sci_get_by_phandle'

Fixes: ebcf9008a895 ("remoteproc: k3-m4: Add a remoteproc driver for M4F subsystem")
Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
---
  drivers/mailbox/Kconfig        |  2 +-
  drivers/mailbox/omap-mailbox.c |  2 +-
  drivers/remoteproc/Kconfig     | 10 ++++------
  3 files changed, 6 insertions(+), 8 deletions(-)

diff --git a/drivers/mailbox/Kconfig b/drivers/mailbox/Kconfig
index 4eed97295927..ecaf78beb934 100644
--- a/drivers/mailbox/Kconfig
+++ b/drivers/mailbox/Kconfig
@@ -73,7 +73,7 @@ config ARMADA_37XX_RWTM_MBOX
config OMAP2PLUS_MBOX
  	tristate "OMAP2+ Mailbox framework support"
-	depends on ARCH_OMAP2PLUS || ARCH_K3
+	depends on ARCH_OMAP2PLUS || ARCH_K3 || COMPILE_TEST
  	help
  	  Mailbox implementation for OMAP family chips with hardware for
  	  interprocessor communication involving DSP, IVA1.0 and IVA2 in
diff --git a/drivers/mailbox/omap-mailbox.c b/drivers/mailbox/omap-mailbox.c
index 7a87424657a1..6797770474a5 100644
--- a/drivers/mailbox/omap-mailbox.c
+++ b/drivers/mailbox/omap-mailbox.c
@@ -603,7 +603,7 @@ static struct platform_driver omap_mbox_driver = {
  	.driver	= {
  		.name = "omap-mailbox",
  		.pm = &omap_mbox_pm_ops,
-		.of_match_table = of_match_ptr(omap_mailbox_of_match),
+		.of_match_table = omap_mailbox_of_match,

We could have done this in its own series. Someday we need to
check everywhere for of_match being unconditionally defined but
still using of_match_ptr(). Coccinelle might help here..

Anyway, LGTM

Reviewed-by: Andrew Davis <afd@xxxxxx>

  	},
  };
  module_platform_driver(omap_mbox_driver);
diff --git a/drivers/remoteproc/Kconfig b/drivers/remoteproc/Kconfig
index 0f0862e20a93..62f8548fb46a 100644
--- a/drivers/remoteproc/Kconfig
+++ b/drivers/remoteproc/Kconfig
@@ -330,8 +330,7 @@ config STM32_RPROC
  config TI_K3_DSP_REMOTEPROC
  	tristate "TI K3 DSP remoteproc support"
  	depends on ARCH_K3
-	select MAILBOX
-	select OMAP2PLUS_MBOX
+	depends on OMAP2PLUS_MBOX
  	help
  	  Say m here to support TI's C66x and C71x DSP remote processor
  	  subsystems on various TI K3 family of SoCs through the remote
@@ -343,8 +342,8 @@ config TI_K3_DSP_REMOTEPROC
  config TI_K3_M4_REMOTEPROC
  	tristate "TI K3 M4 remoteproc support"
  	depends on ARCH_K3 || COMPILE_TEST
-	select MAILBOX
-	select OMAP2PLUS_MBOX
+	depends on TI_SCI_PROTOCOL || (COMPILE_TEST && TI_SCI_PROTOCOL=n)
+	depends on OMAP2PLUS_MBOX
  	help
  	  Say m here to support TI's M4 remote processor subsystems
  	  on various TI K3 family of SoCs through the remote processor
@@ -356,8 +355,7 @@ config TI_K3_M4_REMOTEPROC
  config TI_K3_R5_REMOTEPROC
  	tristate "TI K3 R5 remoteproc support"
  	depends on ARCH_K3
-	select MAILBOX
-	select OMAP2PLUS_MBOX
+	depends on OMAP2PLUS_MBOX
  	help
  	  Say m here to support TI's R5F remote processor subsystems
  	  on various TI K3 family of SoCs through the remote processor




[Index of Archives]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux