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