aboutsummaryrefslogtreecommitdiff
path: root/drivers/power/domain
diff options
context:
space:
mode:
authorPeng Fan2020-05-04 21:16:52 +0800
committerStefano Babic2020-05-10 20:55:20 +0200
commite8f8b5ccf2b1b02f1614941d025c31cfbf78ab2b (patch)
tree96a47b8d12da9b390157481e63306959c20ec441 /drivers/power/domain
parentca0c52710c14e9d38f8e493625a3a51147ebddcc (diff)
power: imx8: remove the resource owned check before power off
For all the devices used and set ACTIVE in U-Boot, U-Boot needs to power off all of them without the check of resource owner. When we create software partition before booting Linux, the resource own checkw will return false, and cause the power domain not powered off. If without the check of resource owner, the power domain in the other software partition could be powered off with parent partition could access child partition resources. Signed-off-by: Peng Fan <peng.fan@nxp.com>
Diffstat (limited to 'drivers/power/domain')
-rw-r--r--drivers/power/domain/imx8-power-domain-legacy.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/power/domain/imx8-power-domain-legacy.c b/drivers/power/domain/imx8-power-domain-legacy.c
index e6e619358c3..b68be40766d 100644
--- a/drivers/power/domain/imx8-power-domain-legacy.c
+++ b/drivers/power/domain/imx8-power-domain-legacy.c
@@ -137,13 +137,13 @@ static int imx8_power_domain_off_node(struct power_domain *power_domain)
}
if (pdata->resource_id != SC_R_LAST) {
- if (!sc_rm_is_resource_owned(-1, pdata->resource_id)) {
- printf("%s not owned by curr partition\n", dev->name);
- return 0;
- }
ret = sc_pm_set_resource_power_mode(-1, pdata->resource_id,
SC_PM_PW_MODE_OFF);
if (ret) {
+ if (!sc_rm_is_resource_owned(-1, pdata->resource_id)) {
+ printf("%s not owned by curr partition %d\n", dev->name, pdata->resource_id);
+ return 0;
+ }
printf("Error: %s Power off failed! (error = %d)\n",
dev->name, ret);
return -EIO;