[PATCH] drm/panel: panel-dsi-cm: disable TE for now
Tony Lindgren
tony at atomide.com
Tue Apr 6 07:03:16 UTC 2021
Hi,
* Tomi Valkeinen <tomi.valkeinen at ideasonboard.com> [210316 14:12]:
> Hi Sebastian, Sam, Thierry,
>
> On 27/02/2021 23:45, Sebastian Reichel wrote:
> > From: Sebastian Reichel <sre at kernel.org>
> >
> > Disable TE for Droid 4 panel, since implementation is currently
> > broken. Also disable it for N950 panel, which is untested.
> >
> > Reported-by: Tony Lindgren <tony at atomide.com>
> > Reported-by: Tomi Valkeinen <tomi.valkeinen at ideasonboard.com>
> > Fixes: 4c1b935fea54 ("drm/omap: dsi: move TE GPIO handling into core")
> > Signed-off-by: Sebastian Reichel <sre at kernel.org>
> > ---
> > I suggest to start by fix the regression like this and look into
> > proper Droid 4 TE support separatly. Assumption is, that Tomi
> > tested taal panel, droid4 panel is 'broken' and N950 (himalaya)
> > is untested [*], so choosing safe default. Patch is compile-tested
> > only.
> >
> > [*] N950 display is not yet functional on mainline, since it needs
> > the omap3 FIFO workaround:
> > https://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-n900.git/commit/?h=n950-display-tony&id=d4cbc226a30b29bf2583ffff97b052c9ec68c8a3
> > ---
> > drivers/gpu/drm/panel/panel-dsi-cm.c | 12 +++++++++---
> > 1 file changed, 9 insertions(+), 3 deletions(-)
>
> Reviewed-by: Tomi Valkeinen <tomi.valkeinen at ideasonboard.com>
>
> Sam, Thierry, will you pick this up or can I push to drm-misc-fixes?
Looks like this regression fix is still pending, can you guys please
apply?
Regards,
Tony
> > diff --git a/drivers/gpu/drm/panel/panel-dsi-cm.c b/drivers/gpu/drm/panel/panel-dsi-cm.c
> > index af381d756ac1..5fbfb71ca3d9 100644
> > --- a/drivers/gpu/drm/panel/panel-dsi-cm.c
> > +++ b/drivers/gpu/drm/panel/panel-dsi-cm.c
> > @@ -37,6 +37,7 @@ struct dsic_panel_data {
> > u32 height_mm;
> > u32 max_hs_rate;
> > u32 max_lp_rate;
> > + bool te_support;
> > };
> > struct panel_drv_data {
> > @@ -334,9 +335,11 @@ static int dsicm_power_on(struct panel_drv_data *ddata)
> > if (r)
> > goto err;
> > - r = mipi_dsi_dcs_set_tear_on(ddata->dsi, MIPI_DSI_DCS_TEAR_MODE_VBLANK);
> > - if (r)
> > - goto err;
> > + if (ddata->panel_data->te_support) {
> > + r = mipi_dsi_dcs_set_tear_on(ddata->dsi, MIPI_DSI_DCS_TEAR_MODE_VBLANK);
> > + if (r)
> > + goto err;
> > + }
> > /* possible panel bug */
> > msleep(100);
> > @@ -619,6 +622,7 @@ static const struct dsic_panel_data taal_data = {
> > .height_mm = 0,
> > .max_hs_rate = 300000000,
> > .max_lp_rate = 10000000,
> > + .te_support = true,
> > };
> > static const struct dsic_panel_data himalaya_data = {
> > @@ -629,6 +633,7 @@ static const struct dsic_panel_data himalaya_data = {
> > .height_mm = 88,
> > .max_hs_rate = 300000000,
> > .max_lp_rate = 10000000,
> > + .te_support = false,
> > };
> > static const struct dsic_panel_data droid4_data = {
> > @@ -639,6 +644,7 @@ static const struct dsic_panel_data droid4_data = {
> > .height_mm = 89,
> > .max_hs_rate = 300000000,
> > .max_lp_rate = 10000000,
> > + .te_support = false,
> > };
> > static const struct of_device_id dsicm_of_match[] = {
> >
>
More information about the dri-devel
mailing list