public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [PATCH 0/2] Update remove method for DSS driver
@ 2023-07-27  6:31 Nikhil M Jain
  2023-07-27  6:31 ` [PATCH 1/2] drivers: video: tidss: tidss_drv: Change remove method Nikhil M Jain
  2023-07-27  6:31 ` [PATCH 2/2] drivers: video: tidss: tidss_drv: Use kconfig VIDEO_REMOVE to remove video Nikhil M Jain
  0 siblings, 2 replies; 7+ messages in thread
From: Nikhil M Jain @ 2023-07-27  6:31 UTC (permalink / raw)
  To: u-boot; +Cc: n-jain1, trini, devarsht, vigneshr, nsekhar

This patch series aims at updating the remove method for DSS video
driver.

Nikhil M Jain (2):
  drivers: video: tidss: tidss_drv: Change remove method
  drivers: video: tidss: tidss_drv: Use kconfig VIDEO_REMOVE to remove
    video

 drivers/video/tidss/tidss_drv.c | 18 +++++++-----------
 1 file changed, 7 insertions(+), 11 deletions(-)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/2] drivers: video: tidss: tidss_drv: Change remove method
  2023-07-27  6:31 [PATCH 0/2] Update remove method for DSS driver Nikhil M Jain
@ 2023-07-27  6:31 ` Nikhil M Jain
  2023-08-01  9:47   ` Devarsh Thakkar
  2023-08-01 18:03   ` Anatolij Gustschin
  2023-07-27  6:31 ` [PATCH 2/2] drivers: video: tidss: tidss_drv: Use kconfig VIDEO_REMOVE to remove video Nikhil M Jain
  1 sibling, 2 replies; 7+ messages in thread
From: Nikhil M Jain @ 2023-07-27  6:31 UTC (permalink / raw)
  To: u-boot; +Cc: n-jain1, trini, devarsht, vigneshr, nsekhar

Change remove method of DSS video driver to disable video port instead
of performing a soft reset, as soft reset takes longer duration. Video
port is disabled by setting enable bit of video port to 0.

Signed-off-by: Nikhil M Jain <n-jain1@ti.com>
---
 drivers/video/tidss/tidss_drv.c | 12 +-----------
 1 file changed, 1 insertion(+), 11 deletions(-)

diff --git a/drivers/video/tidss/tidss_drv.c b/drivers/video/tidss/tidss_drv.c
index 078e3e82e3..623bf4cf31 100644
--- a/drivers/video/tidss/tidss_drv.c
+++ b/drivers/video/tidss/tidss_drv.c
@@ -901,19 +901,9 @@ static int tidss_drv_probe(struct udevice *dev)
 
 static int tidss_drv_remove(struct udevice *dev)
 {
-	u32 val;
-	int ret;
 	struct tidss_drv_priv *priv = dev_get_priv(dev);
 
-	priv->base_common = dev_remap_addr_index(dev, 0);
-	REG_FLD_MOD(priv, DSS_SYSCONFIG, 1, 1, 1);
-	/* Wait for reset to complete */
-	ret = readl_poll_timeout(priv->base_common + DSS_SYSSTATUS,
-				 val, val & 1, 5000);
-	if (ret) {
-		dev_warn(priv->dev, "failed to reset priv\n");
-		return ret;
-	}
+	VP_REG_FLD_MOD(priv, 0, DSS_VP_CONTROL, 0, 0, 0);
 	return 0;
 }
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/2] drivers: video: tidss: tidss_drv: Use kconfig VIDEO_REMOVE to remove video
  2023-07-27  6:31 [PATCH 0/2] Update remove method for DSS driver Nikhil M Jain
  2023-07-27  6:31 ` [PATCH 1/2] drivers: video: tidss: tidss_drv: Change remove method Nikhil M Jain
@ 2023-07-27  6:31 ` Nikhil M Jain
  2023-08-01 10:32   ` Devarsh Thakkar
  2023-08-01 18:03   ` Anatolij Gustschin
  1 sibling, 2 replies; 7+ messages in thread
From: Nikhil M Jain @ 2023-07-27  6:31 UTC (permalink / raw)
  To: u-boot; +Cc: n-jain1, trini, devarsht, vigneshr, nsekhar

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>
---
 drivers/video/tidss/tidss_drv.c | 10 ++++++++--
 1 file 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
 };
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/2] drivers: video: tidss: tidss_drv: Change remove method
  2023-07-27  6:31 ` [PATCH 1/2] drivers: video: tidss: tidss_drv: Change remove method Nikhil M Jain
@ 2023-08-01  9:47   ` Devarsh Thakkar
  2023-08-01 18:03   ` Anatolij Gustschin
  1 sibling, 0 replies; 7+ messages in thread
From: Devarsh Thakkar @ 2023-08-01  9:47 UTC (permalink / raw)
  To: Jain, Nikhil, u-boot@lists.denx.de
  Cc: trini@konsulko.com, Raghavendra, Vignesh, Nori, Sekhar



On 27/07/23 12:01, Jain, Nikhil wrote:
> Change remove method of DSS video driver to disable video port instead
> of performing a soft reset, as soft reset takes longer duration. Video
> port is disabled by setting enable bit of video port to 0.
> 
> Signed-off-by: Nikhil M Jain <n-jain1@ti.com>

Reviewed-by: Devarsh Thakkar <devarsht@ti.com>

> ---
>  drivers/video/tidss/tidss_drv.c | 12 +-----------
>  1 file changed, 1 insertion(+), 11 deletions(-)
> 
> diff --git a/drivers/video/tidss/tidss_drv.c b/drivers/video/tidss/tidss_drv.c
> index 078e3e82e3..623bf4cf31 100644
> --- a/drivers/video/tidss/tidss_drv.c
> +++ b/drivers/video/tidss/tidss_drv.c
> @@ -901,19 +901,9 @@ static int tidss_drv_probe(struct udevice *dev)
>  
>  static int tidss_drv_remove(struct udevice *dev)
>  {
> -	u32 val;
> -	int ret;
>  	struct tidss_drv_priv *priv = dev_get_priv(dev);
>  
> -	priv->base_common = dev_remap_addr_index(dev, 0);
> -	REG_FLD_MOD(priv, DSS_SYSCONFIG, 1, 1, 1);
> -	/* Wait for reset to complete */
> -	ret = readl_poll_timeout(priv->base_common + DSS_SYSSTATUS,
> -				 val, val & 1, 5000);
> -	if (ret) {
> -		dev_warn(priv->dev, "failed to reset priv\n");
> -		return ret;
> -	}
> +	VP_REG_FLD_MOD(priv, 0, DSS_VP_CONTROL, 0, 0, 0);
>  	return 0;
>  }
>  

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/2] drivers: video: tidss: tidss_drv: Use kconfig VIDEO_REMOVE to remove video
  2023-07-27  6:31 ` [PATCH 2/2] drivers: video: tidss: tidss_drv: Use kconfig VIDEO_REMOVE to remove video Nikhil M Jain
@ 2023-08-01 10:32   ` Devarsh Thakkar
  2023-08-01 18:03   ` Anatolij Gustschin
  1 sibling, 0 replies; 7+ messages in thread
From: Devarsh Thakkar @ 2023-08-01 10:32 UTC (permalink / raw)
  To: Jain, Nikhil, u-boot@lists.denx.de
  Cc: trini@konsulko.com, Raghavendra, Vignesh, Nori, Sekhar



On 27/07/23 12:01, Jain, Nikhil wrote:
> 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>

> ---
>  drivers/video/tidss/tidss_drv.c | 10 ++++++++--
>  1 file 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
>  };

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/2] drivers: video: tidss: tidss_drv: Change remove method
  2023-07-27  6:31 ` [PATCH 1/2] drivers: video: tidss: tidss_drv: Change remove method Nikhil M Jain
  2023-08-01  9:47   ` Devarsh Thakkar
@ 2023-08-01 18:03   ` Anatolij Gustschin
  1 sibling, 0 replies; 7+ messages in thread
From: Anatolij Gustschin @ 2023-08-01 18:03 UTC (permalink / raw)
  To: Nikhil M Jain; +Cc: u-boot, trini, devarsht, vigneshr, nsekhar

On Thu, 27 Jul 2023 12:01:25 +0530
Nikhil M Jain n-jain1@ti.com wrote:

> Change remove method of DSS video driver to disable video port instead
> of performing a soft reset, as soft reset takes longer duration. Video
> port is disabled by setting enable bit of video port to 0.
> 
> Signed-off-by: Nikhil M Jain <n-jain1@ti.com>
> ---
>  drivers/video/tidss/tidss_drv.c | 12 +-----------
>  1 file changed, 1 insertion(+), 11 deletions(-)

applied to u-boot-video/master, thanks!

--
Anatolij

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/2] drivers: video: tidss: tidss_drv: Use kconfig VIDEO_REMOVE to remove video
  2023-07-27  6:31 ` [PATCH 2/2] drivers: video: tidss: tidss_drv: Use kconfig VIDEO_REMOVE to remove video Nikhil M Jain
  2023-08-01 10:32   ` Devarsh Thakkar
@ 2023-08-01 18:03   ` Anatolij Gustschin
  1 sibling, 0 replies; 7+ messages in thread
From: Anatolij Gustschin @ 2023-08-01 18:03 UTC (permalink / raw)
  To: Nikhil M Jain; +Cc: u-boot, trini, devarsht, vigneshr, nsekhar

On Thu, 27 Jul 2023 12:01:26 +0530
Nikhil M Jain n-jain1@ti.com wrote:

> 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>
> ---
>  drivers/video/tidss/tidss_drv.c | 10 ++++++++--
>  1 file changed, 8 insertions(+), 2 deletions(-)

applied to u-boot-video/master, thanks!

--
Anatolij

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-08-01 18:03 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-27  6:31 [PATCH 0/2] Update remove method for DSS driver Nikhil M Jain
2023-07-27  6:31 ` [PATCH 1/2] drivers: video: tidss: tidss_drv: Change remove method Nikhil M Jain
2023-08-01  9:47   ` Devarsh Thakkar
2023-08-01 18:03   ` Anatolij Gustschin
2023-07-27  6:31 ` [PATCH 2/2] drivers: video: tidss: tidss_drv: Use kconfig VIDEO_REMOVE to remove video Nikhil M Jain
2023-08-01 10:32   ` Devarsh Thakkar
2023-08-01 18:03   ` Anatolij Gustschin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox