1*4882a593Smuzhiyun# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*4882a593Smuzhiyun# Copyright 2019 BayLibre, SAS 3*4882a593Smuzhiyun%YAML 1.2 4*4882a593Smuzhiyun--- 5*4882a593Smuzhiyun$id: "http://devicetree.org/schemas/power/amlogic,meson-ee-pwrc.yaml#" 6*4882a593Smuzhiyun$schema: "http://devicetree.org/meta-schemas/core.yaml#" 7*4882a593Smuzhiyun 8*4882a593Smuzhiyuntitle: Amlogic Meson Everything-Else Power Domains 9*4882a593Smuzhiyun 10*4882a593Smuzhiyunmaintainers: 11*4882a593Smuzhiyun - Neil Armstrong <narmstrong@baylibre.com> 12*4882a593Smuzhiyun 13*4882a593Smuzhiyundescription: |+ 14*4882a593Smuzhiyun The Everything-Else Power Domains node should be the child of a syscon 15*4882a593Smuzhiyun node with the required property: 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun - compatible: Should be the following: 18*4882a593Smuzhiyun "amlogic,meson-gx-hhi-sysctrl", "simple-mfd", "syscon" 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun Refer to the the bindings described in 21*4882a593Smuzhiyun Documentation/devicetree/bindings/mfd/syscon.yaml 22*4882a593Smuzhiyun 23*4882a593Smuzhiyunproperties: 24*4882a593Smuzhiyun compatible: 25*4882a593Smuzhiyun enum: 26*4882a593Smuzhiyun - amlogic,meson8-pwrc 27*4882a593Smuzhiyun - amlogic,meson8b-pwrc 28*4882a593Smuzhiyun - amlogic,meson8m2-pwrc 29*4882a593Smuzhiyun - amlogic,meson-gxbb-pwrc 30*4882a593Smuzhiyun - amlogic,meson-axg-pwrc 31*4882a593Smuzhiyun - amlogic,meson-g12a-pwrc 32*4882a593Smuzhiyun - amlogic,meson-sm1-pwrc 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun clocks: 35*4882a593Smuzhiyun minItems: 1 36*4882a593Smuzhiyun maxItems: 2 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun clock-names: 39*4882a593Smuzhiyun minItems: 1 40*4882a593Smuzhiyun maxItems: 2 41*4882a593Smuzhiyun items: 42*4882a593Smuzhiyun - const: vpu 43*4882a593Smuzhiyun - const: vapb 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun resets: 46*4882a593Smuzhiyun minItems: 5 47*4882a593Smuzhiyun maxItems: 12 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun reset-names: 50*4882a593Smuzhiyun minItems: 5 51*4882a593Smuzhiyun maxItems: 12 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun "#power-domain-cells": 54*4882a593Smuzhiyun const: 1 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun amlogic,ao-sysctrl: 57*4882a593Smuzhiyun description: phandle to the AO sysctrl node 58*4882a593Smuzhiyun $ref: /schemas/types.yaml#/definitions/phandle 59*4882a593Smuzhiyun 60*4882a593SmuzhiyunallOf: 61*4882a593Smuzhiyun - if: 62*4882a593Smuzhiyun properties: 63*4882a593Smuzhiyun compatible: 64*4882a593Smuzhiyun enum: 65*4882a593Smuzhiyun - amlogic,meson8b-pwrc 66*4882a593Smuzhiyun - amlogic,meson8m2-pwrc 67*4882a593Smuzhiyun then: 68*4882a593Smuzhiyun properties: 69*4882a593Smuzhiyun reset-names: 70*4882a593Smuzhiyun items: 71*4882a593Smuzhiyun - const: dblk 72*4882a593Smuzhiyun - const: pic_dc 73*4882a593Smuzhiyun - const: hdmi_apb 74*4882a593Smuzhiyun - const: hdmi_system 75*4882a593Smuzhiyun - const: venci 76*4882a593Smuzhiyun - const: vencp 77*4882a593Smuzhiyun - const: vdac 78*4882a593Smuzhiyun - const: vencl 79*4882a593Smuzhiyun - const: viu 80*4882a593Smuzhiyun - const: venc 81*4882a593Smuzhiyun - const: rdma 82*4882a593Smuzhiyun required: 83*4882a593Smuzhiyun - resets 84*4882a593Smuzhiyun - reset-names 85*4882a593Smuzhiyun 86*4882a593Smuzhiyun - if: 87*4882a593Smuzhiyun properties: 88*4882a593Smuzhiyun compatible: 89*4882a593Smuzhiyun enum: 90*4882a593Smuzhiyun - amlogic,meson-gxbb-pwrc 91*4882a593Smuzhiyun then: 92*4882a593Smuzhiyun properties: 93*4882a593Smuzhiyun reset-names: 94*4882a593Smuzhiyun items: 95*4882a593Smuzhiyun - const: viu 96*4882a593Smuzhiyun - const: venc 97*4882a593Smuzhiyun - const: vcbus 98*4882a593Smuzhiyun - const: bt656 99*4882a593Smuzhiyun - const: dvin 100*4882a593Smuzhiyun - const: rdma 101*4882a593Smuzhiyun - const: venci 102*4882a593Smuzhiyun - const: vencp 103*4882a593Smuzhiyun - const: vdac 104*4882a593Smuzhiyun - const: vdi6 105*4882a593Smuzhiyun - const: vencl 106*4882a593Smuzhiyun - const: vid_lock 107*4882a593Smuzhiyun required: 108*4882a593Smuzhiyun - resets 109*4882a593Smuzhiyun - reset-names 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun - if: 112*4882a593Smuzhiyun properties: 113*4882a593Smuzhiyun compatible: 114*4882a593Smuzhiyun enum: 115*4882a593Smuzhiyun - amlogic,meson-axg-pwrc 116*4882a593Smuzhiyun then: 117*4882a593Smuzhiyun properties: 118*4882a593Smuzhiyun reset-names: 119*4882a593Smuzhiyun items: 120*4882a593Smuzhiyun - const: viu 121*4882a593Smuzhiyun - const: venc 122*4882a593Smuzhiyun - const: vcbus 123*4882a593Smuzhiyun - const: vencl 124*4882a593Smuzhiyun - const: vid_lock 125*4882a593Smuzhiyun required: 126*4882a593Smuzhiyun - resets 127*4882a593Smuzhiyun - reset-names 128*4882a593Smuzhiyun 129*4882a593Smuzhiyun - if: 130*4882a593Smuzhiyun properties: 131*4882a593Smuzhiyun compatible: 132*4882a593Smuzhiyun enum: 133*4882a593Smuzhiyun - amlogic,meson-g12a-pwrc 134*4882a593Smuzhiyun - amlogic,meson-sm1-pwrc 135*4882a593Smuzhiyun then: 136*4882a593Smuzhiyun properties: 137*4882a593Smuzhiyun reset-names: 138*4882a593Smuzhiyun items: 139*4882a593Smuzhiyun - const: viu 140*4882a593Smuzhiyun - const: venc 141*4882a593Smuzhiyun - const: vcbus 142*4882a593Smuzhiyun - const: bt656 143*4882a593Smuzhiyun - const: rdma 144*4882a593Smuzhiyun - const: venci 145*4882a593Smuzhiyun - const: vencp 146*4882a593Smuzhiyun - const: vdac 147*4882a593Smuzhiyun - const: vdi6 148*4882a593Smuzhiyun - const: vencl 149*4882a593Smuzhiyun - const: vid_lock 150*4882a593Smuzhiyun required: 151*4882a593Smuzhiyun - resets 152*4882a593Smuzhiyun - reset-names 153*4882a593Smuzhiyun 154*4882a593Smuzhiyunrequired: 155*4882a593Smuzhiyun - compatible 156*4882a593Smuzhiyun - clocks 157*4882a593Smuzhiyun - clock-names 158*4882a593Smuzhiyun - "#power-domain-cells" 159*4882a593Smuzhiyun - amlogic,ao-sysctrl 160*4882a593Smuzhiyun 161*4882a593SmuzhiyunadditionalProperties: false 162*4882a593Smuzhiyun 163*4882a593Smuzhiyunexamples: 164*4882a593Smuzhiyun - | 165*4882a593Smuzhiyun pwrc: power-controller { 166*4882a593Smuzhiyun compatible = "amlogic,meson-sm1-pwrc"; 167*4882a593Smuzhiyun #power-domain-cells = <1>; 168*4882a593Smuzhiyun amlogic,ao-sysctrl = <&rti>; 169*4882a593Smuzhiyun resets = <&reset_viu>, 170*4882a593Smuzhiyun <&reset_venc>, 171*4882a593Smuzhiyun <&reset_vcbus>, 172*4882a593Smuzhiyun <&reset_bt656>, 173*4882a593Smuzhiyun <&reset_rdma>, 174*4882a593Smuzhiyun <&reset_venci>, 175*4882a593Smuzhiyun <&reset_vencp>, 176*4882a593Smuzhiyun <&reset_vdac>, 177*4882a593Smuzhiyun <&reset_vdi6>, 178*4882a593Smuzhiyun <&reset_vencl>, 179*4882a593Smuzhiyun <&reset_vid_lock>; 180*4882a593Smuzhiyun reset-names = "viu", "venc", "vcbus", "bt656", 181*4882a593Smuzhiyun "rdma", "venci", "vencp", "vdac", 182*4882a593Smuzhiyun "vdi6", "vencl", "vid_lock"; 183*4882a593Smuzhiyun clocks = <&clk_vpu>, <&clk_vapb>; 184*4882a593Smuzhiyun clock-names = "vpu", "vapb"; 185*4882a593Smuzhiyun }; 186