xref: /freebsd/sys/contrib/device-tree/src/arm/st/stih407.dtsi (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright (C) 2015 STMicroelectronics Limited.
4*f126890aSEmmanuel Vadot * Author: Gabriel Fernandez <gabriel.fernandez@linaro.org>
5*f126890aSEmmanuel Vadot */
6*f126890aSEmmanuel Vadot#include "stih407-clock.dtsi"
7*f126890aSEmmanuel Vadot#include "stih407-family.dtsi"
8*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
9*f126890aSEmmanuel Vadot/ {
10*f126890aSEmmanuel Vadot	soc {
11*f126890aSEmmanuel Vadot		sti-display-subsystem@0 {
12*f126890aSEmmanuel Vadot			compatible = "st,sti-display-subsystem";
13*f126890aSEmmanuel Vadot			#address-cells = <1>;
14*f126890aSEmmanuel Vadot			#size-cells = <1>;
15*f126890aSEmmanuel Vadot			reg = <0 0>;
16*f126890aSEmmanuel Vadot			assigned-clocks = <&clk_s_d2_quadfs 0>,
17*f126890aSEmmanuel Vadot					  <&clk_s_d2_quadfs 1>,
18*f126890aSEmmanuel Vadot					  <&clk_s_c0_pll1 0>,
19*f126890aSEmmanuel Vadot					  <&clk_s_c0_flexgen CLK_COMPO_DVP>,
20*f126890aSEmmanuel Vadot					  <&clk_s_c0_flexgen CLK_MAIN_DISP>,
21*f126890aSEmmanuel Vadot					  <&clk_s_d2_flexgen CLK_PIX_MAIN_DISP>,
22*f126890aSEmmanuel Vadot					  <&clk_s_d2_flexgen CLK_PIX_AUX_DISP>,
23*f126890aSEmmanuel Vadot					  <&clk_s_d2_flexgen CLK_PIX_GDP1>,
24*f126890aSEmmanuel Vadot					  <&clk_s_d2_flexgen CLK_PIX_GDP2>,
25*f126890aSEmmanuel Vadot					  <&clk_s_d2_flexgen CLK_PIX_GDP3>,
26*f126890aSEmmanuel Vadot					  <&clk_s_d2_flexgen CLK_PIX_GDP4>;
27*f126890aSEmmanuel Vadot
28*f126890aSEmmanuel Vadot			assigned-clock-parents = <0>,
29*f126890aSEmmanuel Vadot						 <0>,
30*f126890aSEmmanuel Vadot						 <0>,
31*f126890aSEmmanuel Vadot						 <&clk_s_c0_pll1 0>,
32*f126890aSEmmanuel Vadot						 <&clk_s_c0_pll1 0>,
33*f126890aSEmmanuel Vadot						 <&clk_s_d2_quadfs 0>,
34*f126890aSEmmanuel Vadot						 <&clk_s_d2_quadfs 1>,
35*f126890aSEmmanuel Vadot						 <&clk_s_d2_quadfs 0>,
36*f126890aSEmmanuel Vadot						 <&clk_s_d2_quadfs 0>,
37*f126890aSEmmanuel Vadot						 <&clk_s_d2_quadfs 0>,
38*f126890aSEmmanuel Vadot						 <&clk_s_d2_quadfs 0>;
39*f126890aSEmmanuel Vadot
40*f126890aSEmmanuel Vadot			assigned-clock-rates = <297000000>,
41*f126890aSEmmanuel Vadot					       <108000000>,
42*f126890aSEmmanuel Vadot					       <0>,
43*f126890aSEmmanuel Vadot					       <400000000>,
44*f126890aSEmmanuel Vadot					       <400000000>;
45*f126890aSEmmanuel Vadot
46*f126890aSEmmanuel Vadot			ranges;
47*f126890aSEmmanuel Vadot
48*f126890aSEmmanuel Vadot			sti-compositor@9d11000 {
49*f126890aSEmmanuel Vadot				compatible = "st,stih407-compositor";
50*f126890aSEmmanuel Vadot				reg = <0x9d11000 0x1000>;
51*f126890aSEmmanuel Vadot
52*f126890aSEmmanuel Vadot				clock-names = "compo_main",
53*f126890aSEmmanuel Vadot					      "compo_aux",
54*f126890aSEmmanuel Vadot					      "pix_main",
55*f126890aSEmmanuel Vadot					      "pix_aux",
56*f126890aSEmmanuel Vadot					      "pix_gdp1",
57*f126890aSEmmanuel Vadot					      "pix_gdp2",
58*f126890aSEmmanuel Vadot					      "pix_gdp3",
59*f126890aSEmmanuel Vadot					      "pix_gdp4",
60*f126890aSEmmanuel Vadot					      "main_parent",
61*f126890aSEmmanuel Vadot					      "aux_parent";
62*f126890aSEmmanuel Vadot
63*f126890aSEmmanuel Vadot				clocks = <&clk_s_c0_flexgen CLK_COMPO_DVP>,
64*f126890aSEmmanuel Vadot					 <&clk_s_c0_flexgen CLK_COMPO_DVP>,
65*f126890aSEmmanuel Vadot					 <&clk_s_d2_flexgen CLK_PIX_MAIN_DISP>,
66*f126890aSEmmanuel Vadot					 <&clk_s_d2_flexgen CLK_PIX_AUX_DISP>,
67*f126890aSEmmanuel Vadot					 <&clk_s_d2_flexgen CLK_PIX_GDP1>,
68*f126890aSEmmanuel Vadot					 <&clk_s_d2_flexgen CLK_PIX_GDP2>,
69*f126890aSEmmanuel Vadot					 <&clk_s_d2_flexgen CLK_PIX_GDP3>,
70*f126890aSEmmanuel Vadot					 <&clk_s_d2_flexgen CLK_PIX_GDP4>,
71*f126890aSEmmanuel Vadot					 <&clk_s_d2_quadfs 0>,
72*f126890aSEmmanuel Vadot					 <&clk_s_d2_quadfs 1>;
73*f126890aSEmmanuel Vadot
74*f126890aSEmmanuel Vadot				reset-names = "compo-main", "compo-aux";
75*f126890aSEmmanuel Vadot				resets = <&softreset STIH407_COMPO_SOFTRESET>,
76*f126890aSEmmanuel Vadot					 <&softreset STIH407_COMPO_SOFTRESET>;
77*f126890aSEmmanuel Vadot				st,vtg = <&vtg_main>, <&vtg_aux>;
78*f126890aSEmmanuel Vadot			};
79*f126890aSEmmanuel Vadot
80*f126890aSEmmanuel Vadot			sti-tvout@8d08000 {
81*f126890aSEmmanuel Vadot				compatible = "st,stih407-tvout";
82*f126890aSEmmanuel Vadot				reg = <0x8d08000 0x1000>;
83*f126890aSEmmanuel Vadot				reg-names = "tvout-reg";
84*f126890aSEmmanuel Vadot				reset-names = "tvout";
85*f126890aSEmmanuel Vadot				resets = <&softreset STIH407_HDTVOUT_SOFTRESET>;
86*f126890aSEmmanuel Vadot				#address-cells = <1>;
87*f126890aSEmmanuel Vadot				#size-cells = <1>;
88*f126890aSEmmanuel Vadot				assigned-clocks = <&clk_s_d2_flexgen CLK_PIX_HDMI>,
89*f126890aSEmmanuel Vadot						  <&clk_s_d2_flexgen CLK_TMDS_HDMI>,
90*f126890aSEmmanuel Vadot						  <&clk_s_d2_flexgen CLK_REF_HDMIPHY>,
91*f126890aSEmmanuel Vadot						  <&clk_s_d0_flexgen CLK_PCM_0>,
92*f126890aSEmmanuel Vadot						  <&clk_s_d2_flexgen CLK_PIX_HDDAC>,
93*f126890aSEmmanuel Vadot						  <&clk_s_d2_flexgen CLK_HDDAC>;
94*f126890aSEmmanuel Vadot
95*f126890aSEmmanuel Vadot				assigned-clock-parents = <&clk_s_d2_quadfs 0>,
96*f126890aSEmmanuel Vadot							 <&clk_tmdsout_hdmi>,
97*f126890aSEmmanuel Vadot							 <&clk_s_d2_quadfs 0>,
98*f126890aSEmmanuel Vadot							 <&clk_s_d0_quadfs 0>,
99*f126890aSEmmanuel Vadot							 <&clk_s_d2_quadfs 0>,
100*f126890aSEmmanuel Vadot							 <&clk_s_d2_quadfs 0>;
101*f126890aSEmmanuel Vadot			};
102*f126890aSEmmanuel Vadot
103*f126890aSEmmanuel Vadot			sti_hdmi: sti-hdmi@8d04000 {
104*f126890aSEmmanuel Vadot				compatible = "st,stih407-hdmi";
105*f126890aSEmmanuel Vadot				reg = <0x8d04000 0x1000>;
106*f126890aSEmmanuel Vadot				reg-names = "hdmi-reg";
107*f126890aSEmmanuel Vadot				#sound-dai-cells = <0>;
108*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
109*f126890aSEmmanuel Vadot				interrupt-names = "irq";
110*f126890aSEmmanuel Vadot				clock-names = "pix",
111*f126890aSEmmanuel Vadot					      "tmds",
112*f126890aSEmmanuel Vadot					      "phy",
113*f126890aSEmmanuel Vadot					      "audio",
114*f126890aSEmmanuel Vadot					      "main_parent",
115*f126890aSEmmanuel Vadot					      "aux_parent";
116*f126890aSEmmanuel Vadot
117*f126890aSEmmanuel Vadot				clocks = <&clk_s_d2_flexgen CLK_PIX_HDMI>,
118*f126890aSEmmanuel Vadot					 <&clk_s_d2_flexgen CLK_TMDS_HDMI>,
119*f126890aSEmmanuel Vadot					 <&clk_s_d2_flexgen CLK_REF_HDMIPHY>,
120*f126890aSEmmanuel Vadot					 <&clk_s_d0_flexgen CLK_PCM_0>,
121*f126890aSEmmanuel Vadot					 <&clk_s_d2_quadfs 0>,
122*f126890aSEmmanuel Vadot					 <&clk_s_d2_quadfs 1>;
123*f126890aSEmmanuel Vadot
124*f126890aSEmmanuel Vadot				hdmi,hpd-gpio = <&pio5 3 GPIO_ACTIVE_LOW>;
125*f126890aSEmmanuel Vadot				reset-names = "hdmi";
126*f126890aSEmmanuel Vadot				resets = <&softreset STIH407_HDMI_TX_PHY_SOFTRESET>;
127*f126890aSEmmanuel Vadot				ddc = <&hdmiddc>;
128*f126890aSEmmanuel Vadot			};
129*f126890aSEmmanuel Vadot
130*f126890aSEmmanuel Vadot			sti-hda@8d02000 {
131*f126890aSEmmanuel Vadot				compatible = "st,stih407-hda";
132*f126890aSEmmanuel Vadot				reg = <0x8d02000 0x400>, <0x92b0120 0x4>;
133*f126890aSEmmanuel Vadot				reg-names = "hda-reg", "video-dacs-ctrl";
134*f126890aSEmmanuel Vadot				clock-names = "pix",
135*f126890aSEmmanuel Vadot					      "hddac",
136*f126890aSEmmanuel Vadot					      "main_parent",
137*f126890aSEmmanuel Vadot					      "aux_parent";
138*f126890aSEmmanuel Vadot				clocks = <&clk_s_d2_flexgen CLK_PIX_HDDAC>,
139*f126890aSEmmanuel Vadot					 <&clk_s_d2_flexgen CLK_HDDAC>,
140*f126890aSEmmanuel Vadot					 <&clk_s_d2_quadfs 0>,
141*f126890aSEmmanuel Vadot					 <&clk_s_d2_quadfs 1>;
142*f126890aSEmmanuel Vadot			};
143*f126890aSEmmanuel Vadot		};
144*f126890aSEmmanuel Vadot	};
145*f126890aSEmmanuel Vadot};
146