Skip to content

Commit 603986a

Browse files
committed
Merge tag 'keystone_dts_for_5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into arm/dt
ARM: Keystone DTS updates for 5.7 Add display support for K2G EVM Board * tag 'keystone_dts_for_5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone: ARM: dts: keystone-k2g-evm: add HDMI video support ARM: dts: keystone-k2g: Add DSS node Signed-off-by: Arnd Bergmann <[email protected]>
2 parents 36e2913 + 7856488 commit 603986a

File tree

2 files changed

+123
-0
lines changed

2 files changed

+123
-0
lines changed

arch/arm/boot/dts/keystone-k2g-evm.dts

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,19 @@
4545
regulator-max-microvolt = <1800000>;
4646
regulator-always-on;
4747
};
48+
49+
hdmi: connector {
50+
compatible = "hdmi-connector";
51+
label = "hdmi";
52+
53+
type = "a";
54+
55+
port {
56+
hdmi_connector_in: endpoint {
57+
remote-endpoint = <&sii9022_out>;
58+
};
59+
};
60+
};
4861
};
4962

5063
&k2g_pinctrl {
@@ -89,6 +102,13 @@
89102
>;
90103
};
91104

105+
i2c1_pins: pinmux_i2c1_pins {
106+
pinctrl-single,pins = <
107+
K2G_CORE_IOPAD(0x1384) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* i2c1_scl.i2c1_scl */
108+
K2G_CORE_IOPAD(0x1388) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* i2c1_sda.i2c1_sda */
109+
>;
110+
};
111+
92112
ecap0_pins: ecap0_pins {
93113
pinctrl-single,pins = <
94114
K2G_CORE_IOPAD(0x1374) (BUFFER_CLASS_B | MUX_MODE4) /* pr1_mdio_data.ecap0_in_apwm0_out */
@@ -160,6 +180,40 @@
160180
K2G_CORE_IOPAD(0x1188) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* MDIO_DATA.MDIO_DATA */
161181
>;
162182
};
183+
184+
vout_pins: pinmux_vout_pins {
185+
pinctrl-single,pins = <
186+
K2G_CORE_IOPAD(0x1078) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata23.dssdata23 */
187+
K2G_CORE_IOPAD(0x107c) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata22.dssdata22 */
188+
K2G_CORE_IOPAD(0x1080) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata21.dssdata21 */
189+
K2G_CORE_IOPAD(0x1084) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata20.dssdata20 */
190+
K2G_CORE_IOPAD(0x1088) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata19.dssdata19 */
191+
K2G_CORE_IOPAD(0x108c) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata18.dssdata18 */
192+
K2G_CORE_IOPAD(0x1090) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata17.dssdata17 */
193+
K2G_CORE_IOPAD(0x1094) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata16.dssdata16 */
194+
K2G_CORE_IOPAD(0x1098) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata15.dssdata15 */
195+
K2G_CORE_IOPAD(0x109c) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata14.dssdata14 */
196+
K2G_CORE_IOPAD(0x10a0) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata13.dssdata13 */
197+
K2G_CORE_IOPAD(0x10a4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata12.dssdata12 */
198+
K2G_CORE_IOPAD(0x10a8) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata11.dssdata11 */
199+
K2G_CORE_IOPAD(0x10ac) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata10.dssdata10 */
200+
K2G_CORE_IOPAD(0x10b0) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata9.dssdata9 */
201+
K2G_CORE_IOPAD(0x10b4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata8.dssdata8 */
202+
K2G_CORE_IOPAD(0x10b8) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata7.dssdata7 */
203+
K2G_CORE_IOPAD(0x10bc) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata6.dssdata6 */
204+
K2G_CORE_IOPAD(0x10c0) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata5.dssdata5 */
205+
K2G_CORE_IOPAD(0x10c4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata4.dssdata4 */
206+
K2G_CORE_IOPAD(0x10c8) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata3.dssdata3 */
207+
K2G_CORE_IOPAD(0x10cc) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata2.dssdata2 */
208+
K2G_CORE_IOPAD(0x10d0) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata1.dssdata1 */
209+
K2G_CORE_IOPAD(0x10d4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssdata0.dssdata0 */
210+
K2G_CORE_IOPAD(0x10d8) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssvsync.dssvsync */
211+
K2G_CORE_IOPAD(0x10dc) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dsshsync.dsshsync */
212+
K2G_CORE_IOPAD(0x10e0) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dsspclk.dsspclk */
213+
K2G_CORE_IOPAD(0x10e4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssde.dssde */
214+
K2G_CORE_IOPAD(0x10e8) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* dssfid.dssfid */
215+
>;
216+
};
163217
};
164218

165219
&uart0 {
@@ -357,3 +411,50 @@
357411
pinctrl-0 = <&emac_pins>;
358412
status = "okay";
359413
};
414+
415+
&i2c1 {
416+
pinctrl-names = "default";
417+
pinctrl-0 = <&i2c1_pins>;
418+
status = "okay";
419+
clock-frequency = <400000>;
420+
421+
sii9022: sii9022@3b {
422+
#sound-dai-cells = <0>;
423+
compatible = "sil,sii9022";
424+
reg = <0x3b>;
425+
426+
ports {
427+
#address-cells = <1>;
428+
#size-cells = <0>;
429+
430+
port@0 {
431+
reg = <0>;
432+
433+
sii9022_in: endpoint {
434+
remote-endpoint = <&dpi_out>;
435+
};
436+
};
437+
438+
port@1 {
439+
reg = <1>;
440+
441+
sii9022_out: endpoint {
442+
remote-endpoint = <&hdmi_connector_in>;
443+
};
444+
};
445+
};
446+
};
447+
};
448+
449+
&dss {
450+
pinctrl-names = "default";
451+
pinctrl-0 = <&vout_pins>;
452+
status = "ok";
453+
454+
port {
455+
dpi_out: endpoint {
456+
remote-endpoint = <&sii9022_in>;
457+
data-lines = <24>;
458+
};
459+
};
460+
};

arch/arm/boot/dts/keystone-k2g.dtsi

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,28 @@
324324
clock-names = "gpio";
325325
};
326326

327+
dss: dss@02540000 {
328+
compatible = "ti,k2g-dss";
329+
reg = <0x02540000 0x400>,
330+
<0x02550000 0x1000>,
331+
<0x02557000 0x1000>,
332+
<0x0255a800 0x100>,
333+
<0x0255ac00 0x100>;
334+
reg-names = "cfg", "common", "vid1", "ovr1", "vp1";
335+
clocks = <&k2g_clks 0x2 0>,
336+
<&k2g_clks 0x2 1>;
337+
clock-names = "fck", "vp1";
338+
interrupts = <GIC_SPI 247 IRQ_TYPE_EDGE_RISING>;
339+
340+
power-domains = <&k2g_pds 0x2>;
341+
status = "disabled";
342+
#address-cells = <1>;
343+
#size-cells = <1>;
344+
ranges;
345+
346+
max-memory-bandwidth = <230000000>;
347+
};
348+
327349
edma0: edma@2700000 {
328350
compatible = "ti,k2g-edma3-tpcc", "ti,edma3-tpcc";
329351
reg = <0x02700000 0x8000>;

0 commit comments

Comments
 (0)