summaryrefslogtreecommitdiffstats
path: root/arch/arm/dts/zynqmp-clk.dtsi
blob: 68ece9aa6732a20dcb4363bec930d3aaac34a183 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
// SPDX-License-Identifier: GPL-2.0+
/*
 * Clock specification for Xilinx ZynqMP
 *
 * (C) Copyright 2017, Xilinx, Inc.
 *
 * Michal Simek <michal.simek@xilinx.com>
 */

#include <dt-bindings/clock/xlnx-zynqmp-clk.h>

&zynqmp_firmware {
       zynqmp_clk: clock-controller {
               #clock-cells = <1>;
               compatible = "xlnx,zynqmp-clk";
               clocks = <&pss_ref_clk>, <&video_clk>, <&pss_alt_ref_clk>, <&aux_ref_clk>, <&gt_crx_ref_clk>;
               clock-names = "pss_ref_clk", "video_clk", "pss_alt_ref_clk", "aux_ref_clk", "gt_crx_ref_clk";
       };
};

/ {
	pss_ref_clk: pss_ref_clk {
		compatible = "fixed-clock";
		#clock-cells = <0>;
		clock-frequency = <33333333>;
	};

	video_clk: video_clk {
		compatible = "fixed-clock";
		#clock-cells = <0>;
		clock-frequency = <27000000>;
	};

	pss_alt_ref_clk: pss_alt_ref_clk {
		compatible = "fixed-clock";
		#clock-cells = <0>;
		clock-frequency = <0>;
	};

	gt_crx_ref_clk: gt_crx_ref_clk {
		compatible = "fixed-clock";
		#clock-cells = <0>;
		clock-frequency = <108000000>;
	};

	aux_ref_clk: aux_ref_clk {
		compatible = "fixed-clock";
		#clock-cells = <0>;
		clock-frequency = <27000000>;
	};
};

&can0 {
	clocks = <&zynqmp_clk CAN0_REF>, <&zynqmp_clk LPD_LSBUS>;
};

&can1 {
	clocks = <&zynqmp_clk CAN1_REF>, <&zynqmp_clk LPD_LSBUS>;
};

&cpu0 {
	clocks = <&zynqmp_clk ACPU>;
};

&gem0 {
	clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM0_TX>, <&zynqmp_clk GEM0_REF>, <&zynqmp_clk GEM_TSU>;
	clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
};

&gem1 {
	clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM1_TX>, <&zynqmp_clk GEM1_REF>, <&zynqmp_clk GEM_TSU>;
	clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
};

&gem2 {
	clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM2_TX>, <&zynqmp_clk GEM2_REF>, <&zynqmp_clk GEM_TSU>;
	clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
};

&gem3 {
	clocks = <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk LPD_LSBUS>, <&zynqmp_clk GEM3_TX>, <&zynqmp_clk GEM3_REF>, <&zynqmp_clk GEM_TSU>;
	clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
};

&gpio {
	clocks = <&zynqmp_clk LPD_LSBUS>;
};

&i2c0 {
	clocks = <&zynqmp_clk I2C0_REF>;
};

&i2c1 {
	clocks = <&zynqmp_clk I2C1_REF>;
};

&pcie {
	clocks = <&zynqmp_clk PCIE_REF>;
};

&sata {
	clocks = <&zynqmp_clk SATA_REF>;
};

&sdhci0 {
	clocks = <&zynqmp_clk SDIO0_REF>, <&zynqmp_clk LPD_LSBUS>;
};

&sdhci1 {
	clocks = <&zynqmp_clk SDIO1_REF>, <&zynqmp_clk LPD_LSBUS>;
};

&spi0 {
	clocks = <&zynqmp_clk SPI0_REF>, <&zynqmp_clk LPD_LSBUS>;
};

&spi1 {
	clocks = <&zynqmp_clk SPI0_REF>, <&zynqmp_clk LPD_LSBUS>;
};

&ttc0 {
	clocks = <&zynqmp_clk LPD_LSBUS>;
};

&ttc1 {
	clocks = <&zynqmp_clk LPD_LSBUS>;
};

&ttc2 {
	clocks = <&zynqmp_clk LPD_LSBUS>;
};

&ttc3 {
	clocks = <&zynqmp_clk LPD_LSBUS>;
};

&uart0 {
	clocks = <&zynqmp_clk UART0_REF>, <&zynqmp_clk LPD_LSBUS>;
};

&uart1 {
	clocks = <&zynqmp_clk UART1_REF>, <&zynqmp_clk LPD_LSBUS>;
};

&usb0 {
	clocks = <&zynqmp_clk USB0_BUS_REF>, <&zynqmp_clk USB3_DUAL_REF>;
};

&usb1 {
	clocks = <&zynqmp_clk USB1_BUS_REF>, <&zynqmp_clk USB3_DUAL_REF>;
};

&watchdog0 {
	clocks = <&zynqmp_clk WDT>;
};