diff mbox series

drm/panel: simple: Fix Innolux G101ICE-L01 timings

Message ID 20231008223256.279196-1-marex@denx.de (mailing list archive)
State New, archived
Headers show
Series drm/panel: simple: Fix Innolux G101ICE-L01 timings | expand

Commit Message

Marek Vasut Oct. 8, 2023, 10:32 p.m. UTC
The Innolux G101ICE-L01 datasheet [1] page 17 table
6.1 INPUT SIGNAL TIMING SPECIFICATIONS
indicates that maximum vertical blanking time is 40 lines.
Currently the driver uses 29 lines.

Fix it, and since this panel is a DE panel, adjust the timings
to make them less hostile to controllers which cannot do 1 px
HSA/VSA, distribute the delays evenly between all three parts.

[1] https://www.data-modul.com/sites/default/files/products/G101ICE-L01-C2-specification-12042389.pdf

Fixes: 1e29b840af9f ("drm/panel: simple: Add Innolux G101ICE-L01 panel")
Signed-off-by: Marek Vasut <marex@denx.de>
---
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: David Airlie <airlied@gmail.com>
Cc: Jessica Zhang <quic_jesszhan@quicinc.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Neil Armstrong <neil.armstrong@linaro.org>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: dri-devel@lists.freedesktop.org
---
 drivers/gpu/drm/panel/panel-simple.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

Comments

Neil Armstrong Oct. 9, 2023, 9:01 a.m. UTC | #1
Hi,

On 09/10/2023 00:32, Marek Vasut wrote:
> The Innolux G101ICE-L01 datasheet [1] page 17 table
> 6.1 INPUT SIGNAL TIMING SPECIFICATIONS
> indicates that maximum vertical blanking time is 40 lines.
> Currently the driver uses 29 lines.
> 
> Fix it, and since this panel is a DE panel, adjust the timings
> to make them less hostile to controllers which cannot do 1 px
> HSA/VSA, distribute the delays evenly between all three parts.
> 
> [1] https://www.data-modul.com/sites/default/files/products/G101ICE-L01-C2-specification-12042389.pdf
> 
> Fixes: 1e29b840af9f ("drm/panel: simple: Add Innolux G101ICE-L01 panel")
> Signed-off-by: Marek Vasut <marex@denx.de>
> ---
> Cc: Daniel Vetter <daniel@ffwll.ch>
> Cc: David Airlie <airlied@gmail.com>
> Cc: Jessica Zhang <quic_jesszhan@quicinc.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> Cc: Maxime Ripard <mripard@kernel.org>
> Cc: Neil Armstrong <neil.armstrong@linaro.org>
> Cc: Sam Ravnborg <sam@ravnborg.org>
> Cc: Thomas Zimmermann <tzimmermann@suse.de>
> Cc: dri-devel@lists.freedesktop.org
> ---
>   drivers/gpu/drm/panel/panel-simple.c | 12 ++++++------
>   1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> index 7ce51ad616296..44c11c418cd56 100644
> --- a/drivers/gpu/drm/panel/panel-simple.c
> +++ b/drivers/gpu/drm/panel/panel-simple.c
> @@ -2295,13 +2295,13 @@ static const struct panel_desc innolux_g070y2_t02 = {
>   static const struct display_timing innolux_g101ice_l01_timing = {
>   	.pixelclock = { 60400000, 71100000, 74700000 },
>   	.hactive = { 1280, 1280, 1280 },
> -	.hfront_porch = { 41, 80, 100 },
> -	.hback_porch = { 40, 79, 99 },
> -	.hsync_len = { 1, 1, 1 },
> +	.hfront_porch = { 30, 60, 70 },
> +	.hback_porch = { 30, 60, 70 },
> +	.hsync_len = { 22, 40, 60 },
>   	.vactive = { 800, 800, 800 },
> -	.vfront_porch = { 5, 11, 14 },
> -	.vback_porch = { 4, 11, 14 },
> -	.vsync_len = { 1, 1, 1 },
> +	.vfront_porch = { 3, 8, 14 },
> +	.vback_porch = { 3, 8, 14 },
> +	.vsync_len = { 4, 7, 12 },
>   	.flags = DISPLAY_FLAGS_DE_HIGH,
>   };
>   

Looks ok, I'll wait for a few days before applying if someone wants to test it.

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>

Thanks,
Neil
Marek Vasut Nov. 16, 2023, 9:15 p.m. UTC | #2
On 10/9/23 11:01, Neil Armstrong wrote:
> Hi,
> 
> On 09/10/2023 00:32, Marek Vasut wrote:
>> The Innolux G101ICE-L01 datasheet [1] page 17 table
>> 6.1 INPUT SIGNAL TIMING SPECIFICATIONS
>> indicates that maximum vertical blanking time is 40 lines.
>> Currently the driver uses 29 lines.
>>
>> Fix it, and since this panel is a DE panel, adjust the timings
>> to make them less hostile to controllers which cannot do 1 px
>> HSA/VSA, distribute the delays evenly between all three parts.
>>
>> [1] 
>> https://www.data-modul.com/sites/default/files/products/G101ICE-L01-C2-specification-12042389.pdf
>>
>> Fixes: 1e29b840af9f ("drm/panel: simple: Add Innolux G101ICE-L01 panel")
>> Signed-off-by: Marek Vasut <marex@denx.de>
>> ---
>> Cc: Daniel Vetter <daniel@ffwll.ch>
>> Cc: David Airlie <airlied@gmail.com>
>> Cc: Jessica Zhang <quic_jesszhan@quicinc.com>
>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
>> Cc: Maxime Ripard <mripard@kernel.org>
>> Cc: Neil Armstrong <neil.armstrong@linaro.org>
>> Cc: Sam Ravnborg <sam@ravnborg.org>
>> Cc: Thomas Zimmermann <tzimmermann@suse.de>
>> Cc: dri-devel@lists.freedesktop.org
>> ---
>>   drivers/gpu/drm/panel/panel-simple.c | 12 ++++++------
>>   1 file changed, 6 insertions(+), 6 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/panel/panel-simple.c 
>> b/drivers/gpu/drm/panel/panel-simple.c
>> index 7ce51ad616296..44c11c418cd56 100644
>> --- a/drivers/gpu/drm/panel/panel-simple.c
>> +++ b/drivers/gpu/drm/panel/panel-simple.c
>> @@ -2295,13 +2295,13 @@ static const struct panel_desc 
>> innolux_g070y2_t02 = {
>>   static const struct display_timing innolux_g101ice_l01_timing = {
>>       .pixelclock = { 60400000, 71100000, 74700000 },
>>       .hactive = { 1280, 1280, 1280 },
>> -    .hfront_porch = { 41, 80, 100 },
>> -    .hback_porch = { 40, 79, 99 },
>> -    .hsync_len = { 1, 1, 1 },
>> +    .hfront_porch = { 30, 60, 70 },
>> +    .hback_porch = { 30, 60, 70 },
>> +    .hsync_len = { 22, 40, 60 },
>>       .vactive = { 800, 800, 800 },
>> -    .vfront_porch = { 5, 11, 14 },
>> -    .vback_porch = { 4, 11, 14 },
>> -    .vsync_len = { 1, 1, 1 },
>> +    .vfront_porch = { 3, 8, 14 },
>> +    .vback_porch = { 3, 8, 14 },
>> +    .vsync_len = { 4, 7, 12 },
>>       .flags = DISPLAY_FLAGS_DE_HIGH,
>>   };
> 
> Looks ok, I'll wait for a few days before applying if someone wants to 
> test it.
> 
> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>

Maybe it is time to apply ?
diff mbox series

Patch

diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 7ce51ad616296..44c11c418cd56 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -2295,13 +2295,13 @@  static const struct panel_desc innolux_g070y2_t02 = {
 static const struct display_timing innolux_g101ice_l01_timing = {
 	.pixelclock = { 60400000, 71100000, 74700000 },
 	.hactive = { 1280, 1280, 1280 },
-	.hfront_porch = { 41, 80, 100 },
-	.hback_porch = { 40, 79, 99 },
-	.hsync_len = { 1, 1, 1 },
+	.hfront_porch = { 30, 60, 70 },
+	.hback_porch = { 30, 60, 70 },
+	.hsync_len = { 22, 40, 60 },
 	.vactive = { 800, 800, 800 },
-	.vfront_porch = { 5, 11, 14 },
-	.vback_porch = { 4, 11, 14 },
-	.vsync_len = { 1, 1, 1 },
+	.vfront_porch = { 3, 8, 14 },
+	.vback_porch = { 3, 8, 14 },
+	.vsync_len = { 4, 7, 12 },
 	.flags = DISPLAY_FLAGS_DE_HIGH,
 };