blob: 5f1b0b23c12404b568617ea1cea74c083e1079bf [file] [log] [blame]
Michal Simek090a2d72018-03-27 10:36:39 +02001// SPDX-License-Identifier: GPL-2.0+
Michal Simeka6604b62017-12-08 14:50:42 +01002/*
3 * Clock specification for Xilinx ZynqMP
4 *
Michal Simek3f283ea2023-09-22 12:35:41 +02005 * (C) Copyright 2017 - 2022, Xilinx, Inc.
6 * (C) Copyright 2022 - 2023, Advanced Micro Devices, Inc.
Michal Simeka6604b62017-12-08 14:50:42 +01007 *
Michal Simeka8c94362023-07-10 14:35:49 +02008 * Michal Simek <michal.simek@amd.com>
Michal Simeka6604b62017-12-08 14:50:42 +01009 */
10
Michal Simekebddf492019-10-14 15:42:03 +020011#include <dt-bindings/clock/xlnx-zynqmp-clk.h>
Michal Simeka6604b62017-12-08 14:50:42 +010012/ {
13 fclk0: fclk0 {
Michal Simekebddf492019-10-14 15:42:03 +020014 status = "okay";
Michal Simeka6604b62017-12-08 14:50:42 +010015 compatible = "xlnx,fclk";
Michal Simekebddf492019-10-14 15:42:03 +020016 clocks = <&zynqmp_clk PL0_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +010017 };
18
Michal Simeka6604b62017-12-08 14:50:42 +010019 pss_ref_clk: pss_ref_clk {
Simon Glassd3a98cb2023-02-13 08:56:33 -070020 bootph-all;
Michal Simeka6604b62017-12-08 14:50:42 +010021 compatible = "fixed-clock";
22 #clock-cells = <0>;
23 clock-frequency = <33333333>;
24 };
25
26 video_clk: video_clk {
Simon Glassd3a98cb2023-02-13 08:56:33 -070027 bootph-all;
Michal Simeka6604b62017-12-08 14:50:42 +010028 compatible = "fixed-clock";
29 #clock-cells = <0>;
30 clock-frequency = <27000000>;
31 };
32
33 pss_alt_ref_clk: pss_alt_ref_clk {
Simon Glassd3a98cb2023-02-13 08:56:33 -070034 bootph-all;
Michal Simeka6604b62017-12-08 14:50:42 +010035 compatible = "fixed-clock";
36 #clock-cells = <0>;
37 clock-frequency = <0>;
38 };
39
40 gt_crx_ref_clk: gt_crx_ref_clk {
Simon Glassd3a98cb2023-02-13 08:56:33 -070041 bootph-all;
Michal Simeka6604b62017-12-08 14:50:42 +010042 compatible = "fixed-clock";
43 #clock-cells = <0>;
44 clock-frequency = <108000000>;
45 };
46
47 aux_ref_clk: aux_ref_clk {
Simon Glassd3a98cb2023-02-13 08:56:33 -070048 bootph-all;
Michal Simeka6604b62017-12-08 14:50:42 +010049 compatible = "fixed-clock";
50 #clock-cells = <0>;
51 clock-frequency = <27000000>;
52 };
Michal Simeka6604b62017-12-08 14:50:42 +010053};
54
Michal Simekebddf492019-10-14 15:42:03 +020055&zynqmp_firmware {
56 zynqmp_clk: clock-controller {
Simon Glassd3a98cb2023-02-13 08:56:33 -070057 bootph-all;
Michal Simekebddf492019-10-14 15:42:03 +020058 #clock-cells = <1>;
59 compatible = "xlnx,zynqmp-clk";
60 clocks = <&pss_ref_clk>, <&video_clk>, <&pss_alt_ref_clk>,
61 <&aux_ref_clk>, <&gt_crx_ref_clk>;
62 clock-names = "pss_ref_clk", "video_clk", "pss_alt_ref_clk",
63 "aux_ref_clk", "gt_crx_ref_clk";
64 };
65};
66
Michal Simeka6604b62017-12-08 14:50:42 +010067&can0 {
Michal Simekebddf492019-10-14 15:42:03 +020068 clocks = <&zynqmp_clk CAN0_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +010069};
70
71&can1 {
Michal Simekebddf492019-10-14 15:42:03 +020072 clocks = <&zynqmp_clk CAN1_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +010073};
74
75&cpu0 {
Michal Simekebddf492019-10-14 15:42:03 +020076 clocks = <&zynqmp_clk ACPU>;
Michal Simeka6604b62017-12-08 14:50:42 +010077};
78
79&fpd_dma_chan1 {
Michal Simekebddf492019-10-14 15:42:03 +020080 clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +010081};
82
83&fpd_dma_chan2 {
Michal Simekebddf492019-10-14 15:42:03 +020084 clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +010085};
86
87&fpd_dma_chan3 {
Michal Simekebddf492019-10-14 15:42:03 +020088 clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +010089};
90
91&fpd_dma_chan4 {
Michal Simekebddf492019-10-14 15:42:03 +020092 clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +010093};
94
95&fpd_dma_chan5 {
Michal Simekebddf492019-10-14 15:42:03 +020096 clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +010097};
98
99&fpd_dma_chan6 {
Michal Simekebddf492019-10-14 15:42:03 +0200100 clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100101};
102
103&fpd_dma_chan7 {
Michal Simekebddf492019-10-14 15:42:03 +0200104 clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100105};
106
107&fpd_dma_chan8 {
Michal Simekebddf492019-10-14 15:42:03 +0200108 clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100109};
110
111&gpu {
Parth Gajjara281ad02023-07-10 14:37:29 +0200112 clocks = <&zynqmp_clk GPU_REF>, <&zynqmp_clk GPU_PP0_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100113};
114
115&lpd_dma_chan1 {
Michal Simekebddf492019-10-14 15:42:03 +0200116 clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100117};
118
119&lpd_dma_chan2 {
Michal Simekebddf492019-10-14 15:42:03 +0200120 clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100121};
122
123&lpd_dma_chan3 {
Michal Simekebddf492019-10-14 15:42:03 +0200124 clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100125};
126
127&lpd_dma_chan4 {
Michal Simekebddf492019-10-14 15:42:03 +0200128 clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100129};
130
131&lpd_dma_chan5 {
Michal Simekebddf492019-10-14 15:42:03 +0200132 clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100133};
134
135&lpd_dma_chan6 {
Michal Simekebddf492019-10-14 15:42:03 +0200136 clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100137};
138
139&lpd_dma_chan7 {
Michal Simekebddf492019-10-14 15:42:03 +0200140 clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100141};
142
143&lpd_dma_chan8 {
Michal Simekebddf492019-10-14 15:42:03 +0200144 clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100145};
146
147&nand0 {
Michal Simekebddf492019-10-14 15:42:03 +0200148 clocks = <&zynqmp_clk NAND_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100149};
150
151&gem0 {
Michal Simek1092d682020-01-09 14:15:07 +0100152 clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM0_REF>,
153 <&zynqmp_clk GEM0_TX>, <&zynqmp_clk GEM0_RX>,
154 <&zynqmp_clk GEM_TSU>;
Harini Katakam14d5fee2023-07-10 14:37:30 +0200155 assigned-clocks = <&zynqmp_clk GEM_TSU>;
Michal Simeka6604b62017-12-08 14:50:42 +0100156};
157
158&gem1 {
Michal Simek1092d682020-01-09 14:15:07 +0100159 clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM1_REF>,
160 <&zynqmp_clk GEM1_TX>, <&zynqmp_clk GEM1_RX>,
161 <&zynqmp_clk GEM_TSU>;
Harini Katakam14d5fee2023-07-10 14:37:30 +0200162 assigned-clocks = <&zynqmp_clk GEM_TSU>;
Michal Simeka6604b62017-12-08 14:50:42 +0100163};
164
165&gem2 {
Michal Simek1092d682020-01-09 14:15:07 +0100166 clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM2_REF>,
167 <&zynqmp_clk GEM2_TX>, <&zynqmp_clk GEM2_RX>,
168 <&zynqmp_clk GEM_TSU>;
Harini Katakam14d5fee2023-07-10 14:37:30 +0200169 assigned-clocks = <&zynqmp_clk GEM_TSU>;
Michal Simeka6604b62017-12-08 14:50:42 +0100170};
171
172&gem3 {
Michal Simek1092d682020-01-09 14:15:07 +0100173 clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM3_REF>,
174 <&zynqmp_clk GEM3_TX>, <&zynqmp_clk GEM3_RX>,
175 <&zynqmp_clk GEM_TSU>;
Harini Katakam14d5fee2023-07-10 14:37:30 +0200176 assigned-clocks = <&zynqmp_clk GEM_TSU>;
Michal Simeka6604b62017-12-08 14:50:42 +0100177};
178
179&gpio {
Michal Simekebddf492019-10-14 15:42:03 +0200180 clocks = <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100181};
182
183&i2c0 {
Michal Simekebddf492019-10-14 15:42:03 +0200184 clocks = <&zynqmp_clk I2C0_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100185};
186
187&i2c1 {
Michal Simekebddf492019-10-14 15:42:03 +0200188 clocks = <&zynqmp_clk I2C1_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100189};
190
191&pcie {
Michal Simekebddf492019-10-14 15:42:03 +0200192 clocks = <&zynqmp_clk PCIE_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100193};
194
195&qspi {
Michal Simekebddf492019-10-14 15:42:03 +0200196 clocks = <&zynqmp_clk QSPI_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100197};
198
199&sata {
Michal Simekebddf492019-10-14 15:42:03 +0200200 clocks = <&zynqmp_clk SATA_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100201};
202
203&sdhci0 {
Michal Simekebddf492019-10-14 15:42:03 +0200204 clocks = <&zynqmp_clk SDIO0_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simekbd8ca912022-02-23 16:17:39 +0100205 assigned-clocks = <&zynqmp_clk SDIO0_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100206};
207
208&sdhci1 {
Michal Simekebddf492019-10-14 15:42:03 +0200209 clocks = <&zynqmp_clk SDIO1_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simekbd8ca912022-02-23 16:17:39 +0100210 assigned-clocks = <&zynqmp_clk SDIO1_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100211};
212
213&spi0 {
Michal Simekebddf492019-10-14 15:42:03 +0200214 clocks = <&zynqmp_clk SPI0_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100215};
216
217&spi1 {
Michal Simekebddf492019-10-14 15:42:03 +0200218 clocks = <&zynqmp_clk SPI1_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simeka6604b62017-12-08 14:50:42 +0100219};
220
Rajan Vaja36d68be2018-04-25 05:34:04 -0700221&ttc0 {
Michal Simekebddf492019-10-14 15:42:03 +0200222 clocks = <&zynqmp_clk LPD_LSBUS>;
Rajan Vaja36d68be2018-04-25 05:34:04 -0700223};
224
225&ttc1 {
Michal Simekebddf492019-10-14 15:42:03 +0200226 clocks = <&zynqmp_clk LPD_LSBUS>;
Rajan Vaja36d68be2018-04-25 05:34:04 -0700227};
228
229&ttc2 {
Michal Simekebddf492019-10-14 15:42:03 +0200230 clocks = <&zynqmp_clk LPD_LSBUS>;
Rajan Vaja36d68be2018-04-25 05:34:04 -0700231};
232
233&ttc3 {
Michal Simekebddf492019-10-14 15:42:03 +0200234 clocks = <&zynqmp_clk LPD_LSBUS>;
Rajan Vaja36d68be2018-04-25 05:34:04 -0700235};
236
Michal Simeka6604b62017-12-08 14:50:42 +0100237&uart0 {
Michal Simekebddf492019-10-14 15:42:03 +0200238 clocks = <&zynqmp_clk UART0_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simek10a25f22023-09-18 13:22:04 +0200239 assigned-clocks = <&zynqmp_clk UART0_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100240};
241
242&uart1 {
Michal Simekebddf492019-10-14 15:42:03 +0200243 clocks = <&zynqmp_clk UART1_REF>, <&zynqmp_clk LPD_LSBUS>;
Michal Simek10a25f22023-09-18 13:22:04 +0200244 assigned-clocks = <&zynqmp_clk UART1_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100245};
246
247&usb0 {
Michal Simekebddf492019-10-14 15:42:03 +0200248 clocks = <&zynqmp_clk USB0_BUS_REF>, <&zynqmp_clk USB3_DUAL_REF>;
Michal Simekbd8ca912022-02-23 16:17:39 +0100249 assigned-clocks = <&zynqmp_clk USB0_BUS_REF>, <&zynqmp_clk USB3_DUAL_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100250};
251
Piyush Mehtac687c652022-08-23 15:03:31 +0200252&dwc3_0 {
253 clocks = <&zynqmp_clk USB3_DUAL_REF>;
254};
255
Michal Simeka6604b62017-12-08 14:50:42 +0100256&usb1 {
Michal Simekebddf492019-10-14 15:42:03 +0200257 clocks = <&zynqmp_clk USB1_BUS_REF>, <&zynqmp_clk USB3_DUAL_REF>;
Michal Simekbd8ca912022-02-23 16:17:39 +0100258 assigned-clocks = <&zynqmp_clk USB1_BUS_REF>, <&zynqmp_clk USB3_DUAL_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100259};
260
Piyush Mehtac687c652022-08-23 15:03:31 +0200261&dwc3_1 {
262 clocks = <&zynqmp_clk USB3_DUAL_REF>;
263};
264
Michal Simeka6604b62017-12-08 14:50:42 +0100265&watchdog0 {
Michal Simekebddf492019-10-14 15:42:03 +0200266 clocks = <&zynqmp_clk WDT>;
Michal Simeka6604b62017-12-08 14:50:42 +0100267};
268
Michal Simek7b6280e2018-07-18 09:25:43 +0200269&lpd_watchdog {
270 clocks = <&zynqmp_clk LPD_WDT>;
271};
272
Michal Simeka6604b62017-12-08 14:50:42 +0100273&xilinx_ams {
Michal Simekebddf492019-10-14 15:42:03 +0200274 clocks = <&zynqmp_clk AMS_REF>;
Michal Simeka6604b62017-12-08 14:50:42 +0100275};
276
Michal Simek958c0e92020-11-26 14:25:02 +0100277&zynqmp_dpdma {
Michal Simekebddf492019-10-14 15:42:03 +0200278 clocks = <&zynqmp_clk DPDMA_REF>;
Michal Simekeb10f6a2022-02-23 16:17:38 +0100279 assigned-clocks = <&zynqmp_clk DPDMA_REF>; /* apll */
Michal Simeka6604b62017-12-08 14:50:42 +0100280};
281
Michal Simek958c0e92020-11-26 14:25:02 +0100282&zynqmp_dpsub {
283 clocks = <&zynqmp_clk TOPSW_LSBUS>,
284 <&zynqmp_clk DP_AUDIO_REF>,
285 <&zynqmp_clk DP_VIDEO_REF>;
Michal Simekeb10f6a2022-02-23 16:17:38 +0100286 assigned-clocks = <&zynqmp_clk DP_STC_REF>,
287 <&zynqmp_clk DP_AUDIO_REF>,
288 <&zynqmp_clk DP_VIDEO_REF>; /* rpll, rpll, vpll */
Nava kishore Manne042ae5e2019-10-18 18:07:32 +0200289};