diff options
-rw-r--r-- | drivers/soc/imx/gpc.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/soc/imx/gpc.c b/drivers/soc/imx/gpc.c index 7d14a4b4e82a..29b43651c261 100644 --- a/drivers/soc/imx/gpc.c +++ b/drivers/soc/imx/gpc.c | |||
@@ -431,10 +431,19 @@ static int imx_gpc_probe(struct platform_device *pdev) | |||
431 | return ret; | 431 | return ret; |
432 | } | 432 | } |
433 | 433 | ||
434 | /* Disable PU power down in normal operation if ERR009619 is present */ | 434 | /* |
435 | * Disable PU power down by runtime PM if ERR009619 is present. | ||
436 | * | ||
437 | * The PRE clock will be paused for several cycles when turning on the | ||
438 | * PU domain LDO from power down state. If PRE is in use at that time, | ||
439 | * the IPU/PRG cannot get the correct display data from the PRE. | ||
440 | * | ||
441 | * This is not a concern when the whole system enters suspend state, so | ||
442 | * it's safe to power down PU in this case. | ||
443 | */ | ||
435 | if (of_id_data->err009619_present) | 444 | if (of_id_data->err009619_present) |
436 | imx_gpc_domains[GPC_PGC_DOMAIN_PU].base.flags |= | 445 | imx_gpc_domains[GPC_PGC_DOMAIN_PU].base.flags |= |
437 | GENPD_FLAG_ALWAYS_ON; | 446 | GENPD_FLAG_RPM_ALWAYS_ON; |
438 | 447 | ||
439 | /* Keep DISP always on if ERR006287 is present */ | 448 | /* Keep DISP always on if ERR006287 is present */ |
440 | if (of_id_data->err006287_present) | 449 | if (of_id_data->err006287_present) |