xref: /optee_os/core/arch/arm/dts/stm32mp257f-dk-ca35tdcid-rcc.dtsi (revision 2107d012b88d4edf2d93d7ded27a0416b9759c74)
1*2107d012SThomas Bourgoin// SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
2*2107d012SThomas Bourgoin/*
3*2107d012SThomas Bourgoin * Copyright (C) 2025, STMicroelectronics
4*2107d012SThomas Bourgoin */
5*2107d012SThomas Bourgoin
6*2107d012SThomas Bourgoin&clk_hse {
7*2107d012SThomas Bourgoin	clock-frequency = <40000000>;
8*2107d012SThomas Bourgoin};
9*2107d012SThomas Bourgoin
10*2107d012SThomas Bourgoin&clk_hsi {
11*2107d012SThomas Bourgoin	clock-frequency = <64000000>;
12*2107d012SThomas Bourgoin};
13*2107d012SThomas Bourgoin
14*2107d012SThomas Bourgoin&clk_lse {
15*2107d012SThomas Bourgoin	clock-frequency = <32768>;
16*2107d012SThomas Bourgoin};
17*2107d012SThomas Bourgoin
18*2107d012SThomas Bourgoin&clk_lsi {
19*2107d012SThomas Bourgoin	clock-frequency = <32000>;
20*2107d012SThomas Bourgoin};
21*2107d012SThomas Bourgoin
22*2107d012SThomas Bourgoin&clk_msi {
23*2107d012SThomas Bourgoin	clock-frequency = <16000000>;
24*2107d012SThomas Bourgoin};
25*2107d012SThomas Bourgoin
26*2107d012SThomas Bourgoin&rcc {
27*2107d012SThomas Bourgoin	st,busclk = <
28*2107d012SThomas Bourgoin		DIV_CFG(DIV_LSMCU, 1)
29*2107d012SThomas Bourgoin		DIV_CFG(DIV_APB1, 0)
30*2107d012SThomas Bourgoin		DIV_CFG(DIV_APB2, 0)
31*2107d012SThomas Bourgoin		DIV_CFG(DIV_APB3, 0)
32*2107d012SThomas Bourgoin		DIV_CFG(DIV_APB4, 0)
33*2107d012SThomas Bourgoin		DIV_CFG(DIV_APBDBG, 0)
34*2107d012SThomas Bourgoin	>;
35*2107d012SThomas Bourgoin
36*2107d012SThomas Bourgoin	st,flexgen = <
37*2107d012SThomas Bourgoin		FLEXGEN_CFG(0, XBAR_SRC_PLL4, 0, 2)
38*2107d012SThomas Bourgoin		FLEXGEN_CFG(1, XBAR_SRC_PLL4, 0, 5)
39*2107d012SThomas Bourgoin		FLEXGEN_CFG(2, XBAR_SRC_PLL4, 0, 1)
40*2107d012SThomas Bourgoin		FLEXGEN_CFG(3, XBAR_SRC_PLL4, 0, 2)
41*2107d012SThomas Bourgoin		FLEXGEN_CFG(4, XBAR_SRC_PLL4, 0, 3)
42*2107d012SThomas Bourgoin		FLEXGEN_CFG(5, XBAR_SRC_PLL4, 0, 2)
43*2107d012SThomas Bourgoin		FLEXGEN_CFG(6, XBAR_SRC_PLL4, 0, 1)
44*2107d012SThomas Bourgoin		FLEXGEN_CFG(7, XBAR_SRC_PLL4, 0, 11)
45*2107d012SThomas Bourgoin		FLEXGEN_CFG(8, XBAR_SRC_HSI_KER, 0, 0)
46*2107d012SThomas Bourgoin		FLEXGEN_CFG(9, XBAR_SRC_HSI_KER, 0, 0)
47*2107d012SThomas Bourgoin		FLEXGEN_CFG(10, XBAR_SRC_PLL7, 0, 16)
48*2107d012SThomas Bourgoin		FLEXGEN_CFG(11, XBAR_SRC_PLL4, 0, 5)
49*2107d012SThomas Bourgoin		FLEXGEN_CFG(12, XBAR_SRC_PLL4, 0, 11)
50*2107d012SThomas Bourgoin		FLEXGEN_CFG(13, XBAR_SRC_PLL4, 0, 11)
51*2107d012SThomas Bourgoin		FLEXGEN_CFG(14, XBAR_SRC_PLL4, 0, 11)
52*2107d012SThomas Bourgoin		FLEXGEN_CFG(15, XBAR_SRC_PLL4, 0, 11)
53*2107d012SThomas Bourgoin		FLEXGEN_CFG(16, XBAR_SRC_PLL4, 0, 23)
54*2107d012SThomas Bourgoin		FLEXGEN_CFG(17, XBAR_SRC_PLL5, 0, 3)
55*2107d012SThomas Bourgoin		FLEXGEN_CFG(18, XBAR_SRC_PLL5, 0, 3)
56*2107d012SThomas Bourgoin		FLEXGEN_CFG(19, XBAR_SRC_HSI_KER, 0, 0)
57*2107d012SThomas Bourgoin		FLEXGEN_CFG(20, XBAR_SRC_HSI_KER, 0, 0)
58*2107d012SThomas Bourgoin		FLEXGEN_CFG(21, XBAR_SRC_HSI_KER, 0, 0)
59*2107d012SThomas Bourgoin		FLEXGEN_CFG(22, XBAR_SRC_HSI_KER, 0, 0)
60*2107d012SThomas Bourgoin		FLEXGEN_CFG(23, XBAR_SRC_PLL7, 0, 16)
61*2107d012SThomas Bourgoin		FLEXGEN_CFG(24, XBAR_SRC_PLL7, 0, 16)
62*2107d012SThomas Bourgoin		FLEXGEN_CFG(25, XBAR_SRC_PLL7, 0, 16)
63*2107d012SThomas Bourgoin		FLEXGEN_CFG(26, XBAR_SRC_PLL4, 0, 11)
64*2107d012SThomas Bourgoin		FLEXGEN_CFG(27, XBAR_SRC_PLL8, 0, 3)
65*2107d012SThomas Bourgoin		FLEXGEN_CFG(28, XBAR_SRC_PLL8, 0, 21)
66*2107d012SThomas Bourgoin		FLEXGEN_CFG(29, XBAR_SRC_PLL5, 0, 1)
67*2107d012SThomas Bourgoin		FLEXGEN_CFG(30, XBAR_SRC_HSE_KER, 0, 1)
68*2107d012SThomas Bourgoin		FLEXGEN_CFG(31, XBAR_SRC_PLL5, 0, 19)
69*2107d012SThomas Bourgoin		FLEXGEN_CFG(32, XBAR_SRC_PLL5, 0, 19)
70*2107d012SThomas Bourgoin		FLEXGEN_CFG(33, XBAR_SRC_HSE_KER, 0, 0)
71*2107d012SThomas Bourgoin		FLEXGEN_CFG(34, XBAR_SRC_PLL4, 0, 59)
72*2107d012SThomas Bourgoin		FLEXGEN_CFG(35, XBAR_SRC_HSI_KER, 0, 3)
73*2107d012SThomas Bourgoin		FLEXGEN_CFG(36, XBAR_SRC_PLL5, 0, 3)
74*2107d012SThomas Bourgoin		FLEXGEN_CFG(37, XBAR_SRC_PLL5, 0, 3)
75*2107d012SThomas Bourgoin		FLEXGEN_CFG(38, XBAR_SRC_PLL5, 0, 3)
76*2107d012SThomas Bourgoin		FLEXGEN_CFG(39, XBAR_SRC_MSI_KER, 0, 0)
77*2107d012SThomas Bourgoin		FLEXGEN_CFG(40, XBAR_SRC_LSE, 0, 0)
78*2107d012SThomas Bourgoin		FLEXGEN_CFG(41, XBAR_SRC_LSI, 0, 0)
79*2107d012SThomas Bourgoin		FLEXGEN_CFG(42, XBAR_SRC_PLL7, 0, 16)
80*2107d012SThomas Bourgoin		FLEXGEN_CFG(43, XBAR_SRC_PLL4, 0, 23)
81*2107d012SThomas Bourgoin		FLEXGEN_CFG(44, XBAR_SRC_PLL4, 0, 5)
82*2107d012SThomas Bourgoin		FLEXGEN_CFG(45, XBAR_SRC_PLL4, 0, 2)
83*2107d012SThomas Bourgoin		FLEXGEN_CFG(46, XBAR_SRC_PLL5, 0, 3)
84*2107d012SThomas Bourgoin		FLEXGEN_CFG(47, XBAR_SRC_PLL5, 0, 3)
85*2107d012SThomas Bourgoin		FLEXGEN_CFG(48, XBAR_SRC_PLL5, 0, 3)
86*2107d012SThomas Bourgoin		FLEXGEN_CFG(49, XBAR_SRC_PLL5, 0, 3)
87*2107d012SThomas Bourgoin		FLEXGEN_CFG(51, XBAR_SRC_PLL4, 0, 5)
88*2107d012SThomas Bourgoin		FLEXGEN_CFG(52, XBAR_SRC_PLL4, 0, 5)
89*2107d012SThomas Bourgoin		FLEXGEN_CFG(53, XBAR_SRC_PLL4, 0, 5)
90*2107d012SThomas Bourgoin		FLEXGEN_CFG(54, XBAR_SRC_PLL6, 0, 3)
91*2107d012SThomas Bourgoin		FLEXGEN_CFG(55, XBAR_SRC_PLL6, 0, 3)
92*2107d012SThomas Bourgoin		FLEXGEN_CFG(56, XBAR_SRC_PLL4, 0, 5)
93*2107d012SThomas Bourgoin		FLEXGEN_CFG(57, XBAR_SRC_HSE_KER, 0, 1)
94*2107d012SThomas Bourgoin		FLEXGEN_CFG(58, XBAR_SRC_HSE_KER, 0, 1)
95*2107d012SThomas Bourgoin		FLEXGEN_CFG(59, XBAR_SRC_PLL4, 0, 1)
96*2107d012SThomas Bourgoin		FLEXGEN_CFG(60, XBAR_SRC_PLL4, 0, 23)
97*2107d012SThomas Bourgoin		FLEXGEN_CFG(61, XBAR_SRC_PLL4, 0, 7)
98*2107d012SThomas Bourgoin		FLEXGEN_CFG(62, XBAR_SRC_PLL4, 0, 7)
99*2107d012SThomas Bourgoin		FLEXGEN_CFG(63, XBAR_SRC_PLL4, 0, 2)
100*2107d012SThomas Bourgoin	>;
101*2107d012SThomas Bourgoin
102*2107d012SThomas Bourgoin	st,kerclk = <
103*2107d012SThomas Bourgoin		MUX_CFG(MUX_ADC12, MUX_ADC12_FLEX46)
104*2107d012SThomas Bourgoin		MUX_CFG(MUX_USB2PHY1, MUX_USB2PHY1_FLEX57)
105*2107d012SThomas Bourgoin		MUX_CFG(MUX_USB2PHY2, MUX_USB2PHY2_FLEX58)
106*2107d012SThomas Bourgoin		MUX_CFG(MUX_USB3PCIEPHY, MUX_USB3PCIEPHY_HSE)
107*2107d012SThomas Bourgoin		MUX_CFG(MUX_DSIPHY, MUX_DSIPHY_FLEX28)
108*2107d012SThomas Bourgoin		MUX_CFG(MUX_DSIBLANE, MUX_DSIBLANE_DSIPHY)
109*2107d012SThomas Bourgoin		MUX_CFG(MUX_LVDSPHY, MUX_LVDSPHY_FLEX32)
110*2107d012SThomas Bourgoin		MUX_CFG(MUX_DTS, MUX_DTS_HSE)
111*2107d012SThomas Bourgoin		MUX_CFG(MUX_RTC, MUX_RTC_LSE)
112*2107d012SThomas Bourgoin		MUX_CFG(MUX_D3PER, MUX_D3PER_MSI)
113*2107d012SThomas Bourgoin		MCO_CFG(MCO1, MUX_MCO1_FLEX61, MCO_OFF)
114*2107d012SThomas Bourgoin		MCO_CFG(MCO2, MUX_MCO2_FLEX62, MCO_OFF)
115*2107d012SThomas Bourgoin	>;
116*2107d012SThomas Bourgoin
117*2107d012SThomas Bourgoin	pll1: st,pll-1 {
118*2107d012SThomas Bourgoin		st,pll = <&pll1_cfg_1200Mhz>;
119*2107d012SThomas Bourgoin
120*2107d012SThomas Bourgoin		pll1_cfg_1200Mhz: pll1-cfg-1200Mhz {
121*2107d012SThomas Bourgoin			cfg = <30 1 1 1>;
122*2107d012SThomas Bourgoin			src = <MUX_CFG(MUX_MUXSEL5, MUXSEL_HSE)>;
123*2107d012SThomas Bourgoin		};
124*2107d012SThomas Bourgoin
125*2107d012SThomas Bourgoin		pll1_cfg_1500Mhz: pll1-cfg-1500Mhz {
126*2107d012SThomas Bourgoin			cfg = <75 2 1 1>;
127*2107d012SThomas Bourgoin			src = <MUX_CFG(MUX_MUXSEL5, MUXSEL_HSE)>;
128*2107d012SThomas Bourgoin		};
129*2107d012SThomas Bourgoin	};
130*2107d012SThomas Bourgoin
131*2107d012SThomas Bourgoin	pll2: st,pll-2 {
132*2107d012SThomas Bourgoin		st,pll = <&pll2_cfg_600Mhz>;
133*2107d012SThomas Bourgoin
134*2107d012SThomas Bourgoin		pll2_cfg_600Mhz: pll2-cfg-600Mhz {
135*2107d012SThomas Bourgoin			cfg = <30 1 1 2>;
136*2107d012SThomas Bourgoin			src = <MUX_CFG(MUX_MUXSEL6, MUXSEL_HSE)>;
137*2107d012SThomas Bourgoin		};
138*2107d012SThomas Bourgoin	};
139*2107d012SThomas Bourgoin
140*2107d012SThomas Bourgoin	pll3: st,pll-3 {
141*2107d012SThomas Bourgoin		st,pll = <&pll3_cfg_800Mhz>;
142*2107d012SThomas Bourgoin
143*2107d012SThomas Bourgoin		pll3_cfg_800Mhz: pll3-cfg-800Mhz {
144*2107d012SThomas Bourgoin			cfg = <20 1 1 1>;
145*2107d012SThomas Bourgoin			src = <MUX_CFG(MUX_MUXSEL7, MUXSEL_HSE)>;
146*2107d012SThomas Bourgoin		};
147*2107d012SThomas Bourgoin
148*2107d012SThomas Bourgoin		pll3_cfg_900Mhz: pll3-cfg-900Mhz {
149*2107d012SThomas Bourgoin			cfg = <45 2 1 1>;
150*2107d012SThomas Bourgoin			src = <MUX_CFG(MUX_MUXSEL7, MUXSEL_HSE)>;
151*2107d012SThomas Bourgoin		};
152*2107d012SThomas Bourgoin	};
153*2107d012SThomas Bourgoin
154*2107d012SThomas Bourgoin	pll4: st,pll-4 {
155*2107d012SThomas Bourgoin		st,pll = <&pll4_cfg_1200Mhz>;
156*2107d012SThomas Bourgoin
157*2107d012SThomas Bourgoin		pll4_cfg_1200Mhz: pll4-cfg-1200Mhz {
158*2107d012SThomas Bourgoin			cfg = <30 1 1 1>;
159*2107d012SThomas Bourgoin			src = <MUX_CFG(MUX_MUXSEL0, MUXSEL_HSE)>;
160*2107d012SThomas Bourgoin		};
161*2107d012SThomas Bourgoin	};
162*2107d012SThomas Bourgoin
163*2107d012SThomas Bourgoin	pll5: st,pll-5 {
164*2107d012SThomas Bourgoin		st,pll = <&pll5_cfg_532Mhz>;
165*2107d012SThomas Bourgoin
166*2107d012SThomas Bourgoin		pll5_cfg_532Mhz: pll5-cfg-532Mhz {
167*2107d012SThomas Bourgoin			cfg = <133 5 1 2>;
168*2107d012SThomas Bourgoin			src = <MUX_CFG(MUX_MUXSEL1, MUXSEL_HSE)>;
169*2107d012SThomas Bourgoin		};
170*2107d012SThomas Bourgoin	};
171*2107d012SThomas Bourgoin
172*2107d012SThomas Bourgoin	pll6: st,pll-6 {
173*2107d012SThomas Bourgoin		st,pll = <&pll6_cfg_500Mhz>;
174*2107d012SThomas Bourgoin
175*2107d012SThomas Bourgoin		pll6_cfg_500Mhz: pll6-cfg-500Mhz {
176*2107d012SThomas Bourgoin			cfg = <25 1 1 2>;
177*2107d012SThomas Bourgoin			src = <MUX_CFG(MUX_MUXSEL2, MUXSEL_HSE)>;
178*2107d012SThomas Bourgoin		};
179*2107d012SThomas Bourgoin	};
180*2107d012SThomas Bourgoin
181*2107d012SThomas Bourgoin	pll7: st,pll-7 {
182*2107d012SThomas Bourgoin		st,pll = <&pll7_cfg_835_51172Mhz>;
183*2107d012SThomas Bourgoin
184*2107d012SThomas Bourgoin		pll7_cfg_835_51172Mhz: pll7-cfg-835-51172Mhz {
185*2107d012SThomas Bourgoin			cfg = <167 4 1 2>;
186*2107d012SThomas Bourgoin			src = <MUX_CFG(MUX_MUXSEL3, MUXSEL_HSE)>;
187*2107d012SThomas Bourgoin			frac = < 0x1A3337 >;
188*2107d012SThomas Bourgoin		};
189*2107d012SThomas Bourgoin	};
190*2107d012SThomas Bourgoin
191*2107d012SThomas Bourgoin	pll8: st,pll-8 {
192*2107d012SThomas Bourgoin		st,pll = <&pll8_cfg_594Mhz>;
193*2107d012SThomas Bourgoin
194*2107d012SThomas Bourgoin		pll8_cfg_594Mhz: pll8-cfg-594Mhz {
195*2107d012SThomas Bourgoin			cfg = <297 5 1 4>;
196*2107d012SThomas Bourgoin			src = <MUX_CFG(MUX_MUXSEL4, MUXSEL_HSE)>;
197*2107d012SThomas Bourgoin		};
198*2107d012SThomas Bourgoin	};
199*2107d012SThomas Bourgoin};
200*2107d012SThomas Bourgoin
201