Loading...
1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License version 2 as
4 * published by the Free Software Foundation.
5 */
6
7&scrm {
8 main_fapll: main_fapll {
9 #clock-cells = <1>;
10 compatible = "ti,dm816-fapll-clock";
11 reg = <0x400 0x40>;
12 clocks = <&sys_clkin_ck &sys_clkin_ck>;
13 clock-indices = <1>, <2>, <3>, <4>, <5>,
14 <6>, <7>;
15 clock-output-names = "main_pll_clk1",
16 "main_pll_clk2",
17 "main_pll_clk3",
18 "main_pll_clk4",
19 "main_pll_clk5",
20 "main_pll_clk6",
21 "main_pll_clk7";
22 };
23
24 ddr_fapll: ddr_fapll {
25 #clock-cells = <1>;
26 compatible = "ti,dm816-fapll-clock";
27 reg = <0x440 0x30>;
28 clocks = <&sys_clkin_ck &sys_clkin_ck>;
29 clock-indices = <1>, <2>, <3>, <4>;
30 clock-output-names = "ddr_pll_clk1",
31 "ddr_pll_clk2",
32 "ddr_pll_clk3",
33 "ddr_pll_clk4";
34 };
35
36 video_fapll: video_fapll {
37 #clock-cells = <1>;
38 compatible = "ti,dm816-fapll-clock";
39 reg = <0x470 0x30>;
40 clocks = <&sys_clkin_ck &sys_clkin_ck>;
41 clock-indices = <1>, <2>, <3>;
42 clock-output-names = "video_pll_clk1",
43 "video_pll_clk2",
44 "video_pll_clk3";
45 };
46
47 audio_fapll: audio_fapll {
48 #clock-cells = <1>;
49 compatible = "ti,dm816-fapll-clock";
50 reg = <0x4a0 0x30>;
51 clocks = <&main_fapll 7>, < &sys_clkin_ck>;
52 clock-indices = <1>, <2>, <3>, <4>, <5>;
53 clock-output-names = "audio_pll_clk1",
54 "audio_pll_clk2",
55 "audio_pll_clk3",
56 "audio_pll_clk4",
57 "audio_pll_clk5";
58 };
59};
60
61&scrm_clocks {
62 secure_32k_ck: secure_32k_ck {
63 #clock-cells = <0>;
64 compatible = "fixed-clock";
65 clock-frequency = <32768>;
66 };
67
68 sys_32k_ck: sys_32k_ck {
69 #clock-cells = <0>;
70 compatible = "fixed-clock";
71 clock-frequency = <32768>;
72 };
73
74 tclkin_ck: tclkin_ck {
75 #clock-cells = <0>;
76 compatible = "fixed-clock";
77 clock-frequency = <32768>;
78 };
79
80 sys_clkin_ck: sys_clkin_ck {
81 #clock-cells = <0>;
82 compatible = "fixed-clock";
83 clock-frequency = <27000000>;
84 };
85};
86
87/* 0x48180000 */
88&prcm_clocks {
89 clkout_pre_ck: clkout_pre_ck@100 {
90 #clock-cells = <0>;
91 compatible = "ti,mux-clock";
92 clocks = <&main_fapll 5 &ddr_fapll 1 &video_fapll 1
93 &audio_fapll 1>;
94 reg = <0x100>;
95 };
96
97 clkout_div_ck: clkout_div_ck@100 {
98 #clock-cells = <0>;
99 compatible = "ti,divider-clock";
100 clocks = <&clkout_pre_ck>;
101 ti,bit-shift = <3>;
102 ti,max-div = <8>;
103 reg = <0x100>;
104 };
105
106 clkout_ck: clkout_ck@100 {
107 #clock-cells = <0>;
108 compatible = "ti,gate-clock";
109 clocks = <&clkout_div_ck>;
110 ti,bit-shift = <7>;
111 reg = <0x100>;
112 };
113
114 /* CM_DPLL clocks p1795 */
115 sysclk1_ck: sysclk1_ck@300 {
116 #clock-cells = <0>;
117 compatible = "ti,divider-clock";
118 clocks = <&main_fapll 1>;
119 ti,max-div = <7>;
120 reg = <0x0300>;
121 };
122
123 sysclk2_ck: sysclk2_ck@304 {
124 #clock-cells = <0>;
125 compatible = "ti,divider-clock";
126 clocks = <&main_fapll 2>;
127 ti,max-div = <7>;
128 reg = <0x0304>;
129 };
130
131 sysclk3_ck: sysclk3_ck@308 {
132 #clock-cells = <0>;
133 compatible = "ti,divider-clock";
134 clocks = <&main_fapll 3>;
135 ti,max-div = <7>;
136 reg = <0x0308>;
137 };
138
139 sysclk4_ck: sysclk4_ck@30c {
140 #clock-cells = <0>;
141 compatible = "ti,divider-clock";
142 clocks = <&main_fapll 4>;
143 ti,max-div = <1>;
144 reg = <0x030c>;
145 };
146
147 sysclk5_ck: sysclk5_ck@310 {
148 #clock-cells = <0>;
149 compatible = "ti,divider-clock";
150 clocks = <&sysclk4_ck>;
151 ti,max-div = <1>;
152 reg = <0x0310>;
153 };
154
155 sysclk6_ck: sysclk6_ck@314 {
156 #clock-cells = <0>;
157 compatible = "ti,divider-clock";
158 clocks = <&main_fapll 4>;
159 ti,dividers = <2>, <4>;
160 reg = <0x0314>;
161 };
162
163 sysclk10_ck: sysclk10_ck@324 {
164 #clock-cells = <0>;
165 compatible = "ti,divider-clock";
166 clocks = <&ddr_fapll 2>;
167 ti,max-div = <7>;
168 reg = <0x0324>;
169 };
170
171 sysclk24_ck: sysclk24_ck@3b4 {
172 #clock-cells = <0>;
173 compatible = "ti,divider-clock";
174 clocks = <&main_fapll 5>;
175 ti,max-div = <7>;
176 reg = <0x03b4>;
177 };
178
179 mpu_ck: mpu_ck@15dc {
180 #clock-cells = <0>;
181 compatible = "ti,gate-clock";
182 clocks = <&sysclk2_ck>;
183 ti,bit-shift = <1>;
184 reg = <0x15dc>;
185 };
186
187 audio_pll_a_ck: audio_pll_a_ck@35c {
188 #clock-cells = <0>;
189 compatible = "ti,divider-clock";
190 clocks = <&audio_fapll 1>;
191 ti,max-div = <7>;
192 reg = <0x035c>;
193 };
194
195 sysclk18_ck: sysclk18_ck@378 {
196 #clock-cells = <0>;
197 compatible = "ti,mux-clock";
198 clocks = <&sys_32k_ck>, <&audio_pll_a_ck>;
199 reg = <0x0378>;
200 };
201
202 timer1_fck: timer1_fck@390 {
203 #clock-cells = <0>;
204 compatible = "ti,mux-clock";
205 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
206 reg = <0x0390>;
207 };
208
209 timer2_fck: timer2_fck@394 {
210 #clock-cells = <0>;
211 compatible = "ti,mux-clock";
212 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
213 reg = <0x0394>;
214 };
215
216 timer3_fck: timer3_fck@398 {
217 #clock-cells = <0>;
218 compatible = "ti,mux-clock";
219 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
220 reg = <0x0398>;
221 };
222
223 timer4_fck: timer4_fck@39c {
224 #clock-cells = <0>;
225 compatible = "ti,mux-clock";
226 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
227 reg = <0x039c>;
228 };
229
230 timer5_fck: timer5_fck@3a0 {
231 #clock-cells = <0>;
232 compatible = "ti,mux-clock";
233 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
234 reg = <0x03a0>;
235 };
236
237 timer6_fck: timer6_fck@3a4 {
238 #clock-cells = <0>;
239 compatible = "ti,mux-clock";
240 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
241 reg = <0x03a4>;
242 };
243
244 timer7_fck: timer7_fck@3a8 {
245 #clock-cells = <0>;
246 compatible = "ti,mux-clock";
247 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
248 reg = <0x03a8>;
249 };
250};
251
252&prcm {
253 default_cm: default_cm@500 {
254 compatible = "ti,omap4-cm";
255 reg = <0x500 0x100>;
256 #address-cells = <1>;
257 #size-cells = <1>;
258 ranges = <0 0x500 0x100>;
259
260 default_clkctrl: clk@0 {
261 compatible = "ti,clkctrl";
262 reg = <0x0 0x5c>;
263 #clock-cells = <2>;
264 };
265 };
266
267 alwon_cm: alwon_cm@1400 {
268 compatible = "ti,omap4-cm";
269 reg = <0x1400 0x300>;
270 #address-cells = <1>;
271 #size-cells = <1>;
272 ranges = <0 0x1400 0x300>;
273
274 alwon_clkctrl: clk@0 {
275 compatible = "ti,clkctrl";
276 reg = <0x0 0x208>;
277 #clock-cells = <2>;
278 };
279 };
280};
1// SPDX-License-Identifier: GPL-2.0-only
2
3&scrm {
4 main_fapll: main_fapll {
5 #clock-cells = <1>;
6 compatible = "ti,dm816-fapll-clock";
7 reg = <0x400 0x40>;
8 clocks = <&sys_clkin_ck &sys_clkin_ck>;
9 clock-indices = <1>, <2>, <3>, <4>, <5>,
10 <6>, <7>;
11 clock-output-names = "main_pll_clk1",
12 "main_pll_clk2",
13 "main_pll_clk3",
14 "main_pll_clk4",
15 "main_pll_clk5",
16 "main_pll_clk6",
17 "main_pll_clk7";
18 };
19
20 ddr_fapll: ddr_fapll {
21 #clock-cells = <1>;
22 compatible = "ti,dm816-fapll-clock";
23 reg = <0x440 0x30>;
24 clocks = <&sys_clkin_ck &sys_clkin_ck>;
25 clock-indices = <1>, <2>, <3>, <4>;
26 clock-output-names = "ddr_pll_clk1",
27 "ddr_pll_clk2",
28 "ddr_pll_clk3",
29 "ddr_pll_clk4";
30 };
31
32 video_fapll: video_fapll {
33 #clock-cells = <1>;
34 compatible = "ti,dm816-fapll-clock";
35 reg = <0x470 0x30>;
36 clocks = <&sys_clkin_ck &sys_clkin_ck>;
37 clock-indices = <1>, <2>, <3>;
38 clock-output-names = "video_pll_clk1",
39 "video_pll_clk2",
40 "video_pll_clk3";
41 };
42
43 audio_fapll: audio_fapll {
44 #clock-cells = <1>;
45 compatible = "ti,dm816-fapll-clock";
46 reg = <0x4a0 0x30>;
47 clocks = <&main_fapll 7>, < &sys_clkin_ck>;
48 clock-indices = <1>, <2>, <3>, <4>, <5>;
49 clock-output-names = "audio_pll_clk1",
50 "audio_pll_clk2",
51 "audio_pll_clk3",
52 "audio_pll_clk4",
53 "audio_pll_clk5";
54 };
55};
56
57&scrm_clocks {
58 secure_32k_ck: secure_32k_ck {
59 #clock-cells = <0>;
60 compatible = "fixed-clock";
61 clock-frequency = <32768>;
62 };
63
64 sys_32k_ck: sys_32k_ck {
65 #clock-cells = <0>;
66 compatible = "fixed-clock";
67 clock-frequency = <32768>;
68 };
69
70 tclkin_ck: tclkin_ck {
71 #clock-cells = <0>;
72 compatible = "fixed-clock";
73 clock-frequency = <32768>;
74 };
75
76 sys_clkin_ck: sys_clkin_ck {
77 #clock-cells = <0>;
78 compatible = "fixed-clock";
79 clock-frequency = <27000000>;
80 };
81};
82
83/* 0x48180000 */
84&prcm_clocks {
85 clkout_pre_ck: clkout_pre_ck@100 {
86 #clock-cells = <0>;
87 compatible = "ti,mux-clock";
88 clocks = <&main_fapll 5 &ddr_fapll 1 &video_fapll 1
89 &audio_fapll 1>;
90 reg = <0x100>;
91 };
92
93 clkout_div_ck: clkout_div_ck@100 {
94 #clock-cells = <0>;
95 compatible = "ti,divider-clock";
96 clocks = <&clkout_pre_ck>;
97 ti,bit-shift = <3>;
98 ti,max-div = <8>;
99 reg = <0x100>;
100 };
101
102 clkout_ck: clkout_ck@100 {
103 #clock-cells = <0>;
104 compatible = "ti,gate-clock";
105 clocks = <&clkout_div_ck>;
106 ti,bit-shift = <7>;
107 reg = <0x100>;
108 };
109
110 /* CM_DPLL clocks p1795 */
111 sysclk1_ck: sysclk1_ck@300 {
112 #clock-cells = <0>;
113 compatible = "ti,divider-clock";
114 clocks = <&main_fapll 1>;
115 ti,max-div = <7>;
116 reg = <0x0300>;
117 };
118
119 sysclk2_ck: sysclk2_ck@304 {
120 #clock-cells = <0>;
121 compatible = "ti,divider-clock";
122 clocks = <&main_fapll 2>;
123 ti,max-div = <7>;
124 reg = <0x0304>;
125 };
126
127 sysclk3_ck: sysclk3_ck@308 {
128 #clock-cells = <0>;
129 compatible = "ti,divider-clock";
130 clocks = <&main_fapll 3>;
131 ti,max-div = <7>;
132 reg = <0x0308>;
133 };
134
135 sysclk4_ck: sysclk4_ck@30c {
136 #clock-cells = <0>;
137 compatible = "ti,divider-clock";
138 clocks = <&main_fapll 4>;
139 ti,max-div = <1>;
140 reg = <0x030c>;
141 };
142
143 sysclk5_ck: sysclk5_ck@310 {
144 #clock-cells = <0>;
145 compatible = "ti,divider-clock";
146 clocks = <&sysclk4_ck>;
147 ti,max-div = <1>;
148 reg = <0x0310>;
149 };
150
151 sysclk6_ck: sysclk6_ck@314 {
152 #clock-cells = <0>;
153 compatible = "ti,divider-clock";
154 clocks = <&main_fapll 4>;
155 ti,dividers = <2>, <4>;
156 reg = <0x0314>;
157 };
158
159 sysclk10_ck: sysclk10_ck@324 {
160 #clock-cells = <0>;
161 compatible = "ti,divider-clock";
162 clocks = <&ddr_fapll 2>;
163 ti,max-div = <7>;
164 reg = <0x0324>;
165 };
166
167 sysclk24_ck: sysclk24_ck@3b4 {
168 #clock-cells = <0>;
169 compatible = "ti,divider-clock";
170 clocks = <&main_fapll 5>;
171 ti,max-div = <7>;
172 reg = <0x03b4>;
173 };
174
175 mpu_ck: mpu_ck@15dc {
176 #clock-cells = <0>;
177 compatible = "ti,gate-clock";
178 clocks = <&sysclk2_ck>;
179 ti,bit-shift = <1>;
180 reg = <0x15dc>;
181 };
182
183 audio_pll_a_ck: audio_pll_a_ck@35c {
184 #clock-cells = <0>;
185 compatible = "ti,divider-clock";
186 clocks = <&audio_fapll 1>;
187 ti,max-div = <7>;
188 reg = <0x035c>;
189 };
190
191 sysclk18_ck: sysclk18_ck@378 {
192 #clock-cells = <0>;
193 compatible = "ti,mux-clock";
194 clocks = <&sys_32k_ck>, <&audio_pll_a_ck>;
195 reg = <0x0378>;
196 };
197
198 timer1_fck: timer1_fck@390 {
199 #clock-cells = <0>;
200 compatible = "ti,mux-clock";
201 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
202 reg = <0x0390>;
203 };
204
205 timer2_fck: timer2_fck@394 {
206 #clock-cells = <0>;
207 compatible = "ti,mux-clock";
208 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
209 reg = <0x0394>;
210 };
211
212 timer3_fck: timer3_fck@398 {
213 #clock-cells = <0>;
214 compatible = "ti,mux-clock";
215 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
216 reg = <0x0398>;
217 };
218
219 timer4_fck: timer4_fck@39c {
220 #clock-cells = <0>;
221 compatible = "ti,mux-clock";
222 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
223 reg = <0x039c>;
224 };
225
226 timer5_fck: timer5_fck@3a0 {
227 #clock-cells = <0>;
228 compatible = "ti,mux-clock";
229 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
230 reg = <0x03a0>;
231 };
232
233 timer6_fck: timer6_fck@3a4 {
234 #clock-cells = <0>;
235 compatible = "ti,mux-clock";
236 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
237 reg = <0x03a4>;
238 };
239
240 timer7_fck: timer7_fck@3a8 {
241 #clock-cells = <0>;
242 compatible = "ti,mux-clock";
243 clocks = <&tclkin_ck>, <&sysclk18_ck>, <&sys_clkin_ck>;
244 reg = <0x03a8>;
245 };
246};
247
248&prcm {
249 default_cm: default_cm@500 {
250 compatible = "ti,omap4-cm";
251 reg = <0x500 0x100>;
252 #address-cells = <1>;
253 #size-cells = <1>;
254 ranges = <0 0x500 0x100>;
255
256 default_clkctrl: clk@0 {
257 compatible = "ti,clkctrl";
258 reg = <0x0 0x5c>;
259 #clock-cells = <2>;
260 };
261 };
262
263 alwon_cm: alwon_cm@1400 {
264 compatible = "ti,omap4-cm";
265 reg = <0x1400 0x300>;
266 #address-cells = <1>;
267 #size-cells = <1>;
268 ranges = <0 0x1400 0x300>;
269
270 alwon_clkctrl: clk@0 {
271 compatible = "ti,clkctrl";
272 reg = <0x0 0x208>;
273 #clock-cells = <2>;
274 };
275 };
276};