diff options
author | Peng Fan <peng.fan@nxp.com> | 2018-10-16 13:51:52 +0800 |
---|---|---|
committer | Peng Fan <peng.fan@nxp.com> | 2018-10-23 16:42:31 +0800 |
commit | 7b800eb12b6501b9f8d78e492720c584d2cb4c31 (patch) | |
tree | 287375987daef2d338cf522fdefee11e6ad78618 | |
parent | 27d6b4cf3d8d6701aeb800b307ef52afd18540ba (diff) |
MLK-20010 imx8: ignore power off domu resources when domu-init-ignore-poweroff yes
When domu-init-ignore-poweroff set to yes, initially not power off
resources owned by DomU.
When supporting M4 + Android Auto, M4 and Android Auto shared display,
but currently no partition created in M4 for display, so
scu_rm will power off the display and cause android auto error.
Let ignore power off first.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
-rw-r--r-- | arch/arm/mach-imx/imx8/partition.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/arm/mach-imx/imx8/partition.c b/arch/arm/mach-imx/imx8/partition.c index f74758addc..af1093ee98 100644 --- a/arch/arm/mach-imx/imx8/partition.c +++ b/arch/arm/mach-imx/imx8/partition.c @@ -122,10 +122,18 @@ static int do_part_dtb(int argc, char * const argv[]) int i, ret; u32 *rsrc_data = NULL, *pad_data = NULL; const struct fdt_property *prop; + bool init_ignore_domu_power = false; + char *tmp; void *fdt; ipc_handle = gd->arch.ipc_channel_handle; + tmp = env_get("domu-init-ignore-poweroff"); + if (tmp && !strncmp(tmp, "yes", 3)) { + init_ignore_domu_power = true; + printf("ignore init power off domu power\n"); + } + if (argc) fdt = (void *)simple_strtoul(argv[0], NULL, 16); else @@ -201,6 +209,8 @@ static int do_part_dtb(int argc, char * const argv[]) debug("power on resource %d, err %d\n", rsrc_data[i], err); break; default: + if (init_ignore_domu_power) + break; err = sc_pm_set_resource_power_mode(ipc_handle, rsrc_data[i], SC_PM_PW_MODE_OFF); if (err) debug("power off resource %d, err %d\n", rsrc_data[i], err); |