diff mbox series

[1/4] drm: panel: jadard-jd9365da-h3: Fix panel vendor and model

Message ID 20230123164018.403037-1-jagan@edgeble.ai (mailing list archive)
State New, archived
Headers show
Series [1/4] drm: panel: jadard-jd9365da-h3: Fix panel vendor and model | expand

Commit Message

Jagan Teki Jan. 23, 2023, 4:40 p.m. UTC
The initial datasheet claimed that chouzhong designed this 10"
DSI panel on top of JD9365DA IC, but later Radxa mentioned that
chouzhong is the manufacturer.

So the actual design of the panel, gsensor, and customized FPC
is done by Radxa. The panel model named is Radxa Display 10HD
with AD001 is the part number.

Fix the binding and panel driver with the proper panel vendor
and model.

Fixes: <6b818c533dd8> ("drm: panel: Add Jadard JD9365DA-H3 DSI panel")
Fixes: <bb3098eead99> ("dt-bindings: display: Document Jadard
JD9365DA-H3 DSI panel")
Reported-by: Tom Cubie <tom@radxa.com>
Signed-off-by: Jagan Teki <jagan@edgeble.ai>
---
 .../bindings/display/panel/jadard,jd9365da-h3.yaml  |  4 ++--
 drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c    | 13 ++++++++-----
 2 files changed, 10 insertions(+), 7 deletions(-)

Comments

Krzysztof Kozlowski Jan. 23, 2023, 5:22 p.m. UTC | #1
On 23/01/2023 17:40, Jagan Teki wrote:
> The initial datasheet claimed that chouzhong designed this 10"
> DSI panel on top of JD9365DA IC, but later Radxa mentioned that
> chouzhong is the manufacturer.
> 
> So the actual design of the panel, gsensor, and customized FPC
> is done by Radxa. The panel model named is Radxa Display 10HD
> with AD001 is the part number.
> 
> Fix the binding and panel driver with the proper panel vendor
> and model.
> 
> Fixes: <6b818c533dd8> ("drm: panel: Add Jadard JD9365DA-H3 DSI panel")
> Fixes: <bb3098eead99> ("dt-bindings: display: Document Jadard

Does not look like correct syntax. Did you run checkpatch?

> JD9365DA-H3 DSI panel")
> Reported-by: Tom Cubie <tom@radxa.com>
> Signed-off-by: Jagan Teki <jagan@edgeble.ai>
> ---
>  .../bindings/display/panel/jadard,jd9365da-h3.yaml  |  4 ++--
>  drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c    | 13 ++++++++-----

Bindings are always separate.

>  2 files changed, 10 insertions(+), 7 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml b/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
> index c06902e4fe70..10ba1b813304 100644
> --- a/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
> @@ -16,7 +16,7 @@ properties:
>    compatible:
>      items:
>        - enum:
> -          - chongzhou,cz101b4001
> +          - radxa,display-10hd-ad001
>        - const: jadard,jd9365da-h3
>  
>    reg: true
> @@ -52,7 +52,7 @@ examples:
>          #size-cells = <0>;
>  
>          panel@0 {
> -            compatible = "chongzhou,cz101b4001", "jadard,jd9365da-h3";
> +            compatible = "radxa,display-10hd-ad001", "jadard,jd9365da-h3";
>              reg = <0>;
>              vdd-supply = <&lcd_3v3>;
>              vccio-supply = <&vcca_1v8>;
> diff --git a/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c b/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
> index 48c1702a863b..ea89cecad0cf 100644
> --- a/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
> +++ b/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
> @@ -167,7 +167,7 @@ static const struct drm_panel_funcs jadard_funcs = {
>  	.get_modes = jadard_get_modes,
>  };
>  
> -static const struct jadard_init_cmd cz101b4001_init_cmds[] = {
> +static const struct jadard_init_cmd radxa_display_10hd_ad001_init_cmds[] = {
>  	{ .data = { 0xE0, 0x00 } },
>  	{ .data = { 0xE1, 0x93 } },
>  	{ .data = { 0xE2, 0x65 } },
> @@ -364,7 +364,7 @@ static const struct jadard_init_cmd cz101b4001_init_cmds[] = {
>  	{ .data = { 0xE7, 0x0C } },
>  };
>  
> -static const struct jadard_panel_desc cz101b4001_desc = {
> +static const struct jadard_panel_desc radxa_display_10hd_ad001_desc = {
>  	.mode = {
>  		.clock		= 70000,
>  
> @@ -384,8 +384,8 @@ static const struct jadard_panel_desc cz101b4001_desc = {
>  	},
>  	.lanes = 4,
>  	.format = MIPI_DSI_FMT_RGB888,
> -	.init_cmds = cz101b4001_init_cmds,
> -	.num_init_cmds = ARRAY_SIZE(cz101b4001_init_cmds),
> +	.init_cmds = radxa_display_10hd_ad001_init_cmds,
> +	.num_init_cmds = ARRAY_SIZE(radxa_display_10hd_ad001_init_cmds),
>  };
>  
>  static int jadard_dsi_probe(struct mipi_dsi_device *dsi)
> @@ -452,7 +452,10 @@ static void jadard_dsi_remove(struct mipi_dsi_device *dsi)
>  }
>  
>  static const struct of_device_id jadard_of_match[] = {
> -	{ .compatible = "chongzhou,cz101b4001", .data = &cz101b4001_desc },

This breaks ABI. When was support for it merged?

> +	{
> +		.compatible = "radxa,display-10hd-ad001",
> +		.data = &radxa_display_10hd_ad001_desc
> +	},
>  	{ /* sentinel */ }
>  };
>  MODULE_DEVICE_TABLE(of, jadard_of_match);

Best regards,
Krzysztof
Jagan Teki Jan. 23, 2023, 5:45 p.m. UTC | #2
On Mon, 23 Jan 2023 at 22:52, Krzysztof Kozlowski
<krzysztof.kozlowski@linaro.org> wrote:
>
> On 23/01/2023 17:40, Jagan Teki wrote:
> > The initial datasheet claimed that chouzhong designed this 10"
> > DSI panel on top of JD9365DA IC, but later Radxa mentioned that
> > chouzhong is the manufacturer.
> >
> > So the actual design of the panel, gsensor, and customized FPC
> > is done by Radxa. The panel model named is Radxa Display 10HD
> > with AD001 is the part number.
> >
> > Fix the binding and panel driver with the proper panel vendor
> > and model.
> >
> > Fixes: <6b818c533dd8> ("drm: panel: Add Jadard JD9365DA-H3 DSI panel")
> > Fixes: <bb3098eead99> ("dt-bindings: display: Document Jadard
>
> Does not look like correct syntax. Did you run checkpatch?

Yes. I did check with --strict as well.

>
> > JD9365DA-H3 DSI panel")
> > Reported-by: Tom Cubie <tom@radxa.com>
> > Signed-off-by: Jagan Teki <jagan@edgeble.ai>
> > ---
> >  .../bindings/display/panel/jadard,jd9365da-h3.yaml  |  4 ++--
> >  drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c    | 13 ++++++++-----
>
> Bindings are always separate.

Correct, but separation here triggers a warning for compatible not found.

>
> >  2 files changed, 10 insertions(+), 7 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml b/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
> > index c06902e4fe70..10ba1b813304 100644
> > --- a/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
> > +++ b/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
> > @@ -16,7 +16,7 @@ properties:
> >    compatible:
> >      items:
> >        - enum:
> > -          - chongzhou,cz101b4001
> > +          - radxa,display-10hd-ad001
> >        - const: jadard,jd9365da-h3
> >
> >    reg: true
> > @@ -52,7 +52,7 @@ examples:
> >          #size-cells = <0>;
> >
> >          panel@0 {
> > -            compatible = "chongzhou,cz101b4001", "jadard,jd9365da-h3";
> > +            compatible = "radxa,display-10hd-ad001", "jadard,jd9365da-h3";
> >              reg = <0>;
> >              vdd-supply = <&lcd_3v3>;
> >              vccio-supply = <&vcca_1v8>;
> > diff --git a/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c b/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
> > index 48c1702a863b..ea89cecad0cf 100644
> > --- a/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
> > +++ b/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
> > @@ -167,7 +167,7 @@ static const struct drm_panel_funcs jadard_funcs = {
> >       .get_modes = jadard_get_modes,
> >  };
> >
> > -static const struct jadard_init_cmd cz101b4001_init_cmds[] = {
> > +static const struct jadard_init_cmd radxa_display_10hd_ad001_init_cmds[] = {
> >       { .data = { 0xE0, 0x00 } },
> >       { .data = { 0xE1, 0x93 } },
> >       { .data = { 0xE2, 0x65 } },
> > @@ -364,7 +364,7 @@ static const struct jadard_init_cmd cz101b4001_init_cmds[] = {
> >       { .data = { 0xE7, 0x0C } },
> >  };
> >
> > -static const struct jadard_panel_desc cz101b4001_desc = {
> > +static const struct jadard_panel_desc radxa_display_10hd_ad001_desc = {
> >       .mode = {
> >               .clock          = 70000,
> >
> > @@ -384,8 +384,8 @@ static const struct jadard_panel_desc cz101b4001_desc = {
> >       },
> >       .lanes = 4,
> >       .format = MIPI_DSI_FMT_RGB888,
> > -     .init_cmds = cz101b4001_init_cmds,
> > -     .num_init_cmds = ARRAY_SIZE(cz101b4001_init_cmds),
> > +     .init_cmds = radxa_display_10hd_ad001_init_cmds,
> > +     .num_init_cmds = ARRAY_SIZE(radxa_display_10hd_ad001_init_cmds),
> >  };
> >
> >  static int jadard_dsi_probe(struct mipi_dsi_device *dsi)
> > @@ -452,7 +452,10 @@ static void jadard_dsi_remove(struct mipi_dsi_device *dsi)
> >  }
> >
> >  static const struct of_device_id jadard_of_match[] = {
> > -     { .compatible = "chongzhou,cz101b4001", .data = &cz101b4001_desc },
>
> This breaks ABI. When was support for it merged?

It was merged last year, in September

https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=6b818c533dd8615a803a72733eace58fd06e5a3c

Jagan.
Krzysztof Kozlowski Jan. 23, 2023, 6:03 p.m. UTC | #3
On 23/01/2023 18:45, Jagan Teki wrote:
> On Mon, 23 Jan 2023 at 22:52, Krzysztof Kozlowski
> <krzysztof.kozlowski@linaro.org> wrote:
>>
>> On 23/01/2023 17:40, Jagan Teki wrote:
>>> The initial datasheet claimed that chouzhong designed this 10"
>>> DSI panel on top of JD9365DA IC, but later Radxa mentioned that
>>> chouzhong is the manufacturer.
>>>
>>> So the actual design of the panel, gsensor, and customized FPC
>>> is done by Radxa. The panel model named is Radxa Display 10HD
>>> with AD001 is the part number.
>>>
>>> Fix the binding and panel driver with the proper panel vendor
>>> and model.
>>>
>>> Fixes: <6b818c533dd8> ("drm: panel: Add Jadard JD9365DA-H3 DSI panel")
>>> Fixes: <bb3098eead99> ("dt-bindings: display: Document Jadard
>>
>> Does not look like correct syntax. Did you run checkpatch?
> 
> Yes. I did check with --strict as well.

Anyway, it's not correct. <> are not valid and commit msg should not be
wrapped.

> 
>>
>>> JD9365DA-H3 DSI panel")
>>> Reported-by: Tom Cubie <tom@radxa.com>
>>> Signed-off-by: Jagan Teki <jagan@edgeble.ai>
>>> ---
>>>  .../bindings/display/panel/jadard,jd9365da-h3.yaml  |  4 ++--
>>>  drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c    | 13 ++++++++-----
>>
>> Bindings are always separate.
> 
> Correct, but separation here triggers a warning for compatible not found.

Which should point you to the problem - you cannot remove compatibles...

> 
>>
>>>  2 files changed, 10 insertions(+), 7 deletions(-)
>>>
>>> diff --git a/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml b/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
>>> index c06902e4fe70..10ba1b813304 100644
>>> --- a/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
>>> +++ b/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
>>> @@ -16,7 +16,7 @@ properties:
>>>    compatible:
>>>      items:
>>>        - enum:
>>> -          - chongzhou,cz101b4001
>>> +          - radxa,display-10hd-ad001
>>>        - const: jadard,jd9365da-h3
>>>
>>>    reg: true
>>> @@ -52,7 +52,7 @@ examples:
>>>          #size-cells = <0>;
>>>
>>>          panel@0 {
>>> -            compatible = "chongzhou,cz101b4001", "jadard,jd9365da-h3";
>>> +            compatible = "radxa,display-10hd-ad001", "jadard,jd9365da-h3";
>>>              reg = <0>;
>>>              vdd-supply = <&lcd_3v3>;
>>>              vccio-supply = <&vcca_1v8>;
>>> diff --git a/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c b/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
>>> index 48c1702a863b..ea89cecad0cf 100644
>>> --- a/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
>>> +++ b/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
>>> @@ -167,7 +167,7 @@ static const struct drm_panel_funcs jadard_funcs = {
>>>       .get_modes = jadard_get_modes,
>>>  };
>>>
>>> -static const struct jadard_init_cmd cz101b4001_init_cmds[] = {
>>> +static const struct jadard_init_cmd radxa_display_10hd_ad001_init_cmds[] = {
>>>       { .data = { 0xE0, 0x00 } },
>>>       { .data = { 0xE1, 0x93 } },
>>>       { .data = { 0xE2, 0x65 } },
>>> @@ -364,7 +364,7 @@ static const struct jadard_init_cmd cz101b4001_init_cmds[] = {
>>>       { .data = { 0xE7, 0x0C } },
>>>  };
>>>
>>> -static const struct jadard_panel_desc cz101b4001_desc = {
>>> +static const struct jadard_panel_desc radxa_display_10hd_ad001_desc = {
>>>       .mode = {
>>>               .clock          = 70000,
>>>
>>> @@ -384,8 +384,8 @@ static const struct jadard_panel_desc cz101b4001_desc = {
>>>       },
>>>       .lanes = 4,
>>>       .format = MIPI_DSI_FMT_RGB888,
>>> -     .init_cmds = cz101b4001_init_cmds,
>>> -     .num_init_cmds = ARRAY_SIZE(cz101b4001_init_cmds),
>>> +     .init_cmds = radxa_display_10hd_ad001_init_cmds,
>>> +     .num_init_cmds = ARRAY_SIZE(radxa_display_10hd_ad001_init_cmds),
>>>  };
>>>
>>>  static int jadard_dsi_probe(struct mipi_dsi_device *dsi)
>>> @@ -452,7 +452,10 @@ static void jadard_dsi_remove(struct mipi_dsi_device *dsi)
>>>  }
>>>
>>>  static const struct of_device_id jadard_of_match[] = {
>>> -     { .compatible = "chongzhou,cz101b4001", .data = &cz101b4001_desc },
>>
>> This breaks ABI. When was support for it merged?
> 
> It was merged last year, in September
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=6b818c533dd8615a803a72733eace58fd06e5a3c

So you cannot remove it.

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml b/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
index c06902e4fe70..10ba1b813304 100644
--- a/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
+++ b/Documentation/devicetree/bindings/display/panel/jadard,jd9365da-h3.yaml
@@ -16,7 +16,7 @@  properties:
   compatible:
     items:
       - enum:
-          - chongzhou,cz101b4001
+          - radxa,display-10hd-ad001
       - const: jadard,jd9365da-h3
 
   reg: true
@@ -52,7 +52,7 @@  examples:
         #size-cells = <0>;
 
         panel@0 {
-            compatible = "chongzhou,cz101b4001", "jadard,jd9365da-h3";
+            compatible = "radxa,display-10hd-ad001", "jadard,jd9365da-h3";
             reg = <0>;
             vdd-supply = <&lcd_3v3>;
             vccio-supply = <&vcca_1v8>;
diff --git a/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c b/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
index 48c1702a863b..ea89cecad0cf 100644
--- a/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
+++ b/drivers/gpu/drm/panel/panel-jadard-jd9365da-h3.c
@@ -167,7 +167,7 @@  static const struct drm_panel_funcs jadard_funcs = {
 	.get_modes = jadard_get_modes,
 };
 
-static const struct jadard_init_cmd cz101b4001_init_cmds[] = {
+static const struct jadard_init_cmd radxa_display_10hd_ad001_init_cmds[] = {
 	{ .data = { 0xE0, 0x00 } },
 	{ .data = { 0xE1, 0x93 } },
 	{ .data = { 0xE2, 0x65 } },
@@ -364,7 +364,7 @@  static const struct jadard_init_cmd cz101b4001_init_cmds[] = {
 	{ .data = { 0xE7, 0x0C } },
 };
 
-static const struct jadard_panel_desc cz101b4001_desc = {
+static const struct jadard_panel_desc radxa_display_10hd_ad001_desc = {
 	.mode = {
 		.clock		= 70000,
 
@@ -384,8 +384,8 @@  static const struct jadard_panel_desc cz101b4001_desc = {
 	},
 	.lanes = 4,
 	.format = MIPI_DSI_FMT_RGB888,
-	.init_cmds = cz101b4001_init_cmds,
-	.num_init_cmds = ARRAY_SIZE(cz101b4001_init_cmds),
+	.init_cmds = radxa_display_10hd_ad001_init_cmds,
+	.num_init_cmds = ARRAY_SIZE(radxa_display_10hd_ad001_init_cmds),
 };
 
 static int jadard_dsi_probe(struct mipi_dsi_device *dsi)
@@ -452,7 +452,10 @@  static void jadard_dsi_remove(struct mipi_dsi_device *dsi)
 }
 
 static const struct of_device_id jadard_of_match[] = {
-	{ .compatible = "chongzhou,cz101b4001", .data = &cz101b4001_desc },
+	{
+		.compatible = "radxa,display-10hd-ad001",
+		.data = &radxa_display_10hd_ad001_desc
+	},
 	{ /* sentinel */ }
 };
 MODULE_DEVICE_TABLE(of, jadard_of_match);