Skip to contentSkip to conversation

arm: dts: imx6q-icore: Add LVDS display nodes

PATCH In review Jagan Teki 2 participants 11 messages Mar 14, 2017 – Mar 16, 2017

Subsystems (5)
lore
Share & tools
lore

Jagan Teki

author
#0 lore raw

v5 cover arm: dts: imx6q-icore: Add LVDS display nodes

From: Jagan Teki <[email protected]>

This series adds support for lvds display, touchscreen nodes on dts for Engicam i.CoreM6 Quad boards along with selecting few touchscreen driver configs to imx_v6_v7_defconfig so-that select by default.

Jagan Teki (8):
ARM: dts: imx6qdl-icore: Add backlight support for lvds
ARM: dts: imx6q: Add Engicam i.CoreM6 Quad/Dual OpenFrame Cap 10.1
initial support
ARM: dts: imx6q: Add Engicam i.CoreM6 Quad/Dual OpenFrame Cap 12.3
initial support
ARM: dts: imx6q-icore: Add LVDS support
dt-bindings: input: touchscreen: Add max11801-ts binding
ARM: dts: imx6q-icore: Add touchscreen node
ARM: imx_v6_v7_defconfig: Select max11801_ts touchscreen driver
ARM: imx_v6_v7_defconfig: Select hid-multitouchdriver

 .../bindings/input/touchscreen/max11801-ts.txt     | 18 +++++
 arch/arm/boot/dts/Makefile                         |  2 +
 arch/arm/boot/dts/imx6q-icore-ofcap10.dts          | 76 ++++++++++++++++++++++
 arch/arm/boot/dts/imx6q-icore-ofcap12.dts          | 76 ++++++++++++++++++++++
 arch/arm/boot/dts/imx6q-icore.dts                  | 34 ++++++++++
 arch/arm/boot/dts/imx6qdl-icore.dtsi               | 19 ++++++
 arch/arm/configs/imx_v6_v7_defconfig               |  2 +
 7 files changed, 227 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/max11801-ts.txt
 create mode 100644 arch/arm/boot/dts/imx6q-icore-ofcap10.dts
 create mode 100644 arch/arm/boot/dts/imx6q-icore-ofcap12.dts
Signature · 1 line
1.9.1
author
#1 lore raw

PATCH v5 1/8 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 v5:
- %s/arm/ARM/g with subject prefix
- remove status=okay for backlight node
- remove -1 suffix from pwm3grp iomux node Changes for v4, v3, v2:
- none

 arch/arm/boot/dts/imx6qdl-icore.dtsi | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
arch/arm/boot/dts/imx6qdl-icore.dtsi +19 -0
index 55bebfc..56d0c5d 100644
@@ -48,6 +48,13 @@
 		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>;
+	};
+
 	reg_3p3v: regulator-3p3v {
 		compatible = "regulator-fixed";
 		regulator-name = "3P3V";
@@ -136,6 +143,12 @@
 	status = "okay";
 };
 
+&pwm3 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_pwm3>;
+	status = "okay";
+};
+
 &uart4 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_uart4>;
@@ -246,6 +259,12 @@
 		>;
 	};
 
+	pinctrl_pwm3: pwm3grp {
+		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
#2 lore raw

PATCH v5 2/8 ARM: dts: imx6q: Add Engicam i.CoreM6 Quad/Dual OpenFrame Cap 10.1 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 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 v5:
- %s/arm/ARM/g with subject prefix
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 43c27b6..736f83e 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
#3 lore raw

PATCH v5 3/8 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 v5:
- %s/arm/ARM/g with subject prefix
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 736f83e..a80a23c 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
#4 lore raw

PATCH v5 4/8 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 v5:
- %s/arm/ARM/g with subject prefix
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
#5 lore raw

PATCH v5 5/8 dt-bindings: input: touchscreen: Add max11801-ts binding

In reply to Jagan Teki

From: Jagan Teki <[email protected]>

Add missing documentation of max11801-ts dt-binding details.

Cc Mark Rutland <[email protected]>
Cc Rob Herring <[email protected]>
Cc Shawn Guo <[email protected]>
Cc Michael Trimarchi <[email protected]>

---
Changes for v5:
- Newly added patch

 .../bindings/input/touchscreen/max11801-ts.txt         | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/max11801-ts.txt
Documentation/devicetree/bindings/input/touchscreen/max11801-ts.txt new file +18 -0
new file mode 100644
index 0000000..b6ac452
@@ -0,0 +1,18 @@
+* MAXI MAX11801 Resistive touch screen controller with i2c interface
+
+Required properties:
+- compatible: must be "max11801"
+- reg: i2c slave address
+- interrupt-parent: the phandle for the interrupt controller
+- interrupts: touch controller interrupt
+
+Example:
+
+&i2c1 {
+	ts: max11801 at 48 {
+		compatible = "max11801";
+		reg = <0x48>;
+		interrupt-parent = <&gpio3>;
+		interrupts = <31 2>;
+	};
+};
Signature · 1 line
1.9.1
#6 lore raw

Re: [PATCH v5 5/8] dt-bindings: input: touchscreen: Add max11801-ts binding

Quoted 25 lines · Jagan Teki

From: Jagan Teki <[email protected]>

Add missing documentation of max11801-ts dt-binding details.

Cc Mark Rutland <[email protected]>
Cc Rob Herring <[email protected]>
Cc Shawn Guo <[email protected]>
Cc Michael Trimarchi <[email protected]>

---
Changes for v5:
- Newly added patch

 .../bindings/input/touchscreen/max11801-ts.txt         | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/max11801-ts.txt
Documentation/devicetree/bindings/input/touchscreen/max11801-ts.txt new file +2 -0
new file mode 100644
index 0000000..b6ac452
@@ -0,0 +1,18 @@
+* MAXI MAX11801 Resistive touch screen controller with i2c interface
+

Documentation/devicetree/bindings/input/touchscreen/max11801-ts.txt line 12

Quoted 10 lines
Documentation/devicetree/bindings/input/touchscreen/max11801-ts.txt new file +10 -0
+Required properties:
+- compatible: must be "max11801"
+- reg: i2c slave address
+- interrupt-parent: the phandle for the interrupt controller
+- interrupts: touch controller interrupt
+
+Example:
+
+&i2c1 {
+	ts: max11801 at 48 {

Node name should be generic while label can be specific. That said, the following form might be better choice.

	max11801: touchscreen at 48 {

Shawn

Quoted 9 lines
Documentation/devicetree/bindings/input/touchscreen/max11801-ts.txt new file +6 -0
+		compatible = "max11801";
+		reg = <0x48>;
+		interrupt-parent = <&gpio3>;
+		interrupts = <31 2>;
+	};
+};
Signature · 1 line
1.9.1
author
#7 lore raw

PATCH v5 6/8 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 v5:
- %s/arm/ARM/g with subject prefix
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 2>;
+	};
+};
+
 &ldb {
 	status = "okay";
 
Signature · 1 line
1.9.1
author
#8 lore raw

PATCH v5 7/8 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 v5:
- %s/arm/ARM/g with subject prefix
Changes for v4:
- Newly added patch

 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
#9 lore raw

PATCH v5 8/8 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 v5:
- %s/arm/ARM/g with subject prefix
Changes for v4:
- Newly added patch

 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
#10 lore raw
In reply to Jagan Teki
Quoted 4 lines · Jagan Teki

From: Jagan Teki <[email protected]>
Jagan Teki (8):
ARM: dts: imx6qdl-icore: Add backlight support for lvds
ARM: dts: imx6q: Add Engicam i.CoreM6 Quad/Dual OpenFrame Cap 10.1

Quoted 8 lines

initial support
ARM: dts: imx6q: Add Engicam i.CoreM6 Quad/Dual OpenFrame Cap 12.3
initial support
ARM: dts: imx6q-icore: Add LVDS support
dt-bindings: input: touchscreen: Add max11801-ts binding
ARM: dts: imx6q-icore: Add touchscreen node
ARM: imx_v6_v7_defconfig: Select max11801_ts touchscreen driver
ARM: imx_v6_v7_defconfig: Select hid-multitouchdriver

Applied #1 ~ #4, #7 and #8, thanks.