diff options
author | Tomi Valkeinen | 2020-04-07 08:06:04 -0500 |
---|---|---|
committer | Tomi Valkeinen | 2020-05-18 02:57:09 -0500 |
commit | f3b413ab4fe39bf71200a2768614ae69c927da37 (patch) | |
tree | 03c3cff207fad12b1f4a68593d7e9f2dd0e91ffe | |
parent | 3476679476ab381d4ed798c16ccb4a0764afca18 (diff) | |
download | ti-upstream-tools-f3b413ab4fe39bf71200a2768614ae69c927da37.tar.gz ti-upstream-tools-f3b413ab4fe39bf71200a2768614ae69c927da37.tar.xz ti-upstream-tools-f3b413ab4fe39bf71200a2768614ae69c927da37.zip |
Add AM654x EVM DT overlays for displays
Add three DT overlays for different AM654x EVM display setups:
- k3-am654-evm-hdmi.dtso for TFP410 based DVI add-on card
- k3-am654-evm-oldi-lcd1evm.dtso for the AM6 EVM LCD kit
- k3-am654-evm-tc358876.dtso for the TC358876 based DisplayPort add-on
card
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
-rw-r--r-- | Makefile | 6 | ||||
-rw-r--r-- | arch/arm64/boot/dts/ti/k3-am654-evm-hdmi.dtso | 128 | ||||
-rw-r--r-- | arch/arm64/boot/dts/ti/k3-am654-evm-oldi-lcd1evm.dtso | 74 | ||||
-rw-r--r-- | arch/arm64/boot/dts/ti/k3-am654-evm-tc358876.dtso | 114 |
4 files changed, 321 insertions, 1 deletions
@@ -103,7 +103,11 @@ dtb-tests-arm += \ | |||
103 | am57xx-beagle-x15.dtb,ti/am57xx-evm-common.dtbo,ti/am57xx-evm.dtbo \ | 103 | am57xx-beagle-x15.dtb,ti/am57xx-evm-common.dtbo,ti/am57xx-evm.dtbo \ |
104 | am57xx-beagle-x15-revc.dtb,ti/am57xx-evm-common.dtbo,ti/am57xx-evm-reva3.dtbo | 104 | am57xx-beagle-x15-revc.dtb,ti/am57xx-evm-common.dtbo,ti/am57xx-evm-reva3.dtbo |
105 | 105 | ||
106 | dtb-tests-arm64 := ti/k3-am654-base-board.dtb,ti/k3-am654-gp.dtbo | 106 | dtb-tests-arm64 := \ |
107 | ti/k3-am654-base-board.dtb,ti/k3-am654-gp.dtbo \ | ||
108 | ti/k3-am654-base-board.dtb,ti/k3-am654-evm-hdmi.dtbo \ | ||
109 | ti/k3-am654-base-board.dtb,ti/k3-am654-evm-oldi-lcd1evm.dtbo \ | ||
110 | ti/k3-am654-base-board.dtb,ti/k3-am654-evm-tc358876.dtbo | ||
107 | 111 | ||
108 | comma := , | 112 | comma := , |
109 | 113 | ||
diff --git a/arch/arm64/boot/dts/ti/k3-am654-evm-hdmi.dtso b/arch/arm64/boot/dts/ti/k3-am654-evm-hdmi.dtso new file mode 100644 index 0000000..d76f2ed --- /dev/null +++ b/arch/arm64/boot/dts/ti/k3-am654-evm-hdmi.dtso | |||
@@ -0,0 +1,128 @@ | |||
1 | // SPDX-License-Identifier: GPL-2.0 | ||
2 | /** | ||
3 | * J6 PLUS HDMI DISPLAY ADAPTER for am654-evm (connected to J36) | ||
4 | * Note: the USB is not connected on am654-evm | ||
5 | * | ||
6 | * Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/ | ||
7 | */ | ||
8 | |||
9 | /dts-v1/; | ||
10 | /plugin/; | ||
11 | |||
12 | #include <dt-bindings/gpio/gpio.h> | ||
13 | #include <dt-bindings/interrupt-controller/irq.h> | ||
14 | #include <dt-bindings/pinctrl/k3.h> | ||
15 | |||
16 | / { | ||
17 | fragment@101 { | ||
18 | target-path = "/"; | ||
19 | |||
20 | __overlay__ { | ||
21 | dvi-connector { | ||
22 | compatible = "hdmi-connector"; | ||
23 | ddc-i2c-bus = <&main_i2c1>; | ||
24 | digital; | ||
25 | |||
26 | /* the gpio doesn't support interrupt */ | ||
27 | hpd-gpios = <&pca9555 11 GPIO_ACTIVE_HIGH>; | ||
28 | |||
29 | port { | ||
30 | dvi_connector_in: endpoint { | ||
31 | remote-endpoint = <&tfp410_out>; | ||
32 | }; | ||
33 | }; | ||
34 | }; | ||
35 | |||
36 | dvi-bridge { | ||
37 | #address-cells = <1>; | ||
38 | #size-cells = <0>; | ||
39 | compatible = "ti,tfp410"; | ||
40 | ti,deskew = <3>; | ||
41 | |||
42 | port@0 { | ||
43 | reg = <0>; | ||
44 | |||
45 | tfp410_in: endpoint { | ||
46 | remote-endpoint = <&dpi_out0>; | ||
47 | pclk-sample = <1>; | ||
48 | }; | ||
49 | }; | ||
50 | |||
51 | port@1 { | ||
52 | reg = <1>; | ||
53 | |||
54 | tfp410_out: endpoint { | ||
55 | remote-endpoint = <&dvi_connector_in>; | ||
56 | }; | ||
57 | }; | ||
58 | }; | ||
59 | }; | ||
60 | }; | ||
61 | }; | ||
62 | |||
63 | &main_pmx0 { | ||
64 | dss_vout1_pins_default: dss_vout1_pins_default { | ||
65 | pinctrl-single,pins = < | ||
66 | AM65X_IOPAD(0x0000, PIN_OUTPUT, 1) /* VOUT1_DATA0 */ | ||
67 | AM65X_IOPAD(0x0004, PIN_OUTPUT, 1) /* VOUT1_DATA1 */ | ||
68 | AM65X_IOPAD(0x0008, PIN_OUTPUT, 1) /* VOUT1_DATA2 */ | ||
69 | AM65X_IOPAD(0x000c, PIN_OUTPUT, 1) /* VOUT1_DATA3 */ | ||
70 | AM65X_IOPAD(0x0010, PIN_OUTPUT, 1) /* VOUT1_DATA4 */ | ||
71 | AM65X_IOPAD(0x0014, PIN_OUTPUT, 1) /* VOUT1_DATA5 */ | ||
72 | AM65X_IOPAD(0x0018, PIN_OUTPUT, 1) /* VOUT1_DATA6 */ | ||
73 | AM65X_IOPAD(0x001c, PIN_OUTPUT, 1) /* VOUT1_DATA7 */ | ||
74 | AM65X_IOPAD(0x0020, PIN_OUTPUT, 1) /* VOUT1_DATA8 */ | ||
75 | AM65X_IOPAD(0x0024, PIN_OUTPUT, 1) /* VOUT1_DATA9 */ | ||
76 | AM65X_IOPAD(0x0028, PIN_OUTPUT, 1) /* VOUT1_DATA10 */ | ||
77 | AM65X_IOPAD(0x002c, PIN_OUTPUT, 1) /* VOUT1_DATA11 */ | ||
78 | AM65X_IOPAD(0x0030, PIN_OUTPUT, 1) /* VOUT1_DATA12 */ | ||
79 | AM65X_IOPAD(0x0034, PIN_OUTPUT, 1) /* VOUT1_DATA13 */ | ||
80 | AM65X_IOPAD(0x0038, PIN_OUTPUT, 1) /* VOUT1_DATA14 */ | ||
81 | AM65X_IOPAD(0x003c, PIN_OUTPUT, 1) /* VOUT1_DATA15 */ | ||
82 | AM65X_IOPAD(0x0040, PIN_OUTPUT, 1) /* VOUT1_DATA16 */ | ||
83 | AM65X_IOPAD(0x0044, PIN_OUTPUT, 1) /* VOUT1_DATA17 */ | ||
84 | AM65X_IOPAD(0x0048, PIN_OUTPUT, 1) /* VOUT1_DATA18 */ | ||
85 | AM65X_IOPAD(0x004c, PIN_OUTPUT, 1) /* VOUT1_DATA19 */ | ||
86 | AM65X_IOPAD(0x0050, PIN_OUTPUT, 1) /* VOUT1_DATA20 */ | ||
87 | AM65X_IOPAD(0x0054, PIN_OUTPUT, 1) /* VOUT1_DATA21 */ | ||
88 | AM65X_IOPAD(0x0058, PIN_OUTPUT, 1) /* VOUT1_DATA22 */ | ||
89 | AM65X_IOPAD(0x005c, PIN_OUTPUT, 1) /* VOUT1_DATA23 */ | ||
90 | AM65X_IOPAD(0x0060, PIN_OUTPUT, 1) /* VOUT1_VSYNC */ | ||
91 | AM65X_IOPAD(0x0064, PIN_OUTPUT, 1) /* VOUT1_HSYNC */ | ||
92 | AM65X_IOPAD(0x0068, PIN_OUTPUT, 1) /* VOUT1_PCLK */ | ||
93 | AM65X_IOPAD(0x006c, PIN_OUTPUT, 1) /* VOUT1_DE */ | ||
94 | >; | ||
95 | }; | ||
96 | }; | ||
97 | |||
98 | &pca9555 { | ||
99 | p6 { | ||
100 | /* P06 - CON_LCD_PWR_DN */ | ||
101 | gpio-hog; | ||
102 | gpios = <6 GPIO_ACTIVE_HIGH>; | ||
103 | output-low; | ||
104 | line-name = "CON_LCD_PWR_DN"; | ||
105 | }; | ||
106 | }; | ||
107 | |||
108 | &dss { | ||
109 | status = "ok"; | ||
110 | |||
111 | pinctrl-names = "default"; | ||
112 | pinctrl-0 = <&dss_vout1_pins_default>; | ||
113 | |||
114 | assigned-clocks = <&k3_clks 67 2>; | ||
115 | assigned-clock-parents = <&k3_clks 67 5>; | ||
116 | }; | ||
117 | |||
118 | &dss_ports { | ||
119 | #address-cells = <1>; | ||
120 | #size-cells = <0>; | ||
121 | port@1 { | ||
122 | reg = <1>; | ||
123 | |||
124 | dpi_out0: endpoint { | ||
125 | remote-endpoint = <&tfp410_in>; | ||
126 | }; | ||
127 | }; | ||
128 | }; | ||
diff --git a/arch/arm64/boot/dts/ti/k3-am654-evm-oldi-lcd1evm.dtso b/arch/arm64/boot/dts/ti/k3-am654-evm-oldi-lcd1evm.dtso new file mode 100644 index 0000000..304fc66 --- /dev/null +++ b/arch/arm64/boot/dts/ti/k3-am654-evm-oldi-lcd1evm.dtso | |||
@@ -0,0 +1,74 @@ | |||
1 | // SPDX-License-Identifier: GPL-2.0 | ||
2 | /** | ||
3 | * OLDI-LCD1EVM Rocktech integrated panel and touch DT overlay for AM654-EVM. | ||
4 | * | ||
5 | * Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/ | ||
6 | */ | ||
7 | |||
8 | /dts-v1/; | ||
9 | /plugin/; | ||
10 | |||
11 | #include <dt-bindings/pwm/pwm.h> | ||
12 | #include <dt-bindings/gpio/gpio.h> | ||
13 | #include <dt-bindings/interrupt-controller/irq.h> | ||
14 | |||
15 | / { | ||
16 | fragment@101 { | ||
17 | target-path = "/"; | ||
18 | |||
19 | __overlay__ { | ||
20 | display0 { | ||
21 | compatible = "rocktech,rk101ii01d-ct"; | ||
22 | backlight = <&lcd_bl>; | ||
23 | enable-gpios = <&pca9555 8 GPIO_ACTIVE_HIGH>; | ||
24 | |||
25 | port { | ||
26 | lcd_in0: endpoint { | ||
27 | remote-endpoint = <&oldi_out0>; | ||
28 | }; | ||
29 | }; | ||
30 | }; | ||
31 | |||
32 | lcd_bl: backlight { | ||
33 | compatible = "pwm-backlight"; | ||
34 | pwms = <&ecap0 0 50000 PWM_POLARITY_INVERTED>; | ||
35 | brightness-levels = <0 32 64 96 128 160 192 224 255>; | ||
36 | default-brightness-level = <8>; | ||
37 | }; | ||
38 | }; | ||
39 | }; | ||
40 | }; | ||
41 | |||
42 | &dss { | ||
43 | status = "ok"; | ||
44 | }; | ||
45 | |||
46 | &dss_ports { | ||
47 | #address-cells = <1>; | ||
48 | #size-cells = <0>; | ||
49 | port@0 { | ||
50 | reg = <0>; | ||
51 | |||
52 | oldi_out0: endpoint { | ||
53 | remote-endpoint = <&lcd_in0>; | ||
54 | }; | ||
55 | }; | ||
56 | }; | ||
57 | |||
58 | &main_i2c1 { | ||
59 | #address-cells = <1>; | ||
60 | #size-cells = <0>; | ||
61 | gt928: touchscreen@14 { | ||
62 | status = "okay"; | ||
63 | compatible = "goodix,gt928"; | ||
64 | reg = <0x14>; | ||
65 | |||
66 | interrupt-parent = <&pca9554>; | ||
67 | interrupts = <3 IRQ_TYPE_EDGE_FALLING>; | ||
68 | touchscreen-size-x = <1280>; | ||
69 | touchscreen-size-y = <800>; | ||
70 | |||
71 | reset-gpios = <&pca9555 9 GPIO_ACTIVE_HIGH>; | ||
72 | irq-gpios = <&pca9554 3 GPIO_ACTIVE_HIGH>; | ||
73 | }; | ||
74 | }; | ||
diff --git a/arch/arm64/boot/dts/ti/k3-am654-evm-tc358876.dtso b/arch/arm64/boot/dts/ti/k3-am654-evm-tc358876.dtso new file mode 100644 index 0000000..cdf410e --- /dev/null +++ b/arch/arm64/boot/dts/ti/k3-am654-evm-tc358876.dtso | |||
@@ -0,0 +1,114 @@ | |||
1 | // SPDX-License-Identifier: GPL-2.0 | ||
2 | /** | ||
3 | * Toshiba TC358867 expansion board for AM654-EVM. | ||
4 | * | ||
5 | * Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/ | ||
6 | */ | ||
7 | |||
8 | /dts-v1/; | ||
9 | /plugin/; | ||
10 | |||
11 | #include <dt-bindings/gpio/gpio.h> | ||
12 | #include <dt-bindings/interrupt-controller/irq.h> | ||
13 | #include <dt-bindings/pinctrl/k3.h> | ||
14 | |||
15 | / { | ||
16 | fragment@101 { | ||
17 | target-path = "/"; | ||
18 | |||
19 | __overlay__ { | ||
20 | dp_refclk: fixed-clock-tc358767 { | ||
21 | compatible = "fixed-clock"; | ||
22 | #clock-cells = <0>; | ||
23 | clock-frequency = <19200000>; | ||
24 | }; | ||
25 | }; | ||
26 | }; | ||
27 | }; | ||
28 | |||
29 | &main_pmx0 { | ||
30 | dss_vout1_pins_default: dss_vout1_pins_default { | ||
31 | pinctrl-single,pins = < | ||
32 | AM65X_IOPAD(0x0000, PIN_OUTPUT, 1) /* VOUT1_DATA0 */ | ||
33 | AM65X_IOPAD(0x0004, PIN_OUTPUT, 1) /* VOUT1_DATA1 */ | ||
34 | AM65X_IOPAD(0x0008, PIN_OUTPUT, 1) /* VOUT1_DATA2 */ | ||
35 | AM65X_IOPAD(0x000c, PIN_OUTPUT, 1) /* VOUT1_DATA3 */ | ||
36 | AM65X_IOPAD(0x0010, PIN_OUTPUT, 1) /* VOUT1_DATA4 */ | ||
37 | AM65X_IOPAD(0x0014, PIN_OUTPUT, 1) /* VOUT1_DATA5 */ | ||
38 | AM65X_IOPAD(0x0018, PIN_OUTPUT, 1) /* VOUT1_DATA6 */ | ||
39 | AM65X_IOPAD(0x001c, PIN_OUTPUT, 1) /* VOUT1_DATA7 */ | ||
40 | AM65X_IOPAD(0x0020, PIN_OUTPUT, 1) /* VOUT1_DATA8 */ | ||
41 | AM65X_IOPAD(0x0024, PIN_OUTPUT, 1) /* VOUT1_DATA9 */ | ||
42 | AM65X_IOPAD(0x0028, PIN_OUTPUT, 1) /* VOUT1_DATA10 */ | ||
43 | AM65X_IOPAD(0x002c, PIN_OUTPUT, 1) /* VOUT1_DATA11 */ | ||
44 | AM65X_IOPAD(0x0030, PIN_OUTPUT, 1) /* VOUT1_DATA12 */ | ||
45 | AM65X_IOPAD(0x0034, PIN_OUTPUT, 1) /* VOUT1_DATA13 */ | ||
46 | AM65X_IOPAD(0x0038, PIN_OUTPUT, 1) /* VOUT1_DATA14 */ | ||
47 | AM65X_IOPAD(0x003c, PIN_OUTPUT, 1) /* VOUT1_DATA15 */ | ||
48 | AM65X_IOPAD(0x0040, PIN_OUTPUT, 1) /* VOUT1_DATA16 */ | ||
49 | AM65X_IOPAD(0x0044, PIN_OUTPUT, 1) /* VOUT1_DATA17 */ | ||
50 | AM65X_IOPAD(0x0048, PIN_OUTPUT, 1) /* VOUT1_DATA18 */ | ||
51 | AM65X_IOPAD(0x004c, PIN_OUTPUT, 1) /* VOUT1_DATA19 */ | ||
52 | AM65X_IOPAD(0x0050, PIN_OUTPUT, 1) /* VOUT1_DATA20 */ | ||
53 | AM65X_IOPAD(0x0054, PIN_OUTPUT, 1) /* VOUT1_DATA21 */ | ||
54 | AM65X_IOPAD(0x0058, PIN_OUTPUT, 1) /* VOUT1_DATA22 */ | ||
55 | AM65X_IOPAD(0x005c, PIN_OUTPUT, 1) /* VOUT1_DATA23 */ | ||
56 | AM65X_IOPAD(0x0060, PIN_OUTPUT, 1) /* VOUT1_VSYNC */ | ||
57 | AM65X_IOPAD(0x0064, PIN_OUTPUT, 1) /* VOUT1_HSYNC */ | ||
58 | AM65X_IOPAD(0x0068, PIN_OUTPUT, 1) /* VOUT1_PCLK */ | ||
59 | AM65X_IOPAD(0x006c, PIN_OUTPUT, 1) /* VOUT1_DE */ | ||
60 | >; | ||
61 | }; | ||
62 | }; | ||
63 | |||
64 | &main_i2c1 { | ||
65 | #address-cells = <1>; | ||
66 | #size-cells = <0>; | ||
67 | |||
68 | edp-bridge@f { | ||
69 | compatible = "toshiba,tc358867", "toshiba,tc358767"; | ||
70 | reg = <0x0f>; | ||
71 | |||
72 | reset-gpios = <&pca9555 6 GPIO_ACTIVE_HIGH>; | ||
73 | |||
74 | clock-names = "ref"; | ||
75 | clocks = <&dp_refclk>; | ||
76 | |||
77 | toshiba,hpd-pin = <0>; | ||
78 | |||
79 | ports { | ||
80 | #address-cells = <1>; | ||
81 | #size-cells = <0>; | ||
82 | |||
83 | port@1 { | ||
84 | reg = <1>; | ||
85 | |||
86 | bridge_in: endpoint { | ||
87 | remote-endpoint = <&dpi_out>; | ||
88 | }; | ||
89 | }; | ||
90 | }; | ||
91 | }; | ||
92 | }; | ||
93 | |||
94 | &dss { | ||
95 | status = "ok"; | ||
96 | |||
97 | pinctrl-names = "default"; | ||
98 | pinctrl-0 = <&dss_vout1_pins_default>; | ||
99 | |||
100 | assigned-clocks = <&k3_clks 67 2>; | ||
101 | assigned-clock-parents = <&k3_clks 67 5>; | ||
102 | }; | ||
103 | |||
104 | &dss_ports { | ||
105 | #address-cells = <1>; | ||
106 | #size-cells = <0>; | ||
107 | port@1 { | ||
108 | reg = <1>; | ||
109 | |||
110 | dpi_out: endpoint { | ||
111 | remote-endpoint = <&bridge_in>; | ||
112 | }; | ||
113 | }; | ||
114 | }; | ||