diff options
author | Peng Fan <peng.fan@nxp.com> | 2020-05-04 21:16:52 +0800 |
---|---|---|
committer | Stefano Babic <sbabic@denx.de> | 2020-05-10 20:55:20 +0200 |
commit | e8f8b5ccf2b1b02f1614941d025c31cfbf78ab2b (patch) | |
tree | 96a47b8d12da9b390157481e63306959c20ec441 | |
parent | ca0c52710c14e9d38f8e493625a3a51147ebddcc (diff) | |
download | u-boot-e8f8b5ccf2b1b02f1614941d025c31cfbf78ab2b.zip u-boot-e8f8b5ccf2b1b02f1614941d025c31cfbf78ab2b.tar.gz u-boot-e8f8b5ccf2b1b02f1614941d025c31cfbf78ab2b.tar.bz2 |
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>
-rw-r--r-- | drivers/power/domain/imx8-power-domain-legacy.c | 8 |
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 e6e6193..b68be40 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; |