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 toumaz Toumaz
tplink TP-LINK Technologies Co., Ltd. tplink TP-LINK Technologies Co., Ltd.
tpk TPK U.S.A. LLC tpk TPK U.S.A. LLC
tpo TPO
tronfy Tronfy tronfy Tronfy
tronsmart Tronsmart tronsmart Tronsmart
truly Truly Semiconductors Limited truly Truly Semiconductors Limited

View File

@ -140,6 +140,10 @@
0x03020067 // Up 0x03020067 // Up
0x0303006c>; // Down 0x0303006c>; // Down
}; };
stmpe0_pwm: stmpe_pwm {
compatible = "st,stmpe-pwm";
#pwm-cells = <2>;
};
}; };
stmpe1: stmpe2401@44 { stmpe1: stmpe2401@44 {
compatible = "st,stmpe2401"; compatible = "st,stmpe2401";
@ -172,6 +176,50 @@
}; };
amba { 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 */ /* Activate RX/TX and CTS/RTS on UART 0 */
uart0: uart@101fd000 { uart0: uart@101fd000 {
pinctrl-names = "default"; pinctrl-names = "default";
@ -183,4 +231,24 @@
wp-gpios = <&stmpe_gpio44 18 GPIO_ACTIVE_HIGH>; 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 { src: src@101e0000 {
@ -726,6 +744,16 @@
#size-cells = <1>; #size-cells = <1>;
ranges; 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 { vica: intc@10140000 {
compatible = "arm,versatile-vic"; compatible = "arm,versatile-vic";
interrupt-controller; interrupt-controller;

View File

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