1bd9eccf1SNeil Armstrong# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2bd9eccf1SNeil Armstrong# Copyright 2019 BayLibre, SAS 3bd9eccf1SNeil Armstrong%YAML 1.2 4bd9eccf1SNeil Armstrong--- 5bd9eccf1SNeil Armstrong$id: "http://devicetree.org/schemas/power/amlogic,meson-ee-pwrc.yaml#" 6bd9eccf1SNeil Armstrong$schema: "http://devicetree.org/meta-schemas/core.yaml#" 7bd9eccf1SNeil Armstrong 8bd9eccf1SNeil Armstrongtitle: Amlogic Meson Everything-Else Power Domains 9bd9eccf1SNeil Armstrong 10bd9eccf1SNeil Armstrongmaintainers: 11bd9eccf1SNeil Armstrong - Neil Armstrong <narmstrong@baylibre.com> 12bd9eccf1SNeil Armstrong 13bd9eccf1SNeil Armstrongdescription: |+ 14bd9eccf1SNeil Armstrong The Everything-Else Power Domains node should be the child of a syscon 15bd9eccf1SNeil Armstrong node with the required property: 16bd9eccf1SNeil Armstrong 17bd9eccf1SNeil Armstrong - compatible: Should be the following: 18bd9eccf1SNeil Armstrong "amlogic,meson-gx-hhi-sysctrl", "simple-mfd", "syscon" 19bd9eccf1SNeil Armstrong 20bd9eccf1SNeil Armstrong Refer to the the bindings described in 2154b3719dSMauro Carvalho Chehab Documentation/devicetree/bindings/mfd/syscon.yaml 22bd9eccf1SNeil Armstrong 23bd9eccf1SNeil Armstrongproperties: 24bd9eccf1SNeil Armstrong compatible: 25bd9eccf1SNeil Armstrong enum: 2618dfc0bfSMartin Blumenstingl - amlogic,meson8-pwrc 2718dfc0bfSMartin Blumenstingl - amlogic,meson8b-pwrc 2818dfc0bfSMartin Blumenstingl - amlogic,meson8m2-pwrc 29cc9ca02aSMartin Blumenstingl - amlogic,meson-gxbb-pwrc 30bd9eccf1SNeil Armstrong - amlogic,meson-g12a-pwrc 31bd9eccf1SNeil Armstrong - amlogic,meson-sm1-pwrc 32bd9eccf1SNeil Armstrong 33bd9eccf1SNeil Armstrong clocks: 3418dfc0bfSMartin Blumenstingl minItems: 1 3518dfc0bfSMartin Blumenstingl maxItems: 2 36bd9eccf1SNeil Armstrong 37bd9eccf1SNeil Armstrong clock-names: 3818dfc0bfSMartin Blumenstingl minItems: 1 3918dfc0bfSMartin Blumenstingl maxItems: 2 40bd9eccf1SNeil Armstrong items: 41bd9eccf1SNeil Armstrong - const: vpu 42bd9eccf1SNeil Armstrong - const: vapb 43bd9eccf1SNeil Armstrong 44bd9eccf1SNeil Armstrong resets: 45bd9eccf1SNeil Armstrong minItems: 11 46cc9ca02aSMartin Blumenstingl maxItems: 12 47bd9eccf1SNeil Armstrong 48bd9eccf1SNeil Armstrong reset-names: 4918dfc0bfSMartin Blumenstingl minItems: 11 50cc9ca02aSMartin Blumenstingl maxItems: 12 5118dfc0bfSMartin Blumenstingl 5218dfc0bfSMartin Blumenstingl "#power-domain-cells": 5318dfc0bfSMartin Blumenstingl const: 1 5418dfc0bfSMartin Blumenstingl 5518dfc0bfSMartin Blumenstingl amlogic,ao-sysctrl: 5618dfc0bfSMartin Blumenstingl description: phandle to the AO sysctrl node 5718dfc0bfSMartin Blumenstingl allOf: 5818dfc0bfSMartin Blumenstingl - $ref: /schemas/types.yaml#/definitions/phandle 5918dfc0bfSMartin Blumenstingl 6018dfc0bfSMartin BlumenstinglallOf: 6118dfc0bfSMartin Blumenstingl - if: 6218dfc0bfSMartin Blumenstingl properties: 6318dfc0bfSMartin Blumenstingl compatible: 6418dfc0bfSMartin Blumenstingl enum: 6518dfc0bfSMartin Blumenstingl - amlogic,meson8b-pwrc 6618dfc0bfSMartin Blumenstingl - amlogic,meson8m2-pwrc 6718dfc0bfSMartin Blumenstingl then: 6818dfc0bfSMartin Blumenstingl properties: 6918dfc0bfSMartin Blumenstingl reset-names: 7018dfc0bfSMartin Blumenstingl items: 7118dfc0bfSMartin Blumenstingl - const: dblk 7218dfc0bfSMartin Blumenstingl - const: pic_dc 7318dfc0bfSMartin Blumenstingl - const: hdmi_apb 7418dfc0bfSMartin Blumenstingl - const: hdmi_system 7518dfc0bfSMartin Blumenstingl - const: venci 7618dfc0bfSMartin Blumenstingl - const: vencp 7718dfc0bfSMartin Blumenstingl - const: vdac 7818dfc0bfSMartin Blumenstingl - const: vencl 7918dfc0bfSMartin Blumenstingl - const: viu 8018dfc0bfSMartin Blumenstingl - const: venc 8118dfc0bfSMartin Blumenstingl - const: rdma 8218dfc0bfSMartin Blumenstingl required: 8318dfc0bfSMartin Blumenstingl - resets 8418dfc0bfSMartin Blumenstingl - reset-names 8518dfc0bfSMartin Blumenstingl 8618dfc0bfSMartin Blumenstingl - if: 8718dfc0bfSMartin Blumenstingl properties: 8818dfc0bfSMartin Blumenstingl compatible: 8918dfc0bfSMartin Blumenstingl enum: 90cc9ca02aSMartin Blumenstingl - amlogic,meson-gxbb-pwrc 91cc9ca02aSMartin Blumenstingl then: 92cc9ca02aSMartin Blumenstingl properties: 93cc9ca02aSMartin Blumenstingl reset-names: 94cc9ca02aSMartin Blumenstingl items: 95cc9ca02aSMartin Blumenstingl - const: viu 96cc9ca02aSMartin Blumenstingl - const: venc 97cc9ca02aSMartin Blumenstingl - const: vcbus 98cc9ca02aSMartin Blumenstingl - const: bt656 99cc9ca02aSMartin Blumenstingl - const: dvin 100cc9ca02aSMartin Blumenstingl - const: rdma 101cc9ca02aSMartin Blumenstingl - const: venci 102cc9ca02aSMartin Blumenstingl - const: vencp 103cc9ca02aSMartin Blumenstingl - const: vdac 104cc9ca02aSMartin Blumenstingl - const: vdi6 105cc9ca02aSMartin Blumenstingl - const: vencl 106cc9ca02aSMartin Blumenstingl - const: vid_lock 107cc9ca02aSMartin Blumenstingl required: 108cc9ca02aSMartin Blumenstingl - resets 109cc9ca02aSMartin Blumenstingl - reset-names 110cc9ca02aSMartin Blumenstingl 111cc9ca02aSMartin Blumenstingl - if: 112cc9ca02aSMartin Blumenstingl properties: 113cc9ca02aSMartin Blumenstingl compatible: 114cc9ca02aSMartin Blumenstingl enum: 11518dfc0bfSMartin Blumenstingl - amlogic,meson-g12a-pwrc 11618dfc0bfSMartin Blumenstingl - amlogic,meson-sm1-pwrc 11718dfc0bfSMartin Blumenstingl then: 11818dfc0bfSMartin Blumenstingl properties: 11918dfc0bfSMartin Blumenstingl reset-names: 120bd9eccf1SNeil Armstrong items: 121bd9eccf1SNeil Armstrong - const: viu 122bd9eccf1SNeil Armstrong - const: venc 123bd9eccf1SNeil Armstrong - const: vcbus 124bd9eccf1SNeil Armstrong - const: bt656 125bd9eccf1SNeil Armstrong - const: rdma 126bd9eccf1SNeil Armstrong - const: venci 127bd9eccf1SNeil Armstrong - const: vencp 128bd9eccf1SNeil Armstrong - const: vdac 129bd9eccf1SNeil Armstrong - const: vdi6 130bd9eccf1SNeil Armstrong - const: vencl 131bd9eccf1SNeil Armstrong - const: vid_lock 13218dfc0bfSMartin Blumenstingl required: 13318dfc0bfSMartin Blumenstingl - resets 13418dfc0bfSMartin Blumenstingl - reset-names 135bd9eccf1SNeil Armstrong 136bd9eccf1SNeil Armstrongrequired: 137bd9eccf1SNeil Armstrong - compatible 138bd9eccf1SNeil Armstrong - clocks 139bd9eccf1SNeil Armstrong - clock-names 140bd9eccf1SNeil Armstrong - "#power-domain-cells" 141bd9eccf1SNeil Armstrong - amlogic,ao-sysctrl 142bd9eccf1SNeil Armstrong 1437f464532SRob HerringadditionalProperties: false 1447f464532SRob Herring 145bd9eccf1SNeil Armstrongexamples: 146bd9eccf1SNeil Armstrong - | 147bd9eccf1SNeil Armstrong pwrc: power-controller { 148bd9eccf1SNeil Armstrong compatible = "amlogic,meson-sm1-pwrc"; 149bd9eccf1SNeil Armstrong #power-domain-cells = <1>; 150bd9eccf1SNeil Armstrong amlogic,ao-sysctrl = <&rti>; 151bd9eccf1SNeil Armstrong resets = <&reset_viu>, 152bd9eccf1SNeil Armstrong <&reset_venc>, 153bd9eccf1SNeil Armstrong <&reset_vcbus>, 154bd9eccf1SNeil Armstrong <&reset_bt656>, 155bd9eccf1SNeil Armstrong <&reset_rdma>, 156bd9eccf1SNeil Armstrong <&reset_venci>, 157bd9eccf1SNeil Armstrong <&reset_vencp>, 158bd9eccf1SNeil Armstrong <&reset_vdac>, 159bd9eccf1SNeil Armstrong <&reset_vdi6>, 160bd9eccf1SNeil Armstrong <&reset_vencl>, 161bd9eccf1SNeil Armstrong <&reset_vid_lock>; 162bd9eccf1SNeil Armstrong reset-names = "viu", "venc", "vcbus", "bt656", 163bd9eccf1SNeil Armstrong "rdma", "venci", "vencp", "vdac", 164bd9eccf1SNeil Armstrong "vdi6", "vencl", "vid_lock"; 165bd9eccf1SNeil Armstrong clocks = <&clk_vpu>, <&clk_vapb>; 166bd9eccf1SNeil Armstrong clock-names = "vpu", "vapb"; 167bd9eccf1SNeil Armstrong }; 168