~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/clock/samsung,exynos5260-clock.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2 %YAML 1.2
  3 ---
  4 $id: http://devicetree.org/schemas/clock/samsung,exynos5260-clock.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: Samsung Exynos5260 SoC clock controller
  8 
  9 maintainers:
 10   - Chanwoo Choi <cw00.choi@samsung.com>
 11   - Krzysztof Kozlowski <krzk@kernel.org>
 12   - Sylwester Nawrocki <s.nawrocki@samsung.com>
 13   - Tomasz Figa <tomasz.figa@gmail.com>
 14 
 15 description: |
 16   Expected external clocks, defined in DTS as fixed-rate clocks with a matching
 17   name::
 18     - "fin_pll" - PLL input clock from XXTI
 19     - "xrtcxti" - input clock from XRTCXTI
 20     - "ioclk_pcm_extclk" - pcm external operation clock
 21     - "ioclk_spdif_extclk" - spdif external operation clock
 22     - "ioclk_i2s_cdclk" - i2s0 codec clock
 23 
 24   Phy clocks::
 25   There are several clocks which are generated by specific PHYs.  These clocks
 26   are fed into the clock controller and then routed to the hardware blocks.
 27   These clocks are defined as fixed clocks in the driver with following names::
 28     - "phyclk_dptx_phy_ch3_txd_clk" - dp phy clock for channel 3
 29     - "phyclk_dptx_phy_ch2_txd_clk" - dp phy clock for channel 2
 30     - "phyclk_dptx_phy_ch1_txd_clk" - dp phy clock for channel 1
 31     - "phyclk_dptx_phy_ch0_txd_clk" - dp phy clock for channel 0
 32     - "phyclk_hdmi_phy_tmds_clko" - hdmi phy tmds clock
 33     - "phyclk_hdmi_phy_pixel_clko" - hdmi phy pixel clock
 34     - "phyclk_hdmi_link_o_tmds_clkhi" - hdmi phy for hdmi link
 35     - "phyclk_dptx_phy_o_ref_clk_24m" - dp phy reference clock
 36     - "phyclk_dptx_phy_clk_div2"
 37     - "phyclk_mipi_dphy_4l_m_rxclkesc0"
 38     - "phyclk_usbhost20_phy_phyclock" - usb 2.0 phy clock
 39     - "phyclk_usbhost20_phy_freeclk"
 40     - "phyclk_usbhost20_phy_clk48mohci"
 41     - "phyclk_usbdrd30_udrd30_pipe_pclk"
 42     - "phyclk_usbdrd30_udrd30_phyclock" - usb 3.0 phy clock
 43 
 44   All available clocks are defined as preprocessor macros in
 45   include/dt-bindings/clock/exynos5260-clk.h header.
 46 
 47 properties:
 48   compatible:
 49     enum:
 50       - samsung,exynos5260-clock-top
 51       - samsung,exynos5260-clock-peri
 52       - samsung,exynos5260-clock-egl
 53       - samsung,exynos5260-clock-kfc
 54       - samsung,exynos5260-clock-g2d
 55       - samsung,exynos5260-clock-mif
 56       - samsung,exynos5260-clock-mfc
 57       - samsung,exynos5260-clock-g3d
 58       - samsung,exynos5260-clock-fsys
 59       - samsung,exynos5260-clock-aud
 60       - samsung,exynos5260-clock-isp
 61       - samsung,exynos5260-clock-gscl
 62       - samsung,exynos5260-clock-disp
 63 
 64   clocks:
 65     minItems: 1
 66     maxItems: 19
 67 
 68   clock-names:
 69     minItems: 1
 70     maxItems: 19
 71 
 72   "#clock-cells":
 73     const: 1
 74 
 75   reg:
 76     maxItems: 1
 77 
 78 required:
 79   - compatible
 80   - "#clock-cells"
 81   - reg
 82 
 83 allOf:
 84   - if:
 85       properties:
 86         compatible:
 87           contains:
 88             const: samsung,exynos5260-clock-top
 89     then:
 90       properties:
 91         clocks:
 92           minItems: 4
 93           maxItems: 4
 94         clock-names:
 95           items:
 96             - const: fin_pll
 97             - const: dout_mem_pll
 98             - const: dout_bus_pll
 99             - const: dout_media_pll
100       required:
101         - clock-names
102         - clocks
103 
104   - if:
105       properties:
106         compatible:
107           contains:
108             const: samsung,exynos5260-clock-peri
109     then:
110       properties:
111         clocks:
112           minItems: 13
113           maxItems: 13
114         clock-names:
115           items:
116             - const: fin_pll
117             - const: ioclk_pcm_extclk
118             - const: ioclk_i2s_cdclk
119             - const: ioclk_spdif_extclk
120             - const: phyclk_hdmi_phy_ref_cko
121             - const: dout_aclk_peri_66
122             - const: dout_sclk_peri_uart0
123             - const: dout_sclk_peri_uart1
124             - const: dout_sclk_peri_uart2
125             - const: dout_sclk_peri_spi0_b
126             - const: dout_sclk_peri_spi1_b
127             - const: dout_sclk_peri_spi2_b
128             - const: dout_aclk_peri_aud
129       required:
130         - clock-names
131         - clocks
132 
133   - if:
134       properties:
135         compatible:
136           contains:
137             const: samsung,exynos5260-clock-egl
138     then:
139       properties:
140         clocks:
141           minItems: 2
142           maxItems: 2
143         clock-names:
144           items:
145             - const: fin_pll
146             - const: dout_bus_pll
147       required:
148         - clock-names
149         - clocks
150 
151   - if:
152       properties:
153         compatible:
154           contains:
155             const: samsung,exynos5260-clock-kfc
156     then:
157       properties:
158         clocks:
159           minItems: 2
160           maxItems: 2
161         clock-names:
162           items:
163             - const: fin_pll
164             - const: dout_media_pll
165       required:
166         - clock-names
167         - clocks
168 
169   - if:
170       properties:
171         compatible:
172           contains:
173             const: samsung,exynos5260-clock-g2d
174     then:
175       properties:
176         clocks:
177           minItems: 2
178           maxItems: 2
179         clock-names:
180           items:
181             - const: fin_pll
182             - const: dout_aclk_g2d_333
183       required:
184         - clock-names
185         - clocks
186 
187   - if:
188       properties:
189         compatible:
190           contains:
191             const: samsung,exynos5260-clock-mif
192     then:
193       properties:
194         clocks:
195           minItems: 1
196           maxItems: 1
197         clock-names:
198           items:
199             - const: fin_pll
200       required:
201         - clock-names
202         - clocks
203 
204   - if:
205       properties:
206         compatible:
207           contains:
208             const: samsung,exynos5260-clock-mfc
209     then:
210       properties:
211         clocks:
212           minItems: 2
213           maxItems: 2
214         clock-names:
215           items:
216             - const: fin_pll
217             - const: dout_aclk_mfc_333
218       required:
219         - clock-names
220         - clocks
221 
222   - if:
223       properties:
224         compatible:
225           contains:
226             const: samsung,exynos5260-clock-g3d
227     then:
228       properties:
229         clocks:
230           minItems: 1
231           maxItems: 1
232         clock-names:
233           items:
234             - const: fin_pll
235       required:
236         - clock-names
237         - clocks
238 
239   - if:
240       properties:
241         compatible:
242           contains:
243             const: samsung,exynos5260-clock-fsys
244     then:
245       properties:
246         clocks:
247           minItems: 7
248           maxItems: 7
249         clock-names:
250           items:
251             - const: fin_pll
252             - const: phyclk_usbhost20_phy_phyclock
253             - const: phyclk_usbhost20_phy_freeclk
254             - const: phyclk_usbhost20_phy_clk48mohci
255             - const: phyclk_usbdrd30_udrd30_pipe_pclk
256             - const: phyclk_usbdrd30_udrd30_phyclock
257             - const: dout_aclk_fsys_200
258       required:
259         - clock-names
260         - clocks
261 
262   - if:
263       properties:
264         compatible:
265           contains:
266             const: samsung,exynos5260-clock-aud
267     then:
268       properties:
269         clocks:
270           minItems: 4
271           maxItems: 4
272         clock-names:
273           items:
274             - const: fin_pll
275             - const: fout_aud_pll
276             - const: ioclk_i2s_cdclk
277             - const: ioclk_pcm_extclk
278       required:
279         - clock-names
280         - clocks
281 
282   - if:
283       properties:
284         compatible:
285           contains:
286             const: samsung,exynos5260-clock-isp
287     then:
288       properties:
289         clocks:
290           minItems: 4
291           maxItems: 4
292         clock-names:
293           items:
294             - const: fin_pll
295             - const: dout_aclk_isp1_266
296             - const: dout_aclk_isp1_400
297             - const: mout_aclk_isp1_266
298 
299       required:
300         - clock-names
301         - clocks
302 
303   - if:
304       properties:
305         compatible:
306           contains:
307             const: samsung,exynos5260-clock-gscl
308     then:
309       properties:
310         clocks:
311           minItems: 3
312           maxItems: 3
313         clock-names:
314           items:
315             - const: fin_pll
316             - const: dout_aclk_gscl_400
317             - const: dout_aclk_gscl_333
318       required:
319         - clock-names
320         - clocks
321 
322   - if:
323       properties:
324         compatible:
325           contains:
326             const: samsung,exynos5260-clock-disp
327     then:
328       properties:
329         clocks:
330           minItems: 19
331           maxItems: 19
332         clock-names:
333           items:
334             - const: fin_pll
335             - const: phyclk_dptx_phy_ch3_txd_clk
336             - const: phyclk_dptx_phy_ch2_txd_clk
337             - const: phyclk_dptx_phy_ch1_txd_clk
338             - const: phyclk_dptx_phy_ch0_txd_clk
339             - const: phyclk_hdmi_phy_tmds_clko
340             - const: phyclk_hdmi_phy_ref_clko
341             - const: phyclk_hdmi_phy_pixel_clko
342             - const: phyclk_hdmi_link_o_tmds_clkhi
343             - const: phyclk_mipi_dphy_4l_m_txbyte_clkhs
344             - const: phyclk_dptx_phy_o_ref_clk_24m
345             - const: phyclk_dptx_phy_clk_div2
346             - const: phyclk_mipi_dphy_4l_m_rxclkesc0
347             - const: phyclk_hdmi_phy_ref_cko
348             - const: ioclk_spdif_extclk
349             - const: dout_aclk_peri_aud
350             - const: dout_aclk_disp_222
351             - const: dout_sclk_disp_pixel
352             - const: dout_aclk_disp_333
353       required:
354         - clock-names
355         - clocks
356 
357 additionalProperties: false
358 
359 examples:
360   - |
361     #include <dt-bindings/clock/exynos5260-clk.h>
362 
363     fin_pll: clock {
364         compatible = "fixed-clock";
365         clock-output-names = "fin_pll";
366         #clock-cells = <0>;
367         clock-frequency = <24000000>;
368     };
369 
370     clock-controller@10010000 {
371         compatible = "samsung,exynos5260-clock-top";
372         reg = <0x10010000 0x10000>;
373         #clock-cells = <1>;
374         clocks = <&fin_pll>,
375                  <&clock_mif MIF_DOUT_MEM_PLL>,
376                  <&clock_mif MIF_DOUT_BUS_PLL>,
377                  <&clock_mif MIF_DOUT_MEDIA_PLL>;
378         clock-names = "fin_pll",
379                       "dout_mem_pll",
380                       "dout_bus_pll",
381                       "dout_media_pll";
382     };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php