135254680SRajan Vaja# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 235254680SRajan Vaja%YAML 1.2 335254680SRajan Vaja--- 404dbd865SRob Herring$id: http://devicetree.org/schemas/clock/xlnx,versal-clk.yaml# 535254680SRajan Vaja$schema: http://devicetree.org/meta-schemas/core.yaml# 635254680SRajan Vaja 735254680SRajan Vajatitle: Xilinx Versal clock controller 835254680SRajan Vaja 935254680SRajan Vajamaintainers: 10d5c421d2SMichal Simek - Michal Simek <michal.simek@amd.com> 1135254680SRajan Vaja 1235254680SRajan Vajadescription: | 1335254680SRajan Vaja The clock controller is a hardware block of Xilinx versal clock tree. It 1435254680SRajan Vaja reads required input clock frequencies from the devicetree and acts as clock 1535254680SRajan Vaja provider for all clock consumers of PS clocks. 1635254680SRajan Vaja 1735254680SRajan Vajaproperties: 1835254680SRajan Vaja compatible: 1964446fe0SShubhrajyoti Datta oneOf: 20*03d4a100SShubhrajyoti Datta - enum: 21*03d4a100SShubhrajyoti Datta - xlnx,versal-clk 22*03d4a100SShubhrajyoti Datta - xlnx,zynqmp-clk 2364446fe0SShubhrajyoti Datta - items: 2464446fe0SShubhrajyoti Datta - enum: 2564446fe0SShubhrajyoti Datta - xlnx,versal-net-clk 2664446fe0SShubhrajyoti Datta - const: xlnx,versal-clk 2735254680SRajan Vaja 2835254680SRajan Vaja "#clock-cells": 2935254680SRajan Vaja const: 1 3035254680SRajan Vaja 3135254680SRajan Vaja clocks: 3235254680SRajan Vaja description: List of clock specifiers which are external input 3335254680SRajan Vaja clocks to the given clock controller. 34*03d4a100SShubhrajyoti Datta minItems: 3 35*03d4a100SShubhrajyoti Datta maxItems: 8 36*03d4a100SShubhrajyoti Datta 37*03d4a100SShubhrajyoti Datta clock-names: 38*03d4a100SShubhrajyoti Datta minItems: 3 39*03d4a100SShubhrajyoti Datta maxItems: 8 40*03d4a100SShubhrajyoti Datta 41*03d4a100SShubhrajyoti Dattarequired: 42*03d4a100SShubhrajyoti Datta - compatible 43*03d4a100SShubhrajyoti Datta - "#clock-cells" 44*03d4a100SShubhrajyoti Datta - clocks 45*03d4a100SShubhrajyoti Datta - clock-names 46*03d4a100SShubhrajyoti Datta 47*03d4a100SShubhrajyoti DattaadditionalProperties: false 48*03d4a100SShubhrajyoti Datta 49*03d4a100SShubhrajyoti DattaallOf: 50*03d4a100SShubhrajyoti Datta - if: 51*03d4a100SShubhrajyoti Datta properties: 52*03d4a100SShubhrajyoti Datta compatible: 53*03d4a100SShubhrajyoti Datta contains: 54*03d4a100SShubhrajyoti Datta enum: 55*03d4a100SShubhrajyoti Datta - xlnx,versal-clk 56*03d4a100SShubhrajyoti Datta 57*03d4a100SShubhrajyoti Datta then: 58*03d4a100SShubhrajyoti Datta properties: 59*03d4a100SShubhrajyoti Datta clocks: 6035254680SRajan Vaja items: 6135254680SRajan Vaja - description: reference clock 6235254680SRajan Vaja - description: alternate reference clock 6335254680SRajan Vaja - description: alternate reference clock for programmable logic 6435254680SRajan Vaja 6535254680SRajan Vaja clock-names: 6635254680SRajan Vaja items: 6735254680SRajan Vaja - const: ref 6835254680SRajan Vaja - const: alt_ref 6935254680SRajan Vaja - const: pl_alt_ref 7035254680SRajan Vaja 71*03d4a100SShubhrajyoti Datta - if: 72*03d4a100SShubhrajyoti Datta properties: 73*03d4a100SShubhrajyoti Datta compatible: 74*03d4a100SShubhrajyoti Datta contains: 75*03d4a100SShubhrajyoti Datta enum: 76*03d4a100SShubhrajyoti Datta - xlnx,zynqmp-clk 7735254680SRajan Vaja 78*03d4a100SShubhrajyoti Datta then: 79*03d4a100SShubhrajyoti Datta properties: 80*03d4a100SShubhrajyoti Datta clocks: 81*03d4a100SShubhrajyoti Datta minItems: 5 82*03d4a100SShubhrajyoti Datta items: 83*03d4a100SShubhrajyoti Datta - description: PS reference clock 84*03d4a100SShubhrajyoti Datta - description: reference clock for video system 85*03d4a100SShubhrajyoti Datta - description: alternative PS reference clock 86*03d4a100SShubhrajyoti Datta - description: auxiliary reference clock 87*03d4a100SShubhrajyoti Datta - description: transceiver reference clock 88*03d4a100SShubhrajyoti Datta - description: (E)MIO clock source (Optional clock) 89*03d4a100SShubhrajyoti Datta - description: GEM emio clock (Optional clock) 90*03d4a100SShubhrajyoti Datta - description: Watchdog external clock (Optional clock) 91*03d4a100SShubhrajyoti Datta 92*03d4a100SShubhrajyoti Datta clock-names: 93*03d4a100SShubhrajyoti Datta minItems: 5 94*03d4a100SShubhrajyoti Datta items: 95*03d4a100SShubhrajyoti Datta - const: pss_ref_clk 96*03d4a100SShubhrajyoti Datta - const: video_clk 97*03d4a100SShubhrajyoti Datta - const: pss_alt_ref_clk 98*03d4a100SShubhrajyoti Datta - const: aux_ref_clk 99*03d4a100SShubhrajyoti Datta - const: gt_crx_ref_clk 100*03d4a100SShubhrajyoti Datta - pattern: "^mio_clk[00-77]+.*$" 101*03d4a100SShubhrajyoti Datta - pattern: "gem[0-3]+_emio_clk.*$" 102*03d4a100SShubhrajyoti Datta - pattern: "swdt[0-1]+_ext_clk.*$" 10335254680SRajan Vaja 10435254680SRajan Vajaexamples: 10535254680SRajan Vaja - | 10635254680SRajan Vaja firmware { 10735254680SRajan Vaja zynqmp_firmware: zynqmp-firmware { 10835254680SRajan Vaja compatible = "xlnx,zynqmp-firmware"; 10935254680SRajan Vaja method = "smc"; 11035254680SRajan Vaja versal_clk: clock-controller { 11135254680SRajan Vaja #clock-cells = <1>; 11235254680SRajan Vaja compatible = "xlnx,versal-clk"; 11335254680SRajan Vaja clocks = <&ref>, <&alt_ref>, <&pl_alt_ref>; 11435254680SRajan Vaja clock-names = "ref", "alt_ref", "pl_alt_ref"; 11535254680SRajan Vaja }; 11635254680SRajan Vaja }; 11735254680SRajan Vaja }; 118*03d4a100SShubhrajyoti Datta 119*03d4a100SShubhrajyoti Datta clock-controller { 120*03d4a100SShubhrajyoti Datta #clock-cells = <1>; 121*03d4a100SShubhrajyoti Datta compatible = "xlnx,zynqmp-clk"; 122*03d4a100SShubhrajyoti Datta clocks = <&pss_ref_clk>, <&video_clk>, <&pss_alt_ref_clk>, 123*03d4a100SShubhrajyoti Datta <&aux_ref_clk>, <>_crx_ref_clk>; 124*03d4a100SShubhrajyoti Datta clock-names = "pss_ref_clk", "video_clk", "pss_alt_ref_clk", 125*03d4a100SShubhrajyoti Datta "aux_ref_clk", "gt_crx_ref_clk"; 126*03d4a100SShubhrajyoti Datta }; 12735254680SRajan Vaja... 128