Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: dts: am437x: cm-t43: add lcd support

Add the necessary dss configuration to drive the startek lcd on CompuLab
sbc-t43 single board computer.

Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Benoit Cousson <bcousson@baylibre.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Pawel Moll <pawel.moll@arm.com>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Cc: Dmitry Lifshitz <lifshitz@compulab.co.il>
Cc: Ian Campbell <ijc+devicetree@hellion.org.uk>
Signed-off-by: Tony Lindgren <tony@atomide.com>

authored by

Nikita Kiryanov and committed by
Tony Lindgren
e81bce70 97ce5054

+65
+65
arch/arm/boot/dts/am437x-sbc-t43.dts
··· 12 12 / { 13 13 model = "CompuLab CM-T43 on SB-SOM-T43"; 14 14 compatible = "compulab,am437x-sbc-t43", "compulab,am437x-cm-t43", "ti,am4372", "ti,am43"; 15 + 16 + aliases { 17 + display0 = &lcd0; 18 + }; 15 19 }; 16 20 17 21 &am43xx_pinmux { ··· 29 25 AM4372_IOPAD(0x8fc, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc0_dat3.mmc0_dat3 */ 30 26 AM4372_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */ 31 27 AM4372_IOPAD(0x964, PIN_INPUT | MUX_MODE7) /* ecap0_in_pwm0_out.gpio0_7 */ 28 + >; 29 + }; 30 + 31 + dss_pinctrl_default: dss_pinctrl_default { 32 + pinctrl-single,pins = < 33 + AM4372_IOPAD(0x9b0, PIN_OUTPUT_PULLUP | MUX_MODE2) /* cam0 hd -> DSS DATA 23 */ 34 + AM4372_IOPAD(0x9b4, PIN_OUTPUT_PULLUP | MUX_MODE2) 35 + AM4372_IOPAD(0x9b8, PIN_OUTPUT_PULLUP | MUX_MODE2) 36 + AM4372_IOPAD(0x9bc, PIN_OUTPUT_PULLUP | MUX_MODE2) 37 + AM4372_IOPAD(0x9c0, PIN_OUTPUT_PULLUP | MUX_MODE2) 38 + AM4372_IOPAD(0x9c4, PIN_OUTPUT_PULLUP | MUX_MODE2) 39 + AM4372_IOPAD(0x9c8, PIN_OUTPUT_PULLUP | MUX_MODE2) 40 + AM4372_IOPAD(0x9cc, PIN_OUTPUT_PULLUP | MUX_MODE2) /* cam1 data 9 -> DSS DATA 16 */ 41 + 42 + AM4372_IOPAD(0x8a0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 0 */ 43 + AM4372_IOPAD(0x8a4, PIN_OUTPUT_PULLUP | MUX_MODE0) 44 + AM4372_IOPAD(0x8a8, PIN_OUTPUT_PULLUP | MUX_MODE0) 45 + AM4372_IOPAD(0x8ac, PIN_OUTPUT_PULLUP | MUX_MODE0) 46 + AM4372_IOPAD(0x8b0, PIN_OUTPUT_PULLUP | MUX_MODE0) 47 + AM4372_IOPAD(0x8b4, PIN_OUTPUT_PULLUP | MUX_MODE0) 48 + AM4372_IOPAD(0x8b8, PIN_OUTPUT_PULLUP | MUX_MODE0) 49 + AM4372_IOPAD(0x8bc, PIN_OUTPUT_PULLUP | MUX_MODE0) 50 + AM4372_IOPAD(0x8c0, PIN_OUTPUT_PULLUP | MUX_MODE0) 51 + AM4372_IOPAD(0x8c4, PIN_OUTPUT_PULLUP | MUX_MODE0) 52 + AM4372_IOPAD(0x8c8, PIN_OUTPUT_PULLUP | MUX_MODE0) 53 + AM4372_IOPAD(0x8cc, PIN_OUTPUT_PULLUP | MUX_MODE0) 54 + AM4372_IOPAD(0x8d0, PIN_OUTPUT_PULLUP | MUX_MODE0) 55 + AM4372_IOPAD(0x8d4, PIN_OUTPUT_PULLUP | MUX_MODE0) 56 + AM4372_IOPAD(0x8d8, PIN_OUTPUT_PULLUP | MUX_MODE0) 57 + AM4372_IOPAD(0x8dc, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 15 */ 58 + AM4372_IOPAD(0x8e0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS VSYNC */ 59 + AM4372_IOPAD(0x8e4, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS HSYNC */ 60 + AM4372_IOPAD(0x8e8, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS PCLK */ 61 + AM4372_IOPAD(0x8ec, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS AC BIAS EN */ 62 + AM4372_IOPAD(0xa20, PIN_OUTPUT_PULLUP | MUX_MODE7) 32 63 >; 33 64 }; 34 65 ··· 138 99 wp-gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>; 139 100 }; 140 101 102 + &dss { 103 + status = "ok"; 104 + 105 + pinctrl-names = "default"; 106 + pinctrl-0 = <&dss_pinctrl_default>; 107 + 108 + port { 109 + dpi_lcd_out: endpoint@0 { 110 + remote-endpoint = <&lcd_in>; 111 + data-lines = <24>; 112 + }; 113 + }; 114 + }; 115 + 141 116 &uart0 { 142 117 pinctrl-names = "default"; 143 118 pinctrl-0 = <&uart0_pins_default>; ··· 165 112 &dwc3_2 { 166 113 pinctrl-names = "default"; 167 114 pinctrl-0 = <&usb2_phy2_default>; 115 + }; 116 + 117 + &lcd0 { 118 + enable-gpios = <&pca9555 14 GPIO_ACTIVE_HIGH 119 + &gpio4 28 GPIO_ACTIVE_HIGH>; 120 + 121 + port { 122 + lcd_in: endpoint { 123 + remote-endpoint = <&dpi_lcd_out>; 124 + data-lines = <24>; 125 + }; 126 + }; 168 127 };