[PATCH 07/15] drm/exynos: dsi: Add support for panel prepare and unprepare routines
Subsystems:
drm drivers , drm drivers for exynos , the rest
STALE4385d
5 messages,
5 authors,
2014-08-05 · open the first message on its own page
Modify exynos_dsi driver to support the new panel calls:
prepare and unprepare.
Signed-off-by: Ajay Kumar <redacted>
---
drivers/gpu/drm/exynos/exynos_drm_dsi.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
index dc7c80b..4834932 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c @@ -1351,7 +1351,7 @@ static int exynos_dsi_enable(struct exynos_dsi *dsi)
if ( ret < 0 )
return ret ;
- ret = drm_panel_enable ( dsi -> panel );
+ ret = drm_panel_prepare ( dsi -> panel );
if ( ret < 0 ) {
exynos_dsi_poweroff ( dsi );
return ret ; @@ -1360,6 +1360,13 @@ static int exynos_dsi_enable(struct exynos_dsi *dsi)
exynos_dsi_set_display_mode ( dsi );
exynos_dsi_set_display_enable ( dsi , true );
+ ret = drm_panel_enable ( dsi -> panel );
+ if ( ret < 0 ) {
+ exynos_dsi_set_display_enable ( dsi , false );
+ exynos_dsi_poweroff ( dsi );
+ return ret ;
+ }
+
dsi -> state |= DSIM_STATE_ENABLED ;
return 0 ; @@ -1370,8 +1377,9 @@ static void exynos_dsi_disable(struct exynos_dsi *dsi)
if ( ! ( dsi -> state & DSIM_STATE_ENABLED ))
return ;
- exynos_dsi_set_display_enable ( dsi , false );
drm_panel_disable ( dsi -> panel );
+ exynos_dsi_set_display_enable ( dsi , false );
+ drm_panel_unprepare ( dsi -> panel );
exynos_dsi_poweroff ( dsi );
dsi -> state &= ~ DSIM_STATE_ENABLED ; --
1.7.9.5
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, Jul 31, 2014 at 11:12:06PM +0530, Ajay Kumar wrote: Modify exynos_dsi driver to support the new panel calls:
prepare and unprepare.
Signed-off-by: Ajay Kumar <redacted>
---
drivers/gpu/drm/exynos/exynos_drm_dsi.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
And this one as well.
Thierry
2014-08-01 18:05 GMT+09:00 Thierry Reding [off-list ref]: On Thu, Jul 31, 2014 at 11:12:06PM +0530, Ajay Kumar wrote: quoted Modify exynos_dsi driver to support the new panel calls:
prepare and unprepare.
Signed-off-by: Ajay Kumar <redacted>
---
drivers/gpu/drm/exynos/exynos_drm_dsi.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
And this one as well.
Acked-by: Inki Dae <inki.dae@samsung.com>
Thanks,
Inki Dae
Thierry
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
Hi Ajay,
On 07/31/2014 07:42 PM, Ajay Kumar wrote: quoted hunk Modify exynos_dsi driver to support the new panel calls:
prepare and unprepare.
Signed-off-by: Ajay Kumar <redacted>
---
drivers/gpu/drm/exynos/exynos_drm_dsi.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
index dc7c80b..4834932 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c @@ -1351,7 +1351,7 @@ static int exynos_dsi_enable(struct exynos_dsi *dsi)
if ( ret < 0 )
return ret ;
- ret = drm_panel_enable ( dsi -> panel );
+ ret = drm_panel_prepare ( dsi -> panel );
if ( ret < 0 ) {
exynos_dsi_poweroff ( dsi );
return ret ; @@ -1360,6 +1360,13 @@ static int exynos_dsi_enable(struct exynos_dsi *dsi)
exynos_dsi_set_display_mode ( dsi );
exynos_dsi_set_display_enable ( dsi , true );
+ ret = drm_panel_enable ( dsi -> panel );
+ if ( ret < 0 ) {
+ exynos_dsi_set_display_enable ( dsi , false );
I guess drm_panel_unprepare(dsi->panel) should be here.
Regards
Andrzej
quoted hunk + exynos_dsi_poweroff(dsi);
+ return ret;
+ }
+
dsi->state |= DSIM_STATE_ENABLED;
return 0; @@ -1370,8 +1377,9 @@ static void exynos_dsi_disable(struct exynos_dsi *dsi)
if (!(dsi->state & DSIM_STATE_ENABLED))
return;
- exynos_dsi_set_display_enable(dsi, false);
drm_panel_disable(dsi->panel);
+ exynos_dsi_set_display_enable(dsi, false);
+ drm_panel_unprepare(dsi->panel);
exynos_dsi_poweroff(dsi);
dsi->state &= ~DSIM_STATE_ENABLED;
Hi Andreas,
On Tue, Aug 5, 2014 at 3:33 PM, Andrzej Hajda [off-list ref] wrote: Hi Ajay,
On 07/31/2014 07:42 PM, Ajay Kumar wrote: quoted Modify exynos_dsi driver to support the new panel calls:
prepare and unprepare.
Signed-off-by: Ajay Kumar <redacted>
---
drivers/gpu/drm/exynos/exynos_drm_dsi.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
index dc7c80b..4834932 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c @@ -1351,7 +1351,7 @@ static int exynos_dsi_enable(struct exynos_dsi *dsi)
if ( ret < 0 )
return ret ;
- ret = drm_panel_enable ( dsi -> panel );
+ ret = drm_panel_prepare ( dsi -> panel );
if ( ret < 0 ) {
exynos_dsi_poweroff ( dsi );
return ret ; @@ -1360,6 +1360,13 @@ static int exynos_dsi_enable(struct exynos_dsi *dsi)
exynos_dsi_set_display_mode ( dsi );
exynos_dsi_set_display_enable ( dsi , true );
+ ret = drm_panel_enable ( dsi -> panel );
+ if ( ret < 0 ) {
+ exynos_dsi_set_display_enable ( dsi , false );
I guess drm_panel_unprepare(dsi->panel) should be here. Thanks for pointing it out. I am not sure if Thierry has already
picked this up since Inki has given Acked by.
In that case, you can send it as a fix separately :)
Ajay quoted + exynos_dsi_poweroff(dsi);
+ return ret;
+ }
+
dsi->state |= DSIM_STATE_ENABLED;
return 0; @@ -1370,8 +1377,9 @@ static void exynos_dsi_disable(struct exynos_dsi *dsi)
if (!(dsi->state & DSIM_STATE_ENABLED))
return;
- exynos_dsi_set_display_enable(dsi, false);
drm_panel_disable(dsi->panel);
+ exynos_dsi_set_display_enable(dsi, false);
+ drm_panel_unprepare(dsi->panel);
exynos_dsi_poweroff(dsi);
dsi->state &= ~DSIM_STATE_ENABLED;
--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html