[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAD=FV=UF7Jz6mtx14dEV0udLti9ssU_rK88DvJmf2x39kr1cWQ@mail.gmail.com>
Date: Mon, 28 Apr 2025 12:44:57 -0700
From: Doug Anderson <dianders@...omium.org>
To: Zhengqiao Xia <xiazhengqiao@...qin.corp-partner.google.com>
Cc: neil.armstrong@...aro.org, quic_jesszhan@...cinc.com,
maarten.lankhorst@...ux.intel.com, mripard@...nel.org, tzimmermann@...e.de,
airlied@...il.com, simona@...ll.ch, dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 2/3] drm/panel-edp: Add support for BOE NE140WUM-N6S panel
Hi,
On Mon, Apr 21, 2025 at 4:37 AM Zhengqiao Xia
<xiazhengqiao@...qin.corp-partner.google.com> wrote:
>
> BOE NE140WUM-N6S EDID:
> edid-decode (hex):
>
> 00 ff ff ff ff ff ff 00 09 e5 73 0d 00 00 00 00
> 32 22 01 04 a5 1e 13 78 07 13 45 a6 54 4d a0 27
> 0c 50 54 00 00 00 01 01 01 01 01 01 01 01 01 01
> 01 01 01 01 01 01 03 3e 80 a0 70 b0 48 40 30 20
> 36 00 2e bc 10 00 00 1a 00 00 00 fd 00 1e 78 99
> 99 20 01 0a 20 20 20 20 20 20 00 00 00 fc 00 4e
> 45 31 34 30 57 55 4d 2d 4e 36 53 0a 00 00 00 00
> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 45
>
> 70 20 79 02 00 22 00 14 33 d8 04 85 7f 07 9f 00
> 2f 00 1f 00 af 04 47 00 02 00 05 00 81 00 13 72
> 1a 00 00 03 01 1e 78 00 00 5a 4a 5a 4a 78 00 00
> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ad 90
>
> Signed-off-by: Zhengqiao Xia <xiazhengqiao@...qin.corp-partner.google.com>
> ---
> drivers/gpu/drm/panel/panel-edp.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/drivers/gpu/drm/panel/panel-edp.c b/drivers/gpu/drm/panel/panel-edp.c
> index 958d260cda8a..92844ab4cb9c 100644
> --- a/drivers/gpu/drm/panel/panel-edp.c
> +++ b/drivers/gpu/drm/panel/panel-edp.c
> @@ -1757,6 +1757,13 @@ static const struct panel_delay delay_200_500_e80_d50 = {
> .disable = 50,
> };
>
> +static const struct panel_delay delay_200_500_e80_p2e80 = {
> + .hpd_absent = 200,
> + .unprepare = 500,
> + .enable = 80,
> + .prepare_to_enable = 80,
> +};
Unless I'm mistaken, you don't need to add this timing. See the docs
for `prepare_to_enable`, where the relationship between the `enable`
and `prepare_to_enable` delay is documented. Specifically, see:
* In other words:
* prepare()
* ...
* // do fixed prepare delay
* // wait for HPD GPIO if applicable
* // start counting for prepare_to_enable
*
* enable()
* // do fixed enable delay
* // enforce prepare_to_enable min time
Given that the fixed delay is 80 ms in your timings it seems
impossible to ever need the `prepare_to_enable` delay. ...so you can
just leave the `prepare_to_enable` off, which means you can just use
`delay_200_500_e80` like many of the other BOE panels.
> +
> static const struct panel_delay delay_80_500_e50 = {
> .hpd_absent = 80,
> .unprepare = 500,
> @@ -1916,6 +1923,7 @@ static const struct edp_panel_entry edp_panels[] = {
> EDP_PANEL_ENTRY('B', 'O', 'E', 0x09c3, &delay_200_500_e50, "NT116WHM-N21,836X2"),
> EDP_PANEL_ENTRY('B', 'O', 'E', 0x094b, &delay_200_500_e50, "NT116WHM-N21"),
> EDP_PANEL_ENTRY('B', 'O', 'E', 0x0951, &delay_200_500_e80, "NV116WHM-N47"),
> + EDP_PANEL_ENTRY('B', 'O', 'E', 0x0d73, &delay_200_500_e80_p2e80, "NE140WUM-N6S"),
> EDP_PANEL_ENTRY('B', 'O', 'E', 0x095f, &delay_200_500_e50, "NE135FBM-N41 v8.1"),
Please sort. 0x0d73 does not come between 0x0951 and 0x095f.
Powered by blists - more mailing lists