1*0e8011faSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*0e8011faSEmmanuel Vadot%YAML 1.2 3*0e8011faSEmmanuel Vadot--- 4*0e8011faSEmmanuel Vadot$id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml# 5*0e8011faSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*0e8011faSEmmanuel Vadot 7*0e8011faSEmmanuel Vadottitle: Spreadtrum SC9860 clock 8*0e8011faSEmmanuel Vadot 9*0e8011faSEmmanuel Vadotmaintainers: 10*0e8011faSEmmanuel Vadot - Orson Zhai <orsonzhai@gmail.com> 11*0e8011faSEmmanuel Vadot - Baolin Wang <baolin.wang7@gmail.com> 12*0e8011faSEmmanuel Vadot - Chunyan Zhang <zhang.lyra@gmail.com> 13*0e8011faSEmmanuel Vadot 14*0e8011faSEmmanuel Vadotproperties: 15*0e8011faSEmmanuel Vadot compatible: 16*0e8011faSEmmanuel Vadot enum: 17*0e8011faSEmmanuel Vadot - sprd,sc9860-agcp-gate 18*0e8011faSEmmanuel Vadot - sprd,sc9860-aonsecure-clk 19*0e8011faSEmmanuel Vadot - sprd,sc9860-aon-gate 20*0e8011faSEmmanuel Vadot - sprd,sc9860-aon-prediv 21*0e8011faSEmmanuel Vadot - sprd,sc9860-apahb-gate 22*0e8011faSEmmanuel Vadot - sprd,sc9860-apapb-gate 23*0e8011faSEmmanuel Vadot - sprd,sc9860-ap-clk 24*0e8011faSEmmanuel Vadot - sprd,sc9860-cam-clk 25*0e8011faSEmmanuel Vadot - sprd,sc9860-cam-gate 26*0e8011faSEmmanuel Vadot - sprd,sc9860-disp-clk 27*0e8011faSEmmanuel Vadot - sprd,sc9860-disp-gate 28*0e8011faSEmmanuel Vadot - sprd,sc9860-gpu-clk 29*0e8011faSEmmanuel Vadot - sprd,sc9860-pll 30*0e8011faSEmmanuel Vadot - sprd,sc9860-pmu-gate 31*0e8011faSEmmanuel Vadot - sprd,sc9860-vsp-clk 32*0e8011faSEmmanuel Vadot - sprd,sc9860-vsp-gate 33*0e8011faSEmmanuel Vadot 34*0e8011faSEmmanuel Vadot reg: 35*0e8011faSEmmanuel Vadot maxItems: 1 36*0e8011faSEmmanuel Vadot 37*0e8011faSEmmanuel Vadot clocks: 38*0e8011faSEmmanuel Vadot minItems: 1 39*0e8011faSEmmanuel Vadot maxItems: 3 40*0e8011faSEmmanuel Vadot 41*0e8011faSEmmanuel Vadot '#clock-cells': 42*0e8011faSEmmanuel Vadot const: 1 43*0e8011faSEmmanuel Vadot 44*0e8011faSEmmanuel Vadot sprd,syscon: 45*0e8011faSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 46*0e8011faSEmmanuel Vadot description: 47*0e8011faSEmmanuel Vadot phandle to the syscon which is in the same address area with the 48*0e8011faSEmmanuel Vadot clock, and so we can get regmap for the clocks from the syscon device 49*0e8011faSEmmanuel Vadot 50*0e8011faSEmmanuel Vadotrequired: 51*0e8011faSEmmanuel Vadot - compatible 52*0e8011faSEmmanuel Vadot - clocks 53*0e8011faSEmmanuel Vadot - '#clock-cells' 54*0e8011faSEmmanuel Vadot 55*0e8011faSEmmanuel VadotallOf: 56*0e8011faSEmmanuel Vadot - if: 57*0e8011faSEmmanuel Vadot properties: 58*0e8011faSEmmanuel Vadot compatible: 59*0e8011faSEmmanuel Vadot contains: 60*0e8011faSEmmanuel Vadot enum: 61*0e8011faSEmmanuel Vadot - sprd,sc9860-agcp-gate 62*0e8011faSEmmanuel Vadot - sprd,sc9860-aon-gate 63*0e8011faSEmmanuel Vadot - sprd,sc9860-apahb-gate 64*0e8011faSEmmanuel Vadot - sprd,sc9860-apapb-gate 65*0e8011faSEmmanuel Vadot - sprd,sc9860-cam-gate 66*0e8011faSEmmanuel Vadot - sprd,sc9860-disp-gate 67*0e8011faSEmmanuel Vadot - sprd,sc9860-gpu-clk 68*0e8011faSEmmanuel Vadot - sprd,sc9860-pll 69*0e8011faSEmmanuel Vadot - sprd,sc9860-pmu-gate 70*0e8011faSEmmanuel Vadot - sprd,sc9860-vsp-gate 71*0e8011faSEmmanuel Vadot then: 72*0e8011faSEmmanuel Vadot properties: 73*0e8011faSEmmanuel Vadot clocks: 74*0e8011faSEmmanuel Vadot maxItems: 1 75*0e8011faSEmmanuel Vadot - if: 76*0e8011faSEmmanuel Vadot properties: 77*0e8011faSEmmanuel Vadot compatible: 78*0e8011faSEmmanuel Vadot contains: 79*0e8011faSEmmanuel Vadot enum: 80*0e8011faSEmmanuel Vadot - sprd,sc9860-aonsecure-clk 81*0e8011faSEmmanuel Vadot - sprd,sc9860-cam-clk 82*0e8011faSEmmanuel Vadot - sprd,sc9860-disp-clk 83*0e8011faSEmmanuel Vadot - sprd,sc9860-vsp-clk 84*0e8011faSEmmanuel Vadot then: 85*0e8011faSEmmanuel Vadot properties: 86*0e8011faSEmmanuel Vadot clocks: 87*0e8011faSEmmanuel Vadot minItems: 2 88*0e8011faSEmmanuel Vadot maxItems: 2 89*0e8011faSEmmanuel Vadot - if: 90*0e8011faSEmmanuel Vadot properties: 91*0e8011faSEmmanuel Vadot compatible: 92*0e8011faSEmmanuel Vadot contains: 93*0e8011faSEmmanuel Vadot enum: 94*0e8011faSEmmanuel Vadot - sprd,sc9860-aon-prediv 95*0e8011faSEmmanuel Vadot - sprd,sc9860-ap-clk 96*0e8011faSEmmanuel Vadot then: 97*0e8011faSEmmanuel Vadot properties: 98*0e8011faSEmmanuel Vadot clocks: 99*0e8011faSEmmanuel Vadot minItems: 3 100*0e8011faSEmmanuel Vadot - if: 101*0e8011faSEmmanuel Vadot properties: 102*0e8011faSEmmanuel Vadot compatible: 103*0e8011faSEmmanuel Vadot contains: 104*0e8011faSEmmanuel Vadot enum: 105*0e8011faSEmmanuel Vadot - sprd,sc9860-aonsecure-clk 106*0e8011faSEmmanuel Vadot - sprd,sc9860-aon-prediv 107*0e8011faSEmmanuel Vadot - sprd,sc9860-ap-clk 108*0e8011faSEmmanuel Vadot - sprd,sc9860-cam-clk 109*0e8011faSEmmanuel Vadot - sprd,sc9860-disp-clk 110*0e8011faSEmmanuel Vadot - sprd,sc9860-gpu-clk 111*0e8011faSEmmanuel Vadot - sprd,sc9860-vsp-clk 112*0e8011faSEmmanuel Vadot then: 113*0e8011faSEmmanuel Vadot required: 114*0e8011faSEmmanuel Vadot - reg 115*0e8011faSEmmanuel Vadot properties: 116*0e8011faSEmmanuel Vadot sprd,syscon: false 117*0e8011faSEmmanuel Vadot - if: 118*0e8011faSEmmanuel Vadot properties: 119*0e8011faSEmmanuel Vadot compatible: 120*0e8011faSEmmanuel Vadot contains: 121*0e8011faSEmmanuel Vadot enum: 122*0e8011faSEmmanuel Vadot - sprd,sc9860-agcp-gate 123*0e8011faSEmmanuel Vadot - sprd,sc9860-aon-gate 124*0e8011faSEmmanuel Vadot - sprd,sc9860-apahb-gate 125*0e8011faSEmmanuel Vadot - sprd,sc9860-apapb-gate 126*0e8011faSEmmanuel Vadot - sprd,sc9860-cam-gate 127*0e8011faSEmmanuel Vadot - sprd,sc9860-disp-gate 128*0e8011faSEmmanuel Vadot - sprd,sc9860-pll 129*0e8011faSEmmanuel Vadot - sprd,sc9860-pmu-gate 130*0e8011faSEmmanuel Vadot - sprd,sc9860-vsp-gate 131*0e8011faSEmmanuel Vadot then: 132*0e8011faSEmmanuel Vadot required: 133*0e8011faSEmmanuel Vadot - sprd,syscon 134*0e8011faSEmmanuel Vadot properties: 135*0e8011faSEmmanuel Vadot reg: false 136*0e8011faSEmmanuel Vadot 137*0e8011faSEmmanuel VadotadditionalProperties: false 138*0e8011faSEmmanuel Vadot 139*0e8011faSEmmanuel Vadotexamples: 140*0e8011faSEmmanuel Vadot - | 141*0e8011faSEmmanuel Vadot soc { 142*0e8011faSEmmanuel Vadot #address-cells = <2>; 143*0e8011faSEmmanuel Vadot #size-cells = <2>; 144*0e8011faSEmmanuel Vadot 145*0e8011faSEmmanuel Vadot pmu-gate { 146*0e8011faSEmmanuel Vadot compatible = "sprd,sc9860-pmu-gate"; 147*0e8011faSEmmanuel Vadot clocks = <&ext_26m>; 148*0e8011faSEmmanuel Vadot #clock-cells = <1>; 149*0e8011faSEmmanuel Vadot sprd,syscon = <&pmu_regs>; 150*0e8011faSEmmanuel Vadot }; 151*0e8011faSEmmanuel Vadot 152*0e8011faSEmmanuel Vadot clock-controller@20000000 { 153*0e8011faSEmmanuel Vadot compatible = "sprd,sc9860-ap-clk"; 154*0e8011faSEmmanuel Vadot reg = <0 0x20000000 0 0x400>; 155*0e8011faSEmmanuel Vadot clocks = <&ext_26m>, <&pll 0>, <&pmu_gate 0>; 156*0e8011faSEmmanuel Vadot #clock-cells = <1>; 157*0e8011faSEmmanuel Vadot }; 158*0e8011faSEmmanuel Vadot }; 159*0e8011faSEmmanuel Vadot... 160