1 -----------------------------------------------------------------
2 Device Tree Bindings for the Xilinx Zynq MPSoC Firmware Interface
3 -----------------------------------------------------------------
5 The zynqmp-firmware node describes the interface to platform firmware.
6 ZynqMP has an interface to communicate with secure firmware. Firmware
7 driver provides an interface to firmware APIs. Interface APIs can be
8 used by any driver to communicate to PMUFW(Platform Management Unit).
9 These requests include clock management, pin control, device control,
10 power management service, FPGA service and other platform management
14 - compatible: Must contain: "xlnx,zynqmp-firmware"
15 - method: The method of calling the PM-API firmware layer.
17 - "smc" : SMC #0, following the SMCCC
18 - "hvc" : HVC #0, following the SMCCC
20 --------------------------------------------------------------------------
21 Device Tree Clock bindings for the Zynq Ultrascale+ MPSoC controlled using
22 Zynq MPSoC firmware interface
23 --------------------------------------------------------------------------
24 The clock controller is a h/w block of Zynq Ultrascale+ MPSoC clock
25 tree. It reads required input clock frequencies from the devicetree and acts
26 as clock provider for all clock consumers of PS clocks.
28 See clock_bindings.txt for more information on the generic clock bindings.
31 - #clock-cells: Must be 1
32 - compatible: Must contain: "xlnx,zynqmp-clk"
33 - clocks: List of clock specifiers which are external input
34 clocks to the given clock controller. Please refer
35 the next section to find the input clocks for a
37 - clock-names: List of clock names which are exteral input clocks
38 to the given clock controller. Please refer to the
39 clock bindings for more details.
41 Input clocks for zynqmp Ultrascale+ clock controller:
43 The Zynq UltraScale+ MPSoC has one primary and four alternative reference clock
44 inputs. These required clock inputs are:
45 - pss_ref_clk (PS reference clock)
46 - video_clk (reference clock for video system )
47 - pss_alt_ref_clk (alternative PS reference clock)
49 - gt_crx_ref_clk (transceiver reference clock)
51 The following strings are optional parameters to the 'clock-names' property in
52 order to provide an optional (E)MIO clock source:
59 - mio_clk_XX # with XX = 00..77
60 - mio_clk_50_or_51 #for the mux clock to gem tsu from 50 or 51
63 Output clocks are registered based on clock information received
64 from firmware. Output clocks indexes are mentioned in
65 include/dt-bindings/clock/xlnx,zynqmp-clk.h.
72 zynqmp_firmware: zynqmp-firmware {
73 compatible = "xlnx,zynqmp-firmware";
75 zynqmp_clk: clock-controller {
77 compatible = "xlnx,zynqmp-clk";
78 clocks = <&pss_ref_clk>, <&video_clk>, <&pss_alt_ref_clk>, <&aux_ref_clk>, <>_crx_ref_clk>;
79 clock-names = "pss_ref_clk", "video_clk", "pss_alt_ref_clk","aux_ref_clk", "gt_crx_ref_clk";