19c8a47b4SRajan Vaja// SPDX-License-Identifier: GPL-2.0+
29c8a47b4SRajan Vaja/*
39c8a47b4SRajan Vaja * Clock specification for Xilinx ZynqMP
49c8a47b4SRajan Vaja *
5637902f7SMichal Simek * (C) Copyright 2017 - 2022, Xilinx, Inc.
6637902f7SMichal Simek * (C) Copyright 2022 - 2023, Advanced Micro Devices, Inc.
79c8a47b4SRajan Vaja *
84e4ddd3dSMichal Simek * Michal Simek <michal.simek@amd.com>
99c8a47b4SRajan Vaja */
109c8a47b4SRajan Vaja
119c8a47b4SRajan Vaja#include <dt-bindings/clock/xlnx-zynqmp-clk.h>
129c8a47b4SRajan Vaja/ {
139c8a47b4SRajan Vaja	pss_ref_clk: pss_ref_clk {
145be4fbbfSMichal Simek		bootph-all;
159c8a47b4SRajan Vaja		compatible = "fixed-clock";
169c8a47b4SRajan Vaja		#clock-cells = <0>;
179c8a47b4SRajan Vaja		clock-frequency = <33333333>;
189c8a47b4SRajan Vaja	};
199c8a47b4SRajan Vaja
209c8a47b4SRajan Vaja	video_clk: video_clk {
215be4fbbfSMichal Simek		bootph-all;
229c8a47b4SRajan Vaja		compatible = "fixed-clock";
239c8a47b4SRajan Vaja		#clock-cells = <0>;
249c8a47b4SRajan Vaja		clock-frequency = <27000000>;
259c8a47b4SRajan Vaja	};
269c8a47b4SRajan Vaja
279c8a47b4SRajan Vaja	pss_alt_ref_clk: pss_alt_ref_clk {
285be4fbbfSMichal Simek		bootph-all;
299c8a47b4SRajan Vaja		compatible = "fixed-clock";
309c8a47b4SRajan Vaja		#clock-cells = <0>;
319c8a47b4SRajan Vaja		clock-frequency = <0>;
329c8a47b4SRajan Vaja	};
339c8a47b4SRajan Vaja
349c8a47b4SRajan Vaja	gt_crx_ref_clk: gt_crx_ref_clk {
355be4fbbfSMichal Simek		bootph-all;
369c8a47b4SRajan Vaja		compatible = "fixed-clock";
379c8a47b4SRajan Vaja		#clock-cells = <0>;
389c8a47b4SRajan Vaja		clock-frequency = <108000000>;
399c8a47b4SRajan Vaja	};
409c8a47b4SRajan Vaja
419c8a47b4SRajan Vaja	aux_ref_clk: aux_ref_clk {
425be4fbbfSMichal Simek		bootph-all;
439c8a47b4SRajan Vaja		compatible = "fixed-clock";
449c8a47b4SRajan Vaja		#clock-cells = <0>;
459c8a47b4SRajan Vaja		clock-frequency = <27000000>;
469c8a47b4SRajan Vaja	};
479c8a47b4SRajan Vaja};
489c8a47b4SRajan Vaja
49da2618b5SMichal Simek&zynqmp_firmware {
50da2618b5SMichal Simek	zynqmp_clk: clock-controller {
515be4fbbfSMichal Simek		bootph-all;
52da2618b5SMichal Simek		#clock-cells = <1>;
53da2618b5SMichal Simek		compatible = "xlnx,zynqmp-clk";
54da2618b5SMichal Simek		clocks = <&pss_ref_clk>, <&video_clk>, <&pss_alt_ref_clk>,
55da2618b5SMichal Simek			 <&aux_ref_clk>, <&gt_crx_ref_clk>;
56da2618b5SMichal Simek		clock-names = "pss_ref_clk", "video_clk", "pss_alt_ref_clk",
57da2618b5SMichal Simek			      "aux_ref_clk", "gt_crx_ref_clk";
58da2618b5SMichal Simek	};
59da2618b5SMichal Simek};
60da2618b5SMichal Simek
619c8a47b4SRajan Vaja&can0 {
629c8a47b4SRajan Vaja	clocks = <&zynqmp_clk CAN0_REF>, <&zynqmp_clk LPD_LSBUS>;
639c8a47b4SRajan Vaja};
649c8a47b4SRajan Vaja
659c8a47b4SRajan Vaja&can1 {
669c8a47b4SRajan Vaja	clocks = <&zynqmp_clk CAN1_REF>, <&zynqmp_clk LPD_LSBUS>;
679c8a47b4SRajan Vaja};
689c8a47b4SRajan Vaja
699c8a47b4SRajan Vaja&cpu0 {
709c8a47b4SRajan Vaja	clocks = <&zynqmp_clk ACPU>;
719c8a47b4SRajan Vaja};
729c8a47b4SRajan Vaja
739c8a47b4SRajan Vaja&fpd_dma_chan1 {
749c8a47b4SRajan Vaja	clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
759c8a47b4SRajan Vaja};
769c8a47b4SRajan Vaja
779c8a47b4SRajan Vaja&fpd_dma_chan2 {
789c8a47b4SRajan Vaja	clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
799c8a47b4SRajan Vaja};
809c8a47b4SRajan Vaja
819c8a47b4SRajan Vaja&fpd_dma_chan3 {
829c8a47b4SRajan Vaja	clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
839c8a47b4SRajan Vaja};
849c8a47b4SRajan Vaja
859c8a47b4SRajan Vaja&fpd_dma_chan4 {
869c8a47b4SRajan Vaja	clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
879c8a47b4SRajan Vaja};
889c8a47b4SRajan Vaja
899c8a47b4SRajan Vaja&fpd_dma_chan5 {
909c8a47b4SRajan Vaja	clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
919c8a47b4SRajan Vaja};
929c8a47b4SRajan Vaja
939c8a47b4SRajan Vaja&fpd_dma_chan6 {
949c8a47b4SRajan Vaja	clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
959c8a47b4SRajan Vaja};
969c8a47b4SRajan Vaja
979c8a47b4SRajan Vaja&fpd_dma_chan7 {
989c8a47b4SRajan Vaja	clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
999c8a47b4SRajan Vaja};
1009c8a47b4SRajan Vaja
1019c8a47b4SRajan Vaja&fpd_dma_chan8 {
1029c8a47b4SRajan Vaja	clocks = <&zynqmp_clk GDMA_REF>, <&zynqmp_clk LPD_LSBUS>;
1039c8a47b4SRajan Vaja};
1049c8a47b4SRajan Vaja
10537e78949SParth Gajjar&gpu {
10637e78949SParth Gajjar	clocks = <&zynqmp_clk GPU_REF>, <&zynqmp_clk GPU_PP0_REF>;
10737e78949SParth Gajjar};
10837e78949SParth Gajjar
1099c8a47b4SRajan Vaja&lpd_dma_chan1 {
1109c8a47b4SRajan Vaja	clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
1119c8a47b4SRajan Vaja};
1129c8a47b4SRajan Vaja
1139c8a47b4SRajan Vaja&lpd_dma_chan2 {
1149c8a47b4SRajan Vaja	clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
1159c8a47b4SRajan Vaja};
1169c8a47b4SRajan Vaja
1179c8a47b4SRajan Vaja&lpd_dma_chan3 {
1189c8a47b4SRajan Vaja	clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
1199c8a47b4SRajan Vaja};
1209c8a47b4SRajan Vaja
1219c8a47b4SRajan Vaja&lpd_dma_chan4 {
1229c8a47b4SRajan Vaja	clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
1239c8a47b4SRajan Vaja};
1249c8a47b4SRajan Vaja
1259c8a47b4SRajan Vaja&lpd_dma_chan5 {
1269c8a47b4SRajan Vaja	clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
1279c8a47b4SRajan Vaja};
1289c8a47b4SRajan Vaja
1299c8a47b4SRajan Vaja&lpd_dma_chan6 {
1309c8a47b4SRajan Vaja	clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
1319c8a47b4SRajan Vaja};
1329c8a47b4SRajan Vaja
1339c8a47b4SRajan Vaja&lpd_dma_chan7 {
1349c8a47b4SRajan Vaja	clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
1359c8a47b4SRajan Vaja};
1369c8a47b4SRajan Vaja
1379c8a47b4SRajan Vaja&lpd_dma_chan8 {
1389c8a47b4SRajan Vaja	clocks = <&zynqmp_clk ADMA_REF>, <&zynqmp_clk LPD_LSBUS>;
1399c8a47b4SRajan Vaja};
1409c8a47b4SRajan Vaja
14141b452a5SMichal Simek&nand0 {
14241b452a5SMichal Simek	clocks = <&zynqmp_clk NAND_REF>, <&zynqmp_clk LPD_LSBUS>;
14341b452a5SMichal Simek};
14441b452a5SMichal Simek
1459c8a47b4SRajan Vaja&gem0 {
1469c8a47b4SRajan Vaja	clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM0_REF>,
1479c8a47b4SRajan Vaja		 <&zynqmp_clk GEM0_TX>, <&zynqmp_clk GEM0_RX>,
1489c8a47b4SRajan Vaja		 <&zynqmp_clk GEM_TSU>;
149*233e6e9dSHarini Katakam	assigned-clocks = <&zynqmp_clk GEM_TSU>;
1509c8a47b4SRajan Vaja};
1519c8a47b4SRajan Vaja
1529c8a47b4SRajan Vaja&gem1 {
1539c8a47b4SRajan Vaja	clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM1_REF>,
1549c8a47b4SRajan Vaja		 <&zynqmp_clk GEM1_TX>, <&zynqmp_clk GEM1_RX>,
1559c8a47b4SRajan Vaja		 <&zynqmp_clk GEM_TSU>;
156*233e6e9dSHarini Katakam	assigned-clocks = <&zynqmp_clk GEM_TSU>;
1579c8a47b4SRajan Vaja};
1589c8a47b4SRajan Vaja
1599c8a47b4SRajan Vaja&gem2 {
1609c8a47b4SRajan Vaja	clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM2_REF>,
1619c8a47b4SRajan Vaja		 <&zynqmp_clk GEM2_TX>, <&zynqmp_clk GEM2_RX>,
1629c8a47b4SRajan Vaja		 <&zynqmp_clk GEM_TSU>;
163*233e6e9dSHarini Katakam	assigned-clocks = <&zynqmp_clk GEM_TSU>;
1649c8a47b4SRajan Vaja};
1659c8a47b4SRajan Vaja
1669c8a47b4SRajan Vaja&gem3 {
1679c8a47b4SRajan Vaja	clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM3_REF>,
1689c8a47b4SRajan Vaja		 <&zynqmp_clk GEM3_TX>, <&zynqmp_clk GEM3_RX>,
1699c8a47b4SRajan Vaja		 <&zynqmp_clk GEM_TSU>;
170*233e6e9dSHarini Katakam	assigned-clocks = <&zynqmp_clk GEM_TSU>;
1719c8a47b4SRajan Vaja};
1729c8a47b4SRajan Vaja
1739c8a47b4SRajan Vaja&gpio {
1749c8a47b4SRajan Vaja	clocks = <&zynqmp_clk LPD_LSBUS>;
1759c8a47b4SRajan Vaja};
1769c8a47b4SRajan Vaja
1779c8a47b4SRajan Vaja&i2c0 {
1789c8a47b4SRajan Vaja	clocks = <&zynqmp_clk I2C0_REF>;
1799c8a47b4SRajan Vaja};
1809c8a47b4SRajan Vaja
1819c8a47b4SRajan Vaja&i2c1 {
1829c8a47b4SRajan Vaja	clocks = <&zynqmp_clk I2C1_REF>;
1839c8a47b4SRajan Vaja};
1849c8a47b4SRajan Vaja
1859c8a47b4SRajan Vaja&pcie {
1869c8a47b4SRajan Vaja	clocks = <&zynqmp_clk PCIE_REF>;
1879c8a47b4SRajan Vaja};
1889c8a47b4SRajan Vaja
189cbf8bed0SMichal Simek&qspi {
190cbf8bed0SMichal Simek	clocks = <&zynqmp_clk QSPI_REF>, <&zynqmp_clk LPD_LSBUS>;
191cbf8bed0SMichal Simek};
192cbf8bed0SMichal Simek
1939c8a47b4SRajan Vaja&sata {
1949c8a47b4SRajan Vaja	clocks = <&zynqmp_clk SATA_REF>;
1959c8a47b4SRajan Vaja};
1969c8a47b4SRajan Vaja
1979c8a47b4SRajan Vaja&sdhci0 {
1989c8a47b4SRajan Vaja	clocks = <&zynqmp_clk SDIO0_REF>, <&zynqmp_clk LPD_LSBUS>;
199637902f7SMichal Simek	assigned-clocks = <&zynqmp_clk SDIO0_REF>;
2009c8a47b4SRajan Vaja};
2019c8a47b4SRajan Vaja
2029c8a47b4SRajan Vaja&sdhci1 {
2039c8a47b4SRajan Vaja	clocks = <&zynqmp_clk SDIO1_REF>, <&zynqmp_clk LPD_LSBUS>;
204637902f7SMichal Simek	assigned-clocks = <&zynqmp_clk SDIO1_REF>;
2059c8a47b4SRajan Vaja};
2069c8a47b4SRajan Vaja
2079c8a47b4SRajan Vaja&spi0 {
2089c8a47b4SRajan Vaja	clocks = <&zynqmp_clk SPI0_REF>, <&zynqmp_clk LPD_LSBUS>;
2099c8a47b4SRajan Vaja};
2109c8a47b4SRajan Vaja
2119c8a47b4SRajan Vaja&spi1 {
2129c8a47b4SRajan Vaja	clocks = <&zynqmp_clk SPI1_REF>, <&zynqmp_clk LPD_LSBUS>;
2139c8a47b4SRajan Vaja};
2149c8a47b4SRajan Vaja
2159c8a47b4SRajan Vaja&ttc0 {
2169c8a47b4SRajan Vaja	clocks = <&zynqmp_clk LPD_LSBUS>;
2179c8a47b4SRajan Vaja};
2189c8a47b4SRajan Vaja
2199c8a47b4SRajan Vaja&ttc1 {
2209c8a47b4SRajan Vaja	clocks = <&zynqmp_clk LPD_LSBUS>;
2219c8a47b4SRajan Vaja};
2229c8a47b4SRajan Vaja
2239c8a47b4SRajan Vaja&ttc2 {
2249c8a47b4SRajan Vaja	clocks = <&zynqmp_clk LPD_LSBUS>;
2259c8a47b4SRajan Vaja};
2269c8a47b4SRajan Vaja
2279c8a47b4SRajan Vaja&ttc3 {
2289c8a47b4SRajan Vaja	clocks = <&zynqmp_clk LPD_LSBUS>;
2299c8a47b4SRajan Vaja};
2309c8a47b4SRajan Vaja
2319c8a47b4SRajan Vaja&uart0 {
2329c8a47b4SRajan Vaja	clocks = <&zynqmp_clk UART0_REF>, <&zynqmp_clk LPD_LSBUS>;
2339c8a47b4SRajan Vaja};
2349c8a47b4SRajan Vaja
2359c8a47b4SRajan Vaja&uart1 {
2369c8a47b4SRajan Vaja	clocks = <&zynqmp_clk UART1_REF>, <&zynqmp_clk LPD_LSBUS>;
2379c8a47b4SRajan Vaja};
2389c8a47b4SRajan Vaja
239d8b1c3d0SSean Anderson&dwc3_0 {
2409c8a47b4SRajan Vaja	clocks = <&zynqmp_clk USB0_BUS_REF>, <&zynqmp_clk USB3_DUAL_REF>;
2419c8a47b4SRajan Vaja};
2429c8a47b4SRajan Vaja
243d8b1c3d0SSean Anderson&dwc3_1 {
2449c8a47b4SRajan Vaja	clocks = <&zynqmp_clk USB1_BUS_REF>, <&zynqmp_clk USB3_DUAL_REF>;
2459c8a47b4SRajan Vaja};
2469c8a47b4SRajan Vaja
2479c8a47b4SRajan Vaja&watchdog0 {
2489c8a47b4SRajan Vaja	clocks = <&zynqmp_clk WDT>;
2499c8a47b4SRajan Vaja};
2501f9fcf65SMichal Simek
2511f9fcf65SMichal Simek&lpd_watchdog {
2521f9fcf65SMichal Simek	clocks = <&zynqmp_clk LPD_WDT>;
2531f9fcf65SMichal Simek};
2547b6714b3SLaurent Pinchart
255271c1fa0SRobert Hancock&xilinx_ams {
256271c1fa0SRobert Hancock	clocks = <&zynqmp_clk AMS_REF>;
257271c1fa0SRobert Hancock};
258271c1fa0SRobert Hancock
2597b6714b3SLaurent Pinchart&zynqmp_dpdma {
2607b6714b3SLaurent Pinchart	clocks = <&zynqmp_clk DPDMA_REF>;
261116de80aSMichal Simek	assigned-clocks = <&zynqmp_clk DPDMA_REF>; /* apll */
2627b6714b3SLaurent Pinchart};
263b0f89cf5SMichal Simek
264b0f89cf5SMichal Simek&zynqmp_dpsub {
265b0f89cf5SMichal Simek	clocks = <&zynqmp_clk TOPSW_LSBUS>,
266b0f89cf5SMichal Simek		 <&zynqmp_clk DP_AUDIO_REF>,
267b0f89cf5SMichal Simek		 <&zynqmp_clk DP_VIDEO_REF>;
268116de80aSMichal Simek	assigned-clocks = <&zynqmp_clk DP_STC_REF>,
269116de80aSMichal Simek			  <&zynqmp_clk DP_AUDIO_REF>,
270116de80aSMichal Simek			  <&zynqmp_clk DP_VIDEO_REF>;  /* rpll, rpll, vpll */
271b0f89cf5SMichal Simek};
272