2019-05-27 10:28:31

by Vivek Gautam

[permalink] [raw]
Subject: [PATCH 1/1] drm/panel: truly: Add additional delay after pulling down reset gpio

MTP SDM845 panel seems to need additional delay to bring panel
to a workable state. Running modetest without this change displays
blurry artifacts.

Signed-off-by: Vivek Gautam <[email protected]>
---
drivers/gpu/drm/panel/panel-truly-nt35597.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/panel/panel-truly-nt35597.c b/drivers/gpu/drm/panel/panel-truly-nt35597.c
index fc2a66c53db4..aa7153fd3be4 100644
--- a/drivers/gpu/drm/panel/panel-truly-nt35597.c
+++ b/drivers/gpu/drm/panel/panel-truly-nt35597.c
@@ -280,6 +280,7 @@ static int truly_35597_power_on(struct truly_nt35597 *ctx)
gpiod_set_value(ctx->reset_gpio, 1);
usleep_range(10000, 20000);
gpiod_set_value(ctx->reset_gpio, 0);
+ usleep_range(10000, 20000);

return 0;
}
--
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation


2019-05-28 08:45:59

by Marc Gonzalez

[permalink] [raw]
Subject: Re: [PATCH 1/1] drm/panel: truly: Add additional delay after pulling down reset gpio

On 27/05/2019 12:26, Vivek Gautam wrote:

> MTP SDM845 panel seems to need additional delay to bring panel
> to a workable state. Running modetest without this change displays
> blurry artifacts.
>
> Signed-off-by: Vivek Gautam <[email protected]>
> ---
> drivers/gpu/drm/panel/panel-truly-nt35597.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/panel/panel-truly-nt35597.c b/drivers/gpu/drm/panel/panel-truly-nt35597.c
> index fc2a66c53db4..aa7153fd3be4 100644
> --- a/drivers/gpu/drm/panel/panel-truly-nt35597.c
> +++ b/drivers/gpu/drm/panel/panel-truly-nt35597.c
> @@ -280,6 +280,7 @@ static int truly_35597_power_on(struct truly_nt35597 *ctx)
> gpiod_set_value(ctx->reset_gpio, 1);
> usleep_range(10000, 20000);
> gpiod_set_value(ctx->reset_gpio, 0);
> + usleep_range(10000, 20000);

I'm not sure usleep_range() makes sense with these values.

AFAIU, usleep_range() is typically used for sub-jiffy sleeps, and is based
on HRT to generate an interrupt.

Once we get into jiffy granularity, it seems to me msleep() is good enough.
IIUC, it would piggy-back on the jiffy timer interrupt.

In short, why not just use msleep(10); ?

Regards.

2019-05-29 05:58:38

by Vivek Gautam

[permalink] [raw]
Subject: Re: [PATCH 1/1] drm/panel: truly: Add additional delay after pulling down reset gpio



On 5/28/2019 2:13 PM, Marc Gonzalez wrote:
> On 27/05/2019 12:26, Vivek Gautam wrote:
>
>> MTP SDM845 panel seems to need additional delay to bring panel
>> to a workable state. Running modetest without this change displays
>> blurry artifacts.
>>
>> Signed-off-by: Vivek Gautam <[email protected]>
>> ---
>> drivers/gpu/drm/panel/panel-truly-nt35597.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/gpu/drm/panel/panel-truly-nt35597.c b/drivers/gpu/drm/panel/panel-truly-nt35597.c
>> index fc2a66c53db4..aa7153fd3be4 100644
>> --- a/drivers/gpu/drm/panel/panel-truly-nt35597.c
>> +++ b/drivers/gpu/drm/panel/panel-truly-nt35597.c
>> @@ -280,6 +280,7 @@ static int truly_35597_power_on(struct truly_nt35597 *ctx)
>> gpiod_set_value(ctx->reset_gpio, 1);
>> usleep_range(10000, 20000);
>> gpiod_set_value(ctx->reset_gpio, 0);
>> + usleep_range(10000, 20000);
> I'm not sure usleep_range() makes sense with these values.
>
> AFAIU, usleep_range() is typically used for sub-jiffy sleeps, and is based
> on HRT to generate an interrupt.
>
> Once we get into jiffy granularity, it seems to me msleep() is good enough.
> IIUC, it would piggy-back on the jiffy timer interrupt.
>
> In short, why not just use msleep(10); ?

I am just maintaining the symmetry across older code.

Thanks
Vivek
>
> Regards.

2019-06-05 08:24:44

by Sam Ravnborg

[permalink] [raw]
Subject: Re: [PATCH 1/1] drm/panel: truly: Add additional delay after pulling down reset gpio

Hi Vivek,

On Mon, May 27, 2019 at 03:56:16PM +0530, Vivek Gautam wrote:
> MTP SDM845 panel seems to need additional delay to bring panel
> to a workable state. Running modetest without this change displays
> blurry artifacts.
>
> Signed-off-by: Vivek Gautam <[email protected]>

added to drm-misc-next

Sam

> ---
> drivers/gpu/drm/panel/panel-truly-nt35597.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/panel/panel-truly-nt35597.c b/drivers/gpu/drm/panel/panel-truly-nt35597.c
> index fc2a66c53db4..aa7153fd3be4 100644
> --- a/drivers/gpu/drm/panel/panel-truly-nt35597.c
> +++ b/drivers/gpu/drm/panel/panel-truly-nt35597.c
> @@ -280,6 +280,7 @@ static int truly_35597_power_on(struct truly_nt35597 *ctx)
> gpiod_set_value(ctx->reset_gpio, 1);
> usleep_range(10000, 20000);
> gpiod_set_value(ctx->reset_gpio, 0);
> + usleep_range(10000, 20000);
>
> return 0;
> }
> --
> QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
> of Code Aurora Forum, hosted by The Linux Foundation
>
> _______________________________________________
> dri-devel mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

2019-06-06 12:20:46

by Vivek Gautam

[permalink] [raw]
Subject: Re: [PATCH 1/1] drm/panel: truly: Add additional delay after pulling down reset gpio

On Wed, Jun 5, 2019 at 1:54 PM Sam Ravnborg <[email protected]> wrote:
>
> Hi Vivek,
>
> On Mon, May 27, 2019 at 03:56:16PM +0530, Vivek Gautam wrote:
> > MTP SDM845 panel seems to need additional delay to bring panel
> > to a workable state. Running modetest without this change displays
> > blurry artifacts.
> >
> > Signed-off-by: Vivek Gautam <[email protected]>
>
> added to drm-misc-next

Thanks a lot.

Best regards
Vivek

>
> Sam
>
> > ---
> > drivers/gpu/drm/panel/panel-truly-nt35597.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/gpu/drm/panel/panel-truly-nt35597.c b/drivers/gpu/drm/panel/panel-truly-nt35597.c
> > index fc2a66c53db4..aa7153fd3be4 100644
> > --- a/drivers/gpu/drm/panel/panel-truly-nt35597.c
> > +++ b/drivers/gpu/drm/panel/panel-truly-nt35597.c
> > @@ -280,6 +280,7 @@ static int truly_35597_power_on(struct truly_nt35597 *ctx)
> > gpiod_set_value(ctx->reset_gpio, 1);
> > usleep_range(10000, 20000);
> > gpiod_set_value(ctx->reset_gpio, 0);
> > + usleep_range(10000, 20000);
> >
> > return 0;
> > }
> > --
> > QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
> > of Code Aurora Forum, hosted by The Linux Foundation
> >
> > _______________________________________________
> > dri-devel mailing list
> > [email protected]
> > https://lists.freedesktop.org/mailman/listinfo/dri-devel



--
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation