summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikhil M Jain <n-jain1@ti.com>2023-07-27 12:01:26 +0530
committerAnatolij Gustschin <agust@denx.de>2023-08-01 13:41:02 +0200
commitb8d3a6c7d12fc6101f99cde0acedb4a799fdb5f3 (patch)
treef556c662c07a7e2888493e5b810f9096b293ee58
parent3f9b5a7ffa75871b238f931af37f8f595e998838 (diff)
downloadu-boot-b8d3a6c7d12fc6101f99cde0acedb4a799fdb5f3.tar.gz
u-boot-b8d3a6c7d12fc6101f99cde0acedb4a799fdb5f3.tar.bz2
u-boot-b8d3a6c7d12fc6101f99cde0acedb4a799fdb5f3.zip
drivers: video: tidss: tidss_drv: Use kconfig VIDEO_REMOVE to remove video
Perform removal of DSS if kconfigs VIDEO_REMOVE or SPL_VIDEO_REMOVE is set by user. Otherwise if above Kconfigs are not selected, it is assumed that user wants splash screen to be displayed until linux kernel boots up. In such scenario, leave the power domain of DSS as "on" so that splash screen stays intact until kernel boots up. Signed-off-by: Nikhil M Jain <n-jain1@ti.com> Reviewed-by: Devarsh Thakkar <devarsht@ti.com>
-rw-r--r--drivers/video/tidss/tidss_drv.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/video/tidss/tidss_drv.c b/drivers/video/tidss/tidss_drv.c
index 623bf4cf31..e285f255d7 100644
--- a/drivers/video/tidss/tidss_drv.c
+++ b/drivers/video/tidss/tidss_drv.c
@@ -901,9 +901,11 @@ static int tidss_drv_probe(struct udevice *dev)
static int tidss_drv_remove(struct udevice *dev)
{
- struct tidss_drv_priv *priv = dev_get_priv(dev);
+ if (CONFIG_IS_ENABLED(VIDEO_REMOVE)) {
+ struct tidss_drv_priv *priv = dev_get_priv(dev);
- VP_REG_FLD_MOD(priv, 0, DSS_VP_CONTROL, 0, 0, 0);
+ VP_REG_FLD_MOD(priv, 0, DSS_VP_CONTROL, 0, 0, 0);
+ }
return 0;
}
@@ -929,5 +931,9 @@ U_BOOT_DRIVER(tidss_drv) = {
.probe = tidss_drv_probe,
.remove = tidss_drv_remove,
.priv_auto = sizeof(struct tidss_drv_priv),
+#if CONFIG_IS_ENABLED(VIDEO_REMOVE)
.flags = DM_FLAG_OS_PREPARE,
+#else
+ .flags = DM_FLAG_OS_PREPARE | DM_FLAG_LEAVE_PD_ON,
+#endif
};