CLCD graphics on the Nomadik NHK15

-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABAgAGBQJX1xA0AAoJEEEQszewGV1z6X4QAMcgpRoBZu1sImOxzslHBO7e
 MAqpbKczZwXVWxBLurQttIlIFL64jccLrmFNQ8Jurxkh/tKBlxNngtj0AlpSCiX8
 qxfHhXymnIR3BRXvbXaGO7ddmPv3BXcThvKEAyKPBV7BBbHpWpBxgKbLiNG+ykrA
 4kiJCtgmbKgUrdj2u5T7U5Ne+fHcspP4HFjzLPoVVapSkG21llOZK/GIj/lVZ63o
 pNIMf95ut/+t9Vw5Wd+lCtAI3L2hYeK5K259mIo97yv1mDXVFuPZGcNFIK7F8UWF
 pM6e3IftHQm/ALDgzBr3r+bI3CXGS8FySDeS5ds/Gwfp48fSkjIDh0R0wVmJZBJj
 7FYGLnTESYQuQrF9D0cPJUemMu/lS2kqvxobiqqgPDoOy+RoWCeTXbhWeiokrVph
 hWXfWm2VdvBsF3I/7/HuhttTekPosZ8XfUliw4XDSAc5Qvbf19AMckGtZ7KFPL8R
 5s5oZBrLT2OADYboeIJgvnGydyym/JEBJ4vCHK6oy447mS/PgQGZh6Kie3eZIVkZ
 wPddp3XQtz2Af2P9PqtpadBWOqn4xHiTUPF+4lrMvruXkURPzdcQdsLyOIKnVDge
 P+Sbt0LHMzh776EdIp7mipQOaz3vlAKXFSW79eV+vwaG7LKbF48TajcjaGl6Ccmu
 tJUB2mgz6LmkLVQnf+Jh
 =C78b
 -----END PGP SIGNATURE-----

Merge tag 'clcd-nomadik' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik into next/dt

Pull "CLCD graphics on the Nomadik NHK15" from Linus Walleij:

* tag 'clcd-nomadik' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik:
  ARM: dts: add the CLCD LCD display to the NHK15
  ARM: dts: add PMU to the NHK15 device tree
  ARM: nomadik: select MFD_SYSCON
  dt-bindings: Add TPO TPG110 binding
  dt-bindings: add vendor TPO
  ARM: dts: add STMPE PWM to the NHK15 device tree
This commit is contained in:
Arnd Bergmann 2016-09-13 17:43:48 +02:00
commit 327c2c1562
5 changed files with 145 additions and 0 deletions

View file

@ -0,0 +1,47 @@
TPO TPG110 Panel
================
This binding builds on the DPI bindings, adding a few properties
as a superset of a DPI. See panel-dpi.txt for the required DPI
bindings.
Required properties:
- compatible : "tpo,tpg110"
- grestb-gpios : panel reset GPIO
- scen-gpios : serial control enable GPIO
- scl-gpios : serial control clock line GPIO
- sda-gpios : serial control data line GPIO
Required nodes:
- Video port for DPI input, see panel-dpi.txt
- Panel timing for DPI setup, see panel-dpi.txt
Example
-------
panel {
compatible = "tpo,tpg110", "panel-dpi";
grestb-gpios = <&stmpe_gpio44 5 GPIO_ACTIVE_LOW>;
scen-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
scl-gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
sda-gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
backlight = <&bl>;
port {
nomadik_clcd_panel: endpoint {
remote-endpoint = <&nomadik_clcd_pads>;
};
};
panel-timing {
clock-frequency = <33200000>;
hactive = <800>;
hback-porch = <216>;
hfront-porch = <40>;
hsync-len = <1>;
vactive = <480>;
vback-porch = <35>;
vfront-porch = <10>;
vsync-len = <1>;
};
};

View file

@ -272,6 +272,7 @@ toshiba Toshiba Corporation
toumaz Toumaz
tplink TP-LINK Technologies Co., Ltd.
tpk TPK U.S.A. LLC
tpo TPO
tronfy Tronfy
tronsmart Tronsmart
truly Truly Semiconductors Limited

View file

@ -140,6 +140,10 @@
0x03020067 // Up
0x0303006c>; // Down
};
stmpe0_pwm: stmpe_pwm {
compatible = "st,stmpe-pwm";
#pwm-cells = <2>;
};
};
stmpe1: stmpe2401@44 {
compatible = "st,stmpe2401";
@ -172,6 +176,50 @@
};
amba {
clcd@10120000 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&clcd_24bit_mux>;
port {
nomadik_clcd_pads: endpoint {
remote-endpoint = <&nomadik_clcd_panel>;
arm,pl11x,tft-r0g0b0-pads = <16 8 0>;
};
};
/*
* WVGA connector 21
* WVGA (800x480): 4.3" TPG110 TDO43MTEA2 24-bit RGB
* with TPO touch screen.
*/
panel {
compatible = "tpo,tpg110", "panel-dpi";
grestb-gpios = <&stmpe_gpio44 5 GPIO_ACTIVE_LOW>;
scen-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
scl-gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
sda-gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
backlight = <&bl>;
port {
nomadik_clcd_panel: endpoint {
remote-endpoint = <&nomadik_clcd_pads>;
};
};
panel-timing {
clock-frequency = <33200000>;
hactive = <800>;
hback-porch = <216>;
hfront-porch = <40>;
hsync-len = <1>;
vactive = <480>;
vback-porch = <35>;
vfront-porch = <10>;
vsync-len = <1>;
};
};
};
/* Activate RX/TX and CTS/RTS on UART 0 */
uart0: uart@101fd000 {
pinctrl-names = "default";
@ -183,4 +231,24 @@
wp-gpios = <&stmpe_gpio44 18 GPIO_ACTIVE_HIGH>;
};
};
bl: backlight {
compatible = "pwm-backlight";
pwms = <&stmpe0_pwm 0 500000>;
pwm-names = "backlight";
brightness-levels = <
0 1 2 3 4 5 6 7 8 9
10 11 12 13 14 15 16 17 18 19
20 21 22 23 24 25 26 27 28 29
30 31 32 33 34 35 36 37 38 39
40 41 42 43 44 45 46 47 48 49
50 51 52 53 54 55 56 57 58 59
60 61 62 63 64 65 66 67 68 69
70 71 72 73 74 75 76 77 78 79
80 81 82 83 84 85 86 87 88 89
90 91 92 93 94 95 96 97 98 99
100
>;
default-brightness-level = <100>;
};
};

View file

@ -166,6 +166,24 @@
};
};
};
clcd {
/*
* This should be activated to use the additional
* 8 lines for bits 16 thru 23 from the CLCD block.
*/
clcd_24bit_mux: clcd_mux {
clcd_24bit_mux {
function = "clcd";
groups = "clcd_16_23_b_1";
};
};
};
};
/* Power Management Unit */
pmu: pmu@101e9000 {
compatible = "stericsson,nomadik-pmu", "syscon";
reg = <0x101e0000 0x1000>;
};
src: src@101e0000 {
@ -726,6 +744,16 @@
#size-cells = <1>;
ranges;
clcd@10120000 {
compatible = "arm,pl110", "arm,primecell";
reg = <0x10120000 0x1000>;
interrupt-names = "combined";
interrupts = <14>;
clocks = <&clcdclk>, <&hclkclcd>;
clock-names = "clcdclk", "apb_pclk";
status = "disabled";
};
vica: intc@10140000 {
compatible = "arm,versatile-vic";
interrupt-controller;

View file

@ -7,6 +7,7 @@ menuconfig ARCH_NOMADIK
select CLKSRC_NOMADIK_MTU_SCHED_CLOCK
select CPU_ARM926T
select GPIOLIB
select MFD_SYSCON
select MIGHT_HAVE_CACHE_L2X0
select PINCTRL
select PINCTRL_NOMADIK