Re: [PATCH] bus: brcmstb_gisb: Allow building as module

From: Guenter Roeck
Date: Thu Nov 04 2021 - 22:52:04 EST


On Fri, Sep 24, 2021 at 12:10:34PM -0700, Florian Fainelli wrote:
> Allow building the Broadcom STB GISB arbiter driver as a module, however
> similar to interrupt controller drivers, don't allow its unbind/removal
> since it is not quite prepared for that and we want it to catch bus
> errors all the time.
>
> Signed-off-by: Florian Fainelli <f.fainelli@xxxxxxxxx>

Hmm, did you actually test that ?

Building mips:allmodconfig ... failed
--------------
Error log:
<stdin>:1559:2: warning: #warning syscall futex_waitv not implemented [-Wcpp]
ERROR: modpost: "board_be_handler" [drivers/bus/brcmstb_gisb.ko] undefined!

Guenter

> drivers/bus/Kconfig | 2 +-
> drivers/bus/brcmstb_gisb.c | 7 ++++++-
> 2 files changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/bus/Kconfig b/drivers/bus/Kconfig
> index a5b96f3aad67..9cfeae3fc244 100644
> --- a/drivers/bus/Kconfig
> +++ b/drivers/bus/Kconfig
> @@ -30,7 +30,7 @@ config ARM_INTEGRATOR_LM
> found on the ARM Integrator AP (Application Platform)
>
> config BRCMSTB_GISB_ARB
> - bool "Broadcom STB GISB bus arbiter"
> + tristate "Broadcom STB GISB bus arbiter"
> depends on ARM || ARM64 || MIPS
> default ARCH_BRCMSTB || BMIPS_GENERIC
> help
> diff --git a/drivers/bus/brcmstb_gisb.c b/drivers/bus/brcmstb_gisb.c
> index 6551286a60cc..4c2f7d61cb9b 100644
> --- a/drivers/bus/brcmstb_gisb.c
> +++ b/drivers/bus/brcmstb_gisb.c
> @@ -1,6 +1,6 @@
> // SPDX-License-Identifier: GPL-2.0-only
> /*
> - * Copyright (C) 2014-2017 Broadcom
> + * Copyright (C) 2014-2021 Broadcom
> */
>
> #include <linux/init.h>
> @@ -536,6 +536,7 @@ static struct platform_driver brcmstb_gisb_arb_driver = {
> .name = "brcm-gisb-arb",
> .of_match_table = brcmstb_gisb_arb_of_match,
> .pm = &brcmstb_gisb_arb_pm_ops,
> + .suppress_bind_attrs = true,
> },
> };
>
> @@ -546,3 +547,7 @@ static int __init brcm_gisb_driver_init(void)
> }
>
> module_init(brcm_gisb_driver_init);
> +
> +MODULE_AUTHOR("Broadcom");
> +MODULE_DESCRIPTION("Broadcom STB GISB arbiter driver");
> +MODULE_LICENSE("GPL v2");