Skip to contentSkip to conversation

ARM: dts: imx6qdl: Adjust the brightness setting for LVDS panel

PATCH New Robby Cai 4 participants 5 messages Jan 20, 2015 – Jan 27, 2015

Subsystems (3)
lore
Share & tools
lore

Robby Cai

author
#0 lore raw

PATCH 1/1 ARM: dts: imx6qdl: Adjust the brightness setting for LVDS panel

Hannstar XGA panel is used by default on i.MX6QDL Sabre Auto/Lite/SD or derived board.

According to its data sheet [1],
a) the dimming duty cycle is 20% - 100%.
This patch changes the brightness-level from 20 to 100 with step 10 to make it straight-forward.
b) the typical dimming frequency is 20KHz.
The previous setting is 200Hz. This patch corrects it.

[1]
http://boundarydevices.com/wp-content/uploads/2013/06/HSD100PXN1-A00-C11-1.0.pdf

---
 arch/arm/boot/dts/imx6qdl-gw52xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-gw53xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-gw54xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-nitrogen6x.dtsi | 6 +++---
 arch/arm/boot/dts/imx6qdl-sabreauto.dtsi  | 6 +++---
 arch/arm/boot/dts/imx6qdl-sabrelite.dtsi  | 6 +++---
 arch/arm/boot/dts/imx6qdl-sabresd.dtsi    | 6 +++---
 7 files changed, 21 insertions(+), 21 deletions(-)
arch/arm/boot/dts/imx6qdl-gw52xx.dtsi +3 -3
index b5756c2..33484d8 100644
@@ -29,9 +29,9 @@
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 	};
 
 	leds {
arch/arm/boot/dts/imx6qdl-gw53xx.dtsi +3 -3
index 86f03c1..0d01751 100644
@@ -30,9 +30,9 @@
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 	};
 
 	leds {
arch/arm/boot/dts/imx6qdl-gw54xx.dtsi +3 -3
index 4a8d97f..8973bf2 100644
@@ -30,9 +30,9 @@
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 	};
 
 	leds {
arch/arm/boot/dts/imx6qdl-nitrogen6x.dtsi +3 -3
index 0821812..5453cf0 100644
@@ -124,9 +124,9 @@
 
 	backlight_lvds {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 		power-supply = <&reg_3p3v>;
 		status = "okay";
 	};
arch/arm/boot/dts/imx6qdl-sabreauto.dtsi +3 -3
index 009abd6..2bfcf5a 100644
@@ -38,9 +38,9 @@
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm3 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm3 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 		status = "okay";
 	};
 };
arch/arm/boot/dts/imx6qdl-sabrelite.dtsi +3 -3
index 0b28a9d..d1409c0 100644
@@ -123,9 +123,9 @@
 
 	backlight_lvds {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 		power-supply = <&reg_3p3v>;
 		status = "okay";
 	};
arch/arm/boot/dts/imx6qdl-sabresd.dtsi +3 -3
index f1cd214..3efc363 100644
@@ -115,9 +115,9 @@
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm1 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm1 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 		status = "okay";
 	};
 
Signature · 1 line
1.9.1
#1 lore raw

PATCH 1/1 ARM: dts: imx6qdl: Adjust the brightness setting for LVDS panel

Add LAKML and a few interested people.

Shawn

Quoted 146 lines · Robby Cai

Hannstar XGA panel is used by default on i.MX6QDL Sabre Auto/Lite/SD or derived board.

According to its data sheet [1],
a) the dimming duty cycle is 20% - 100%.
This patch changes the brightness-level from 20 to 100 with step 10 to make it straight-forward.
b) the typical dimming frequency is 20KHz.
The previous setting is 200Hz. This patch corrects it.

[1]
http://boundarydevices.com/wp-content/uploads/2013/06/HSD100PXN1-A00-C11-1.0.pdf

---
 arch/arm/boot/dts/imx6qdl-gw52xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-gw53xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-gw54xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-nitrogen6x.dtsi | 6 +++---
 arch/arm/boot/dts/imx6qdl-sabreauto.dtsi  | 6 +++---
 arch/arm/boot/dts/imx6qdl-sabrelite.dtsi  | 6 +++---
 arch/arm/boot/dts/imx6qdl-sabresd.dtsi    | 6 +++---
 7 files changed, 21 insertions(+), 21 deletions(-)
arch/arm/boot/dts/imx6qdl-gw52xx.dtsi +3 -3
index b5756c2..33484d8 100644
@@ -29,9 +29,9 @@
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 	};
 
 	leds {
arch/arm/boot/dts/imx6qdl-gw53xx.dtsi +3 -3
index 86f03c1..0d01751 100644
@@ -30,9 +30,9 @@
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 	};
 
 	leds {
arch/arm/boot/dts/imx6qdl-gw54xx.dtsi +3 -3
index 4a8d97f..8973bf2 100644
@@ -30,9 +30,9 @@
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 	};
 
 	leds {
arch/arm/boot/dts/imx6qdl-nitrogen6x.dtsi +3 -3
index 0821812..5453cf0 100644
@@ -124,9 +124,9 @@
 
 	backlight_lvds {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 		power-supply = <&reg_3p3v>;
 		status = "okay";
 	};
arch/arm/boot/dts/imx6qdl-sabreauto.dtsi +3 -3
index 009abd6..2bfcf5a 100644
@@ -38,9 +38,9 @@
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm3 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm3 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 		status = "okay";
 	};
 };
arch/arm/boot/dts/imx6qdl-sabrelite.dtsi +3 -3
index 0b28a9d..d1409c0 100644
@@ -123,9 +123,9 @@
 
 	backlight_lvds {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 		power-supply = <&reg_3p3v>;
 		status = "okay";
 	};
arch/arm/boot/dts/imx6qdl-sabresd.dtsi +3 -3
index f1cd214..3efc363 100644
@@ -115,9 +115,9 @@
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm1 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm1 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;
 		status = "okay";
 	};
 
Signature · 1 line
1.9.1
#2 lore raw

PATCH 1/1 ARM: dts: imx6qdl: Adjust the brightness setting for LVDS panel

Am Dienstag, den 20.01.2015, 19:38 +0800 schrieb Shawn Guo:

Quoted 35 lines

Add LAKML and a few interested people.

Shawn

Quoted 30 lines · Robby Cai

Hannstar XGA panel is used by default on i.MX6QDL Sabre Auto/Lite/SD or derived board.

According to its data sheet [1],
a) the dimming duty cycle is 20% - 100%.
This patch changes the brightness-level from 20 to 100 with step 10 to make it straight-forward.
b) the typical dimming frequency is 20KHz.
The previous setting is 200Hz. This patch corrects it.

[1]
http://boundarydevices.com/wp-content/uploads/2013/06/HSD100PXN1-A00-C11-1.0.pdf

---
 arch/arm/boot/dts/imx6qdl-gw52xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-gw53xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-gw54xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-nitrogen6x.dtsi | 6 +++---
 arch/arm/boot/dts/imx6qdl-sabreauto.dtsi  | 6 +++---
 arch/arm/boot/dts/imx6qdl-sabrelite.dtsi  | 6 +++---
 arch/arm/boot/dts/imx6qdl-sabresd.dtsi    | 6 +++---
 7 files changed, 21 insertions(+), 21 deletions(-)
arch/arm/boot/dts/imx6qdl-gw52xx.dtsi +0 -0
index b5756c2..33484d8 100644
@@ -29,9 +29,9 @@
 
Quoted 8 lines

arch/arm/boot/dts/imx6qdl-gw52xx.dtsi line 34

Quoted 8 lines
arch/arm/boot/dts/imx6qdl-gw52xx.dtsi +3 -3
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;

I notice that the intervals are changed from exponential to linear. Is this really wanted here?
I expect that the new settings result in huge steps in perceived brightness at low levels and a nearly imperceptible change at the last step.

regards
Philipp

#3 lore raw

PATCH 1/1 ARM: dts: imx6qdl: Adjust the brightness setting for LVDS panel

Quoted 66 lines

-----Original Message-----
From: Philipp Zabel [mailto:p.zabel at pengutronix.de]
Sent: Thursday, January 22, 2015 11:38 PM
To: Shawn Guo
Cc: Cai Robby-R63905; linux-pwm at vger.kernel.org; Eric Nelson; Tim Harvey; jg1.han at samsung.com; Troy Kisky; thierry.reding at gmail.com; kernel at pengutronix.de; lee.jones at linaro.org; linux-arm- kernel at lists.infradead.org
Subject: Re: [PATCH] ARM: dts: imx6qdl: Adjust the brightness setting for LVDS panel

Am Dienstag, den 20.01.2015, 19:38 +0800 schrieb Shawn Guo:

Quoted 37 lines

Add LAKML and a few interested people.

Shawn

Quoted 32 lines · Robby Cai

Hannstar XGA panel is used by default on i.MX6QDL Sabre Auto/Lite/SD or derived board.

According to its data sheet [1],
a) the dimming duty cycle is 20% - 100%.
This patch changes the brightness-level from 20 to 100 with step 10 to make it straight-forward.
b) the typical dimming frequency is 20KHz.
The previous setting is 200Hz. This patch corrects it.

[1]
http://boundarydevices.com/wp-content/uploads/2013/06/HSD100PXN1-A00
-C11-1.0.pdf

---
 arch/arm/boot/dts/imx6qdl-gw52xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-gw53xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-gw54xx.dtsi     | 6 +++---
 arch/arm/boot/dts/imx6qdl-nitrogen6x.dtsi | 6 +++---
arch/arm/boot/dts/imx6qdl-sabreauto.dtsi  | 6 +++---
arch/arm/boot/dts/imx6qdl-sabrelite.dtsi  | 6 +++---
 arch/arm/boot/dts/imx6qdl-sabresd.dtsi    | 6 +++---
 7 files changed, 21 insertions(+), 21 deletions(-)
arch/arm/boot/dts/imx6qdl-gw52xx.dtsi +0 -0
index b5756c2..33484d8 100644
@@ -29,9 +29,9 @@
 
Quoted 8 lines

arch/arm/boot/dts/imx6qdl-gw52xx.dtsi line 34

Quoted 8 lines
arch/arm/boot/dts/imx6qdl-gw52xx.dtsi +3 -3
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm4 0 5000000>;
-		brightness-levels = <0 4 8 16 32 64 128 255>;
-		default-brightness-level = <7>;
+		pwms = <&pwm4 0 50000>;
+		brightness-levels = <0 20 30 40 50 60 70 80 90 100>;
+		default-brightness-level = <9>;

I notice that the intervals are changed from exponential to linear. Is this really wanted here?
I expect that the new settings result in huge steps in perceived brightness at low levels and a nearly imperceptible change at the last step.

Quoted 2 lines

regards
Philipp

No particular reason here. I understand your concern but seems there's no obvious rule. How about add some interpolation, such as <0 52 64 96 128 160 192 224 255> or even more, <0 52 64 80 96 112 128 144 160 176 192 208 224 240 255>

Regards,
Robby

#4 lore raw

PATCH 1/1 ARM: dts: imx6qdl: Adjust the brightness setting for LVDS panel

Am Montag, den 26.01.2015, 14:44 +0000 schrieb Robby.Cai at freescale.com:

Quoted 6 lines
Quoted 6 lines

I notice that the intervals are changed from exponential to linear. Is this really wanted here?
I expect that the new settings result in huge steps in perceived brightness at low levels and a nearly imperceptible change at the last step.

Quoted 7 lines
Quoted 2 lines

regards
Philipp

No particular reason here. I understand your concern but seems there's no obvious rule. How about add some interpolation, such as <0 52 64 96 128 160 192 224 255> or even more, <0 52 64 80 96 112 128 144 160 176 192 208 224 240 255>

I just wanted to point out the possible issue. Maybe somebody with the actual panel could sit down and experiment and come up with some visually pleasing steps.

regards
Philipp