On Thu 26 Mar 15:44 PDT 2020, John Stultz wrote: > This patch allow the rpmh driver to be loaded as a permenent > module. Meaning it can be loaded from a module, but then cannot > be unloaded. > > Ideally, it would include a remove hook and related logic, but > the rpmh driver is fairly core to the system, so once its loaded > with almost anythign else to get the system to go, the dependencies > are not likely to ever also be removed. > > So making it a permenent module at least improves things slightly > over requiring it to be a built in driver. > > Feedback would be appreciated! > > Cc: Todd Kjos <tkjos@xxxxxxxxxx> > Cc: Saravana Kannan <saravanak@xxxxxxxxxx> > Cc: Andy Gross <agross@xxxxxxxxxx> > Cc: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> > Cc: Rajendra Nayak <rnayak@xxxxxxxxxxxxxx> > Cc: linux-arm-msm@xxxxxxxxxxxxxxx > Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx> Reviewed-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> and applied. Regards, Bjorn > --- > drivers/soc/qcom/Kconfig | 2 +- > drivers/soc/qcom/rpmh-rsc.c | 6 ++++++ > 2 files changed, 7 insertions(+), 1 deletion(-) > > diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc/qcom/Kconfig > index af774555b9d2..ac91eaf810f7 100644 > --- a/drivers/soc/qcom/Kconfig > +++ b/drivers/soc/qcom/Kconfig > @@ -104,7 +104,7 @@ config QCOM_RMTFS_MEM > Say y here if you intend to boot the modem remoteproc. > > config QCOM_RPMH > - bool "Qualcomm RPM-Hardened (RPMH) Communication" > + tristate "Qualcomm RPM-Hardened (RPMH) Communication" > depends on ARCH_QCOM && ARM64 || COMPILE_TEST > help > Support for communication with the hardened-RPM blocks in > diff --git a/drivers/soc/qcom/rpmh-rsc.c b/drivers/soc/qcom/rpmh-rsc.c > index e278fc11fe5c..30585d98fdf1 100644 > --- a/drivers/soc/qcom/rpmh-rsc.c > +++ b/drivers/soc/qcom/rpmh-rsc.c > @@ -11,6 +11,7 @@ > #include <linux/io.h> > #include <linux/kernel.h> > #include <linux/list.h> > +#include <linux/module.h> > #include <linux/of.h> > #include <linux/of_irq.h> > #include <linux/of_platform.h> > @@ -679,6 +680,8 @@ static const struct of_device_id rpmh_drv_match[] = { > { .compatible = "qcom,rpmh-rsc", }, > { } > }; > +MODULE_DEVICE_TABLE(of, rpmh_drv_match); > + > > static struct platform_driver rpmh_driver = { > .probe = rpmh_rsc_probe, > @@ -693,3 +696,6 @@ static int __init rpmh_driver_init(void) > return platform_driver_register(&rpmh_driver); > } > arch_initcall(rpmh_driver_init); > + > +MODULE_DESCRIPTION("Qualcomm Technologies, Inc. RPMh Driver"); > +MODULE_LICENSE("GPL v2"); > -- > 2.17.1 >