2024-04-18 14:02:00

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH v1 2/4] drm/panel: boe-tv101wum-nl6: Support for BOE nv110wum-l60 MIPI-DSI panel

On Thu, Apr 18, 2024 at 2:42 PM cong yang
<[email protected]> wrote:

> I learned from himax that even if the same controller is used with
> different glasses, the corresponding parameters are not fixed.
>
> For example: _INIT_DCS_CMD(0xB9, 0x83, 0x10, 0x21, 0x55, 0x00),
>
> even in the group initial code, the same register will be loaded with
> parameters twice.
(...)
> So assuming that the registers of the two screens is the same now,
> it cannot be set as a common parameter.
> Otherwise, it may be a bit troublesome for the maintainers.
>
> If necessary, I can break out starry_himax83102_j02, boe_nv110wum and
> ivo_t109nw41
> as separate driver. Then add some define to these registers.

Why would you do a separate driver per panel despite they have
the same display controller? I don't get it.

Use one driver, use different compatible strings for the different
panels and use the corresponding sequence for each panel
selected by compatible string.

For example, see drivers/gpu/drm/panel/panel-novatek-nt35510.c:

static const struct of_device_id nt35510_of_match[] = {
{
.compatible = "frida,frd400b25025",
.data = &nt35510_frida_frd400b25025,
},
{
.compatible = "hydis,hva40wv1",
.data = &nt35510_hydis_hva40wv1,
},
{ }
};


Take some inspiration from this driver and how we parameterize
the different data depending on compatible string.

Yours,
Linus Walleij


2024-04-19 00:49:24

by cong yang

[permalink] [raw]
Subject: Re: [PATCH v1 2/4] drm/panel: boe-tv101wum-nl6: Support for BOE nv110wum-l60 MIPI-DSI panel

Hi,

Linus Walleij <[email protected]> 于2024年4月18日周四 22:00写道:
>
> On Thu, Apr 18, 2024 at 2:42 PM cong yang
> <[email protected]> wrote:
>
> > I learned from himax that even if the same controller is used with
> > different glasses, the corresponding parameters are not fixed.
> >
> > For example: _INIT_DCS_CMD(0xB9, 0x83, 0x10, 0x21, 0x55, 0x00),
> >
> > even in the group initial code, the same register will be loaded with
> > parameters twice.
> (...)
> > So assuming that the registers of the two screens is the same now,
> > it cannot be set as a common parameter.
> > Otherwise, it may be a bit troublesome for the maintainers.
> >
> > If necessary, I can break out starry_himax83102_j02, boe_nv110wum and
> > ivo_t109nw41
> > as separate driver. Then add some define to these registers.
>
> Why would you do a separate driver per panel despite they have
> the same display controller? I don't get it.
>
> Use one driver, use different compatible strings for the different
> panels and use the corresponding sequence for each panel
> selected by compatible string.

I mean add starry_himax83102_j02, boe_nv110wum and ivo_t109nw41
together to make a separate driver and break out boe-tv101wum-nl6 ,
because they belong to the same controller.

As Doug said :
“I'm just guessing, but if those are the same controller as
the two new ones you're adding in this series, maybe all
3 of them should be in their own driver? Maybe we can do something to
make more sense of some of these commands too? ”


Thanks.
>
> For example, see drivers/gpu/drm/panel/panel-novatek-nt35510.c:
>
> static const struct of_device_id nt35510_of_match[] = {
> {
> .compatible = "frida,frd400b25025",
> .data = &nt35510_frida_frd400b25025,
> },
> {
> .compatible = "hydis,hva40wv1",
> .data = &nt35510_hydis_hva40wv1,
> },
> { }
> };
>
>
> Take some inspiration from this driver and how we parameterize
> the different data depending on compatible string.
>
> Yours,
> Linus Walleij

2024-04-19 08:24:32

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH v1 2/4] drm/panel: boe-tv101wum-nl6: Support for BOE nv110wum-l60 MIPI-DSI panel

On Fri, Apr 19, 2024 at 2:48 AM cong yang
<[email protected]> wrote:

> > Use one driver, use different compatible strings for the different
> > panels and use the corresponding sequence for each panel
> > selected by compatible string.
>
> I mean add starry_himax83102_j02, boe_nv110wum and ivo_t109nw41
> together to make a separate driver and break out boe-tv101wum-nl6 ,
> because they belong to the same controller.

Aha OK sorry for my misunderstanding!

We are all in agreement.

Yours,
Linus Walleij