From: Peng Fan <[email protected]>
Should not register power domain that not owned by current
partition.
Reviewed-by: Leonard Crestez <[email protected]>
Signed-off-by: Peng Fan <[email protected]>
---
drivers/firmware/imx/scu-pd.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/firmware/imx/scu-pd.c b/drivers/firmware/imx/scu-pd.c
index d1b313fa7b96..7b43bd63cc1e 100644
--- a/drivers/firmware/imx/scu-pd.c
+++ b/drivers/firmware/imx/scu-pd.c
@@ -46,6 +46,7 @@
#include <dt-bindings/firmware/imx/rsrc.h>
#include <linux/firmware/imx/sci.h>
+#include <linux/firmware/imx/svc/rm.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/of.h>
@@ -246,6 +247,9 @@ imx_scu_add_pm_domain(struct device *dev, int idx,
struct imx_sc_pm_domain *sc_pd;
int ret;
+ if (!imx_sc_rm_is_resource_owned(pm_ipc_handle, pd_ranges->rsrc + idx))
+ return NULL;
+
sc_pd = devm_kzalloc(dev, sizeof(*sc_pd), GFP_KERNEL);
if (!sc_pd)
return ERR_PTR(-ENOMEM);
--
2.16.4
> From: Peng Fan <[email protected]>
> Sent: Thursday, April 23, 2020 3:00 PM
>
> Should not register power domain that not owned by current partition.
>
> Reviewed-by: Leonard Crestez <[email protected]>
> Signed-off-by: Peng Fan <[email protected]>
> ---
> drivers/firmware/imx/scu-pd.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/firmware/imx/scu-pd.c b/drivers/firmware/imx/scu-pd.c
> index d1b313fa7b96..7b43bd63cc1e 100644
> --- a/drivers/firmware/imx/scu-pd.c
> +++ b/drivers/firmware/imx/scu-pd.c
> @@ -46,6 +46,7 @@
>
> #include <dt-bindings/firmware/imx/rsrc.h> #include
> <linux/firmware/imx/sci.h>
> +#include <linux/firmware/imx/svc/rm.h>
> #include <linux/io.h>
> #include <linux/module.h>
> #include <linux/of.h>
> @@ -246,6 +247,9 @@ imx_scu_add_pm_domain(struct device *dev, int idx,
> struct imx_sc_pm_domain *sc_pd;
> int ret;
>
> + if (!imx_sc_rm_is_resource_owned(pm_ipc_handle, pd_ranges->rsrc + idx))
> + return NULL;
> +
Same question.
See my comment on patch 2/4.
Regards
Aisheng
> sc_pd = devm_kzalloc(dev, sizeof(*sc_pd), GFP_KERNEL);
> if (!sc_pd)
> return ERR_PTR(-ENOMEM);
> --
> 2.16.4