2022-09-08 09:14:53

by Chen-Yu Tsai

[permalink] [raw]
Subject: [PATCH 1/2] drm/panel-edp: Fix delays for Innolux N116BCA-EA1

Commit 52824ca4502d ("drm/panel-edp: Better describe eDP panel delays")
clarified the various delays used for eDP panels, tying them to the eDP
panel timing diagram.

For Innolux N116BCA-EA1, .prepare_to_enable would be:

t4_min + t5_min + t6_min + max(t7_max, t8_min)

Since t4_min and t5_min are both 0, the panel can use either .enable or
.prepare_to_enable.

As .enable is better defined, switch to using .enable for this panel.

Also add .disable = 50, based on the datasheet's t9_min value. This
effectively makes the delays the same as delay_200_500_e80_d50.

Cc: Douglas Anderson <[email protected]>
Fixes: 51d35631c970 ("drm/panel-simple: Add N116BCA-EA1")
Signed-off-by: Chen-Yu Tsai <[email protected]>
---
drivers/gpu/drm/panel/panel-edp.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/panel/panel-edp.c b/drivers/gpu/drm/panel/panel-edp.c
index 2bef3e707a95..65e3a5361c80 100644
--- a/drivers/gpu/drm/panel/panel-edp.c
+++ b/drivers/gpu/drm/panel/panel-edp.c
@@ -1295,7 +1295,8 @@ static const struct panel_desc innolux_n116bca_ea1 = {
},
.delay = {
.hpd_absent = 200,
- .prepare_to_enable = 80,
+ .enable = 80,
+ .disable = 50,
.unprepare = 500,
},
};
--
2.37.2.789.g6183377224-goog


2022-09-08 09:56:28

by Chen-Yu Tsai

[permalink] [raw]
Subject: [PATCH 2/2] drm/panel-edp: Add Innolux N120ACA-EA1 panel entry

This panel has the same delay timing as N116BCA-EA1 from the same
company, which is also the same as delay_200_500_e80_d50.

Add an entry for it.

Signed-off-by: Chen-Yu Tsai <[email protected]>
---
drivers/gpu/drm/panel/panel-edp.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/panel/panel-edp.c b/drivers/gpu/drm/panel/panel-edp.c
index 65e3a5361c80..15e18a64b03d 100644
--- a/drivers/gpu/drm/panel/panel-edp.c
+++ b/drivers/gpu/drm/panel/panel-edp.c
@@ -1890,6 +1890,7 @@ static const struct edp_panel_entry edp_panels[] = {
EDP_PANEL_ENTRY('B', 'O', 'E', 0x0a5d, &delay_200_500_e50, "NV116WHM-N45"),

EDP_PANEL_ENTRY('C', 'M', 'N', 0x114c, &innolux_n116bca_ea1.delay, "N116BCA-EA1"),
+ EDP_PANEL_ENTRY('C', 'M', 'N', 0x1247, &delay_200_500_e80_d50, "N120ACA-EA1"),

EDP_PANEL_ENTRY('I', 'V', 'O', 0x057d, &delay_200_500_e200, "R140NWF5 RH"),
EDP_PANEL_ENTRY('I', 'V', 'O', 0x854b, &delay_200_500_p2e100, "M133NW4J-R3"),
--
2.37.2.789.g6183377224-goog

2022-09-08 16:08:01

by Doug Anderson

[permalink] [raw]
Subject: Re: [PATCH 1/2] drm/panel-edp: Fix delays for Innolux N116BCA-EA1

Hi,

On Thu, Sep 8, 2022 at 1:55 AM Chen-Yu Tsai <[email protected]> wrote:
>
> Commit 52824ca4502d ("drm/panel-edp: Better describe eDP panel delays")
> clarified the various delays used for eDP panels, tying them to the eDP
> panel timing diagram.
>
> For Innolux N116BCA-EA1, .prepare_to_enable would be:
>
> t4_min + t5_min + t6_min + max(t7_max, t8_min)
>
> Since t4_min and t5_min are both 0, the panel can use either .enable or
> .prepare_to_enable.
>
> As .enable is better defined, switch to using .enable for this panel.
>
> Also add .disable = 50, based on the datasheet's t9_min value. This
> effectively makes the delays the same as delay_200_500_e80_d50.
>
> Cc: Douglas Anderson <[email protected]>
> Fixes: 51d35631c970 ("drm/panel-simple: Add N116BCA-EA1")
> Signed-off-by: Chen-Yu Tsai <[email protected]>
> ---
> drivers/gpu/drm/panel/panel-edp.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)

Yup, this looks like a good fix to me. Thanks! I guess that patch
you're fixing was from a time before I had analyzed the eDP panel
delays quite so closely.

Reviewed-by: Douglas Anderson <[email protected]>

Given how non-controversial these types of patches are, I typically
just apply them right away so I'll do that shortly. If this upsets
anyone then please shout and I'll change my behavior. ;-)

I've applied this one to drm-misc-fixes.

8f7115c1923c drm/panel-edp: Fix delays for Innolux N116BCA-EA1

-Doug

2022-09-08 16:08:25

by Doug Anderson

[permalink] [raw]
Subject: Re: [PATCH 2/2] drm/panel-edp: Add Innolux N120ACA-EA1 panel entry

Hi,

On Thu, Sep 8, 2022 at 1:55 AM Chen-Yu Tsai <[email protected]> wrote:
>
> This panel has the same delay timing as N116BCA-EA1 from the same
> company, which is also the same as delay_200_500_e80_d50.
>
> Add an entry for it.
>
> Signed-off-by: Chen-Yu Tsai <[email protected]>
> ---
> drivers/gpu/drm/panel/panel-edp.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/panel/panel-edp.c b/drivers/gpu/drm/panel/panel-edp.c
> index 65e3a5361c80..15e18a64b03d 100644
> --- a/drivers/gpu/drm/panel/panel-edp.c
> +++ b/drivers/gpu/drm/panel/panel-edp.c
> @@ -1890,6 +1890,7 @@ static const struct edp_panel_entry edp_panels[] = {
> EDP_PANEL_ENTRY('B', 'O', 'E', 0x0a5d, &delay_200_500_e50, "NV116WHM-N45"),
>
> EDP_PANEL_ENTRY('C', 'M', 'N', 0x114c, &innolux_n116bca_ea1.delay, "N116BCA-EA1"),
> + EDP_PANEL_ENTRY('C', 'M', 'N', 0x1247, &delay_200_500_e80_d50, "N120ACA-EA1"),
>
> EDP_PANEL_ENTRY('I', 'V', 'O', 0x057d, &delay_200_500_e200, "R140NWF5 RH"),
> EDP_PANEL_ENTRY('I', 'V', 'O', 0x854b, &delay_200_500_p2e100, "M133NW4J-R3"),

Reviewed-by: Douglas Anderson <[email protected]>

...and landed in drm-misc-next:

758d7b3483b6 drm/panel-edp: Add Innolux N120ACA-EA1 panel entry

-Doug