Skip to contentSkip to conversation

arm: dts: imx6qdl-icore: Add backlight support for lvds

PATCH Superseded Jagan Teki 2 participants 9 messages Mar 8, 2017 – Mar 13, 2017

Subsystems (4)

v4 of 5 Superseded Latest is v5 →

lore
Share & tools
lore

Jagan Teki

author
#0 lore raw

PATCH v4 1/7 arm: dts: imx6qdl-icore: Add backlight support for lvds

From: Jagan Teki <[email protected]>

This patch add support for lvds backlight on i.CoreM6 QDL variant boards.

Cc Domenico Acri <[email protected]>
Cc Matteo Lisi <[email protected]>
Cc Michael Trimarchi <[email protected]>
Cc Shawn Guo <[email protected]>

---
Changes for v4, v3, v2:
- none

 arch/arm/boot/dts/imx6qdl-icore.dtsi | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
arch/arm/boot/dts/imx6qdl-icore.dtsi +20 -0
index 55bebfc..7dda608 100644
@@ -48,6 +48,14 @@
 		reg = <0x10000000 0x80000000>;
 	};
 
+	backlight {
+		compatible = "pwm-backlight";
+		pwms = <&pwm3 0 100000>;
+		brightness-levels = <0 4 8 16 32 64 128 255>;
+		default-brightness-level = <7>;
+		status = "okay";
+	};
+
 	reg_3p3v: regulator-3p3v {
 		compatible = "regulator-fixed";
 		regulator-name = "3P3V";
@@ -136,6 +144,12 @@
 	status = "okay";
 };
 
+&pwm3 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_pwm3>;
+	status = "okay";
+};
+
 &uart4 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_uart4>;
@@ -246,6 +260,12 @@
 		>;
 	};
 
+	pinctrl_pwm3: pwm3grp-1 {
+		fsl,pins = <
+			MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1
+		>;
+	};
+
 	pinctrl_usbotg: usbotggrp {
 		fsl,pins = <
 			MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
Signature · 1 line
1.9.1
author
#1 lore raw

PATCH v4 2/7 arm: dts: imx6q: Add Engicam i.CoreM6 Quad/Dual OpenFrame Cap 10.1 initial support

From: Jagan Teki <[email protected]>

i.CoreM6 Quad/Dual OpenFrame modules are "system on modules plus openframe display carriers" which are good solution for develop user friendly graphic user interface.

General features:

CPU           NXP i.MX6Q rev1.2 at 792 MHz
RAM           1GB, 32, 64 bit, DDR3-800/1066
NAND          SLC,512MB
LVDS Display  TFT 10.1" industrial, 1280x800 resolution
Backlight     LED backlight, brightness 350 Cd/m2
Power supply  15 to 30 Vdc
Cc Domenico Acri <[email protected]>
Cc Matteo Lisi <[email protected]>
Cc Michael Trimarchi <[email protected]>
Cc Shawn Guo <[email protected]>

---
Changes for v4:
- Fix checkpatch.pl Errors/Warnings
Changes for v3:
- Use native-mode as timing0 since this is the initial lvds-channel
- Rename hsd100pxn1 reference as timing0
- Update the correct patch author
Changes for v2:
- none

 arch/arm/boot/dts/Makefile                |  1 +
 arch/arm/boot/dts/imx6q-icore-ofcap10.dts | 76 +++++++++++++++++++++++++++++++
 2 files changed, 77 insertions(+)
 create mode 100644 arch/arm/boot/dts/imx6q-icore-ofcap10.dts
arch/arm/boot/dts/Makefile +1 -0
index 0118084..458ec09 100644
@@ -398,6 +398,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
 	imx6q-h100.dtb \
 	imx6q-hummingboard.dtb \
 	imx6q-icore.dtb \
+	imx6q-icore-ofcap10.dtb \
 	imx6q-icore-rqs.dtb \
 	imx6q-marsboard.dtb \
 	imx6q-mccmon6.dtb \
arch/arm/boot/dts/imx6q-icore-ofcap10.dts new file +76 -0

76 lines not on this page · raw message

Signature · 1 line
1.9.1
author
#2 lore raw

PATCH v4 3/7 arm: dts: imx6q: Add Engicam i.CoreM6 Quad/Dual OpenFrame Cap 12.3 initial support

In reply to Jagan Teki

From: Jagan Teki <[email protected]>

i.CoreM6 Quad/Dual OpenFrame modules are "system on modules plus openframe display carriers" which are good solution for develop user friendly graphic user interface.

General features:

CPU           NXP i.MX6Q rev1.2 at 792 MHz
RAM           1GB, 32, 64 bit, DDR3-800/1066
NAND          SLC,512MB
LVDS Display  TFT 12.3" industrial, 1280x480 resolution
Backlight     LED backlight, brightness 350 Cd/m2
Power supply  15 to 30 Vdc
Cc Domenico Acri <[email protected]>
Cc Matteo Lisi <[email protected]>
Cc Michael Trimarchi <[email protected]>
Cc Shawn Guo <[email protected]>

---
Changes for v4:
- Fix checkpatch.pl Errors/Warnings
Changes for v3:
- Use native-mode as timing0 since this is the initial lvds-channel
- Rename hsd100pxn1 reference as timing0
- Update the correct patch author
Changes for v2:
- none

 arch/arm/boot/dts/Makefile                |  1 +
 arch/arm/boot/dts/imx6q-icore-ofcap12.dts | 76 +++++++++++++++++++++++++++++++
 2 files changed, 77 insertions(+)
 create mode 100644 arch/arm/boot/dts/imx6q-icore-ofcap12.dts
arch/arm/boot/dts/Makefile +1 -0
index 458ec09..adfdaee 100644
@@ -399,6 +399,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
 	imx6q-hummingboard.dtb \
 	imx6q-icore.dtb \
 	imx6q-icore-ofcap10.dtb \
+	imx6q-icore-ofcap12.dtb \
 	imx6q-icore-rqs.dtb \
 	imx6q-marsboard.dtb \
 	imx6q-mccmon6.dtb \
arch/arm/boot/dts/imx6q-icore-ofcap12.dts new file +76 -0

76 lines not on this page · raw message

Signature · 1 line
1.9.1
author
#3 lore raw

PATCH v4 4/7 arm: dts: imx6q-icore: Add LVDS support

In reply to Jagan Teki

From: Jagan Teki <[email protected]>

Add LVDS display support for OpenFrame Capacitive touch 7 inc display which is supported by Engicam i.CoreM6 QDL Starter Kit.

Cc Domenico Acri <[email protected]>
Cc Matteo Lisi <[email protected]>
Cc Michael Trimarchi <[email protected]>
Cc Shawn Guo <[email protected]>

---
Changes for v4:
- Fix checkpatch.pl Errors/Warnings
Changes for v3:
- Use native-mode as timing0 since this is the initial lvds-channel
- Rename hsd100pxn1 reference as timing0
- Update the correct patch author
Changes for v2:
- none

 arch/arm/boot/dts/imx6q-icore.dts | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)
arch/arm/boot/dts/imx6q-icore.dts +25 -0
index 59eb7ad..73f34d1 100644
@@ -57,3 +57,28 @@
 &can2 {
 	status = "okay";
 };
+
+&ldb {
+	status = "okay";
+
+	lvds-channel at 0 {
+		fsl,data-mapping = "spwg";
+		fsl,data-width = <18>;
+		status = "okay";
+
+		display-timings {
+			native-mode = <&timing0>;
+			timing0: timing0 {
+				clock-frequency = <60000000>;
+				hactive = <800>;
+				vactive = <480>;
+				hback-porch = <30>;
+				hfront-porch = <30>;
+				vback-porch = <5>;
+				vfront-porch = <5>;
+				hsync-len = <64>;
+				vsync-len = <20>;
+			};
+		};
+	};
+};
Signature · 1 line
1.9.1
author
#4 lore raw

PATCH v4 5/7 arm: dts: imx6q-icore: Add touchscreen node

In reply to Jagan Teki

From: Jagan Teki <[email protected]>

max11801 touchscreen on Engicam iCoreM6 Quad module is connected via i2c1, so add tc: max11801 at 48 on i2c1.

Cc Domenico Acri <[email protected]>
Cc Matteo Lisi <[email protected]>
Cc Michael Trimarchi <[email protected]>
Cc Shawn Guo <[email protected]>

---
Changes for v4:
- Newly added patch.

 arch/arm/boot/dts/imx6q-icore.dts | 9 +++++++++
 1 file changed, 9 insertions(+)
arch/arm/boot/dts/imx6q-icore.dts +9 -0
index 73f34d1..8c1a572 100644
@@ -58,6 +58,15 @@
 	status = "okay";
 };
 
+&i2c1 {
+	ts: max11801 at 48 {
+		compatible = "max11801";
+		reg = <0x48>;
+		interrupt-parent = <&gpio3>;
+		interrupts = <31 IRQ_TYPE_EDGE_FALLING>;
+	};
+};
+
 &ldb {
 	status = "okay";
 
Signature · 1 line
1.9.1
#5 lore raw

Re: [PATCH v4 5/7] arm: dts: imx6q-icore: Add touchscreen node

Quoted 22 lines · Jagan Teki

From: Jagan Teki <[email protected]>

max11801 touchscreen on Engicam iCoreM6 Quad module is connected via i2c1, so add tc: max11801 at 48 on i2c1.

Cc Domenico Acri <[email protected]>
Cc Matteo Lisi <[email protected]>
Cc Michael Trimarchi <[email protected]>
Cc Shawn Guo <[email protected]>

---
Changes for v4:
- Newly added patch.

 arch/arm/boot/dts/imx6q-icore.dts | 9 +++++++++
 1 file changed, 9 insertions(+)
arch/arm/boot/dts/imx6q-icore.dts +0 -0
index 73f34d1..8c1a572 100644

arch/arm/boot/dts/imx6q-icore.dts line 63

Quoted 6 lines
arch/arm/boot/dts/imx6q-icore.dts +3 -0
@@ -58,6 +58,15 @@
 	status = "okay";
 };
 
+&i2c1 {
+	ts: max11801 at 48 {
+		compatible = "max11801";

Undocumented compatible?

Shawn

Quoted 12 lines
arch/arm/boot/dts/imx6q-icore.dts +6 -0
+		reg = <0x48>;
+		interrupt-parent = <&gpio3>;
+		interrupts = <31 IRQ_TYPE_EDGE_FALLING>;
+	};
+};
+
 &ldb {
 	status = "okay";
 
Signature · 1 line
1.9.1
author
#6 lore raw

PATCH v4 6/7 arm: imx_v6_v7_defconfig: Select max11801_ts touchscreen driver

In reply to Jagan Teki

From: Jagan Teki <[email protected]>

Select CONFIG_TOUCHSCREEN_MAX11801 so that we can have touchscreen funtionality by default on Engicam i.CoreM6 Quad boards.

Cc Matteo Lisi <[email protected]>
Cc Michael Trimarchi <[email protected]>
Cc Shawn Guo <[email protected]>

---
Changes for v4:
- Newly added patch.

 arch/arm/boot/dts/imx6q-icore.dts | 9 +++++++++
 1 file changed, 9 insertions(+)
 arch/arm/configs/imx_v6_v7_defconfig | 1 +
 1 file changed, 1 insertion(+)
arch/arm/configs/imx_v6_v7_defconfig +1 -0
index eaba3b1..842168f 100644
@@ -165,6 +165,7 @@ CONFIG_TOUCHSCREEN_ADS7846=y
 CONFIG_TOUCHSCREEN_EGALAX=y
 CONFIG_TOUCHSCREEN_IMX6UL_TSC=y
 CONFIG_TOUCHSCREEN_EDT_FT5X06=y
+CONFIG_TOUCHSCREEN_MAX11801=y
 CONFIG_TOUCHSCREEN_MC13783=y
 CONFIG_TOUCHSCREEN_TSC2004=y
 CONFIG_TOUCHSCREEN_TSC2007=y
Signature · 1 line
1.9.1
author
#7 lore raw

PATCH v4 7/7 arm: imx_v6_v7_defconfig: Select hid-multitouchdriver

In reply to Jagan Teki

From: Jagan Teki <[email protected]>

Select CONFIG_HID_MULTITOUCH so that we can have multi touchscreen funtionality via USB by default on Engicam i.CoreM6 Quad with OpenFrame Cap 10.1 display boards.

Cc Matteo Lisi <[email protected]>
Cc Michael Trimarchi <[email protected]>
Cc Shawn Guo <[email protected]>

---
Changes for v4:
- Newly added patch.

 arch/arm/boot/dts/imx6q-icore.dts | 9 +++++++++
 1 file changed, 9 insertions(+)
 arch/arm/configs/imx_v6_v7_defconfig | 1 +
 1 file changed, 1 insertion(+)
arch/arm/configs/imx_v6_v7_defconfig +1 -0
index 842168f..914e8cb 100644
@@ -174,6 +174,7 @@ CONFIG_TOUCHSCREEN_SX8654=y
 CONFIG_TOUCHSCREEN_COLIBRI_VF50=y
 CONFIG_INPUT_MISC=y
 CONFIG_INPUT_MMA8450=y
+CONFIG_HID_MULTITOUCH=y
 CONFIG_SERIO_SERPORT=m
 # CONFIG_LEGACY_PTYS is not set
 CONFIG_SERIAL_IMX=y
Signature · 1 line
1.9.1
#8 lore raw
In reply to Jagan Teki
Quoted 10 lines · Jagan Teki

From: Jagan Teki <[email protected]>

This patch add support for lvds backlight on i.CoreM6 QDL variant boards.

Cc Domenico Acri <[email protected]>
Cc Matteo Lisi <[email protected]>
Cc Michael Trimarchi <[email protected]>
Cc Shawn Guo <[email protected]>

For sake of consistency, please use 'ARM: ...' than 'arm: ...' in subject prefix for i.MX patches.

Quoted 12 lines

---
Changes for v4, v3, v2:
- none

 arch/arm/boot/dts/imx6qdl-icore.dtsi | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
arch/arm/boot/dts/imx6qdl-icore.dtsi +0 -0
index 55bebfc..7dda608 100644

arch/arm/boot/dts/imx6qdl-icore.dtsi line 56

Quoted 9 lines
arch/arm/boot/dts/imx6qdl-icore.dtsi +6 -0
@@ -48,6 +48,14 @@
 		reg = <0x10000000 0x80000000>;
 	};
 
+	backlight {
+		compatible = "pwm-backlight";
+		pwms = <&pwm3 0 100000>;
+		brightness-levels = <0 4 8 16 32 64 128 255>;
+		default-brightness-level = <7>;
+		status = "okay";

The okay status doesn't make a difference for such case, and can be saved.

Quoted 19 lines
arch/arm/boot/dts/imx6qdl-icore.dtsi +8 -0
+	};
+
 	reg_3p3v: regulator-3p3v {
 		compatible = "regulator-fixed";
 		regulator-name = "3P3V";
@@ -136,6 +144,12 @@
 	status = "okay";
 };
 
+&pwm3 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_pwm3>;
+	status = "okay";
+};
+
 &uart4 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_uart4>;

arch/arm/boot/dts/imx6qdl-icore.dtsi line 263

Quoted 4 lines
arch/arm/boot/dts/imx6qdl-icore.dtsi +1 -0
@@ -246,6 +260,12 @@
 		>;
 	};
 
+	pinctrl_pwm3: pwm3grp-1 {

The '-1' suffix is meaningless.

Shawn

Quoted 11 lines
arch/arm/boot/dts/imx6qdl-icore.dtsi +5 -0
+		fsl,pins = <
+			MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1
+		>;
+	};
+
 	pinctrl_usbotg: usbotggrp {
 		fsl,pins = <
 			MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
Signature · 1 line
1.9.1