mailbox: qcom-ipcc: Enable loading QCOM_IPCC as a module
authorAmit Pundir <amit.pundir@linaro.org>
Fri, 16 Jul 2021 07:49:46 +0000 (13:19 +0530)
committerJassi Brar <jaswinder.singh@linaro.org>
Mon, 30 Aug 2021 04:50:15 +0000 (23:50 -0500)
This patch enables the qcom_ipcc driver to be loaded as a
module. IPCC is fairly core to system, so as such it should
never be unloaded. It registers as a mailbox + irq controller
and the irq controller drivers in kernel are not supposed to
be unloaded as they don't have the visibility over the clients
consuming the irqs. Hence adding supress_bind_attrs to disable
bind/unbind via sysfs.

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
drivers/mailbox/Kconfig
drivers/mailbox/qcom-ipcc.c

index b4b780ea2ac8cc2771e06a308d2ce2a773bc88a5..c9fc06c7e68572f4cf37d3dc6facd5142d506455 100644 (file)
@@ -264,7 +264,7 @@ config SPRD_MBOX
          you want to build the Spreatrum mailbox controller driver.
 
 config QCOM_IPCC
-       bool "Qualcomm Technologies, Inc. IPCC driver"
+       tristate "Qualcomm Technologies, Inc. IPCC driver"
        depends on ARCH_QCOM || COMPILE_TEST
        help
          Qualcomm Technologies, Inc. Inter-Processor Communication Controller
index 584700cd15855181dfb41c9485db28e5612cdc5b..f1d4f4679b17bad3beb3c5ddd83b9efe0b65783f 100644 (file)
@@ -277,6 +277,7 @@ static struct platform_driver qcom_ipcc_driver = {
        .driver = {
                .name = "qcom-ipcc",
                .of_match_table = qcom_ipcc_of_match,
+               .suppress_bind_attrs = true,
        },
 };