18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 28c2ecf20Sopenharmony_ci# Copyright 2019 BayLibre, SAS 38c2ecf20Sopenharmony_ci%YAML 1.2 48c2ecf20Sopenharmony_ci--- 58c2ecf20Sopenharmony_ci$id: "http://devicetree.org/schemas/power/amlogic,meson-ee-pwrc.yaml#" 68c2ecf20Sopenharmony_ci$schema: "http://devicetree.org/meta-schemas/core.yaml#" 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_cititle: Amlogic Meson Everything-Else Power Domains 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_cimaintainers: 118c2ecf20Sopenharmony_ci - Neil Armstrong <narmstrong@baylibre.com> 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_cidescription: |+ 148c2ecf20Sopenharmony_ci The Everything-Else Power Domains node should be the child of a syscon 158c2ecf20Sopenharmony_ci node with the required property: 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci - compatible: Should be the following: 188c2ecf20Sopenharmony_ci "amlogic,meson-gx-hhi-sysctrl", "simple-mfd", "syscon" 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci Refer to the the bindings described in 218c2ecf20Sopenharmony_ci Documentation/devicetree/bindings/mfd/syscon.yaml 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ciproperties: 248c2ecf20Sopenharmony_ci compatible: 258c2ecf20Sopenharmony_ci enum: 268c2ecf20Sopenharmony_ci - amlogic,meson8-pwrc 278c2ecf20Sopenharmony_ci - amlogic,meson8b-pwrc 288c2ecf20Sopenharmony_ci - amlogic,meson8m2-pwrc 298c2ecf20Sopenharmony_ci - amlogic,meson-gxbb-pwrc 308c2ecf20Sopenharmony_ci - amlogic,meson-axg-pwrc 318c2ecf20Sopenharmony_ci - amlogic,meson-g12a-pwrc 328c2ecf20Sopenharmony_ci - amlogic,meson-sm1-pwrc 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_ci clocks: 358c2ecf20Sopenharmony_ci minItems: 1 368c2ecf20Sopenharmony_ci maxItems: 2 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci clock-names: 398c2ecf20Sopenharmony_ci minItems: 1 408c2ecf20Sopenharmony_ci maxItems: 2 418c2ecf20Sopenharmony_ci items: 428c2ecf20Sopenharmony_ci - const: vpu 438c2ecf20Sopenharmony_ci - const: vapb 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci resets: 468c2ecf20Sopenharmony_ci minItems: 5 478c2ecf20Sopenharmony_ci maxItems: 12 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ci reset-names: 508c2ecf20Sopenharmony_ci minItems: 5 518c2ecf20Sopenharmony_ci maxItems: 12 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ci "#power-domain-cells": 548c2ecf20Sopenharmony_ci const: 1 558c2ecf20Sopenharmony_ci 568c2ecf20Sopenharmony_ci amlogic,ao-sysctrl: 578c2ecf20Sopenharmony_ci description: phandle to the AO sysctrl node 588c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/phandle 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ciallOf: 618c2ecf20Sopenharmony_ci - if: 628c2ecf20Sopenharmony_ci properties: 638c2ecf20Sopenharmony_ci compatible: 648c2ecf20Sopenharmony_ci enum: 658c2ecf20Sopenharmony_ci - amlogic,meson8b-pwrc 668c2ecf20Sopenharmony_ci - amlogic,meson8m2-pwrc 678c2ecf20Sopenharmony_ci then: 688c2ecf20Sopenharmony_ci properties: 698c2ecf20Sopenharmony_ci reset-names: 708c2ecf20Sopenharmony_ci items: 718c2ecf20Sopenharmony_ci - const: dblk 728c2ecf20Sopenharmony_ci - const: pic_dc 738c2ecf20Sopenharmony_ci - const: hdmi_apb 748c2ecf20Sopenharmony_ci - const: hdmi_system 758c2ecf20Sopenharmony_ci - const: venci 768c2ecf20Sopenharmony_ci - const: vencp 778c2ecf20Sopenharmony_ci - const: vdac 788c2ecf20Sopenharmony_ci - const: vencl 798c2ecf20Sopenharmony_ci - const: viu 808c2ecf20Sopenharmony_ci - const: venc 818c2ecf20Sopenharmony_ci - const: rdma 828c2ecf20Sopenharmony_ci required: 838c2ecf20Sopenharmony_ci - resets 848c2ecf20Sopenharmony_ci - reset-names 858c2ecf20Sopenharmony_ci 868c2ecf20Sopenharmony_ci - if: 878c2ecf20Sopenharmony_ci properties: 888c2ecf20Sopenharmony_ci compatible: 898c2ecf20Sopenharmony_ci enum: 908c2ecf20Sopenharmony_ci - amlogic,meson-gxbb-pwrc 918c2ecf20Sopenharmony_ci then: 928c2ecf20Sopenharmony_ci properties: 938c2ecf20Sopenharmony_ci reset-names: 948c2ecf20Sopenharmony_ci items: 958c2ecf20Sopenharmony_ci - const: viu 968c2ecf20Sopenharmony_ci - const: venc 978c2ecf20Sopenharmony_ci - const: vcbus 988c2ecf20Sopenharmony_ci - const: bt656 998c2ecf20Sopenharmony_ci - const: dvin 1008c2ecf20Sopenharmony_ci - const: rdma 1018c2ecf20Sopenharmony_ci - const: venci 1028c2ecf20Sopenharmony_ci - const: vencp 1038c2ecf20Sopenharmony_ci - const: vdac 1048c2ecf20Sopenharmony_ci - const: vdi6 1058c2ecf20Sopenharmony_ci - const: vencl 1068c2ecf20Sopenharmony_ci - const: vid_lock 1078c2ecf20Sopenharmony_ci required: 1088c2ecf20Sopenharmony_ci - resets 1098c2ecf20Sopenharmony_ci - reset-names 1108c2ecf20Sopenharmony_ci 1118c2ecf20Sopenharmony_ci - if: 1128c2ecf20Sopenharmony_ci properties: 1138c2ecf20Sopenharmony_ci compatible: 1148c2ecf20Sopenharmony_ci enum: 1158c2ecf20Sopenharmony_ci - amlogic,meson-axg-pwrc 1168c2ecf20Sopenharmony_ci then: 1178c2ecf20Sopenharmony_ci properties: 1188c2ecf20Sopenharmony_ci reset-names: 1198c2ecf20Sopenharmony_ci items: 1208c2ecf20Sopenharmony_ci - const: viu 1218c2ecf20Sopenharmony_ci - const: venc 1228c2ecf20Sopenharmony_ci - const: vcbus 1238c2ecf20Sopenharmony_ci - const: vencl 1248c2ecf20Sopenharmony_ci - const: vid_lock 1258c2ecf20Sopenharmony_ci required: 1268c2ecf20Sopenharmony_ci - resets 1278c2ecf20Sopenharmony_ci - reset-names 1288c2ecf20Sopenharmony_ci 1298c2ecf20Sopenharmony_ci - if: 1308c2ecf20Sopenharmony_ci properties: 1318c2ecf20Sopenharmony_ci compatible: 1328c2ecf20Sopenharmony_ci enum: 1338c2ecf20Sopenharmony_ci - amlogic,meson-g12a-pwrc 1348c2ecf20Sopenharmony_ci - amlogic,meson-sm1-pwrc 1358c2ecf20Sopenharmony_ci then: 1368c2ecf20Sopenharmony_ci properties: 1378c2ecf20Sopenharmony_ci reset-names: 1388c2ecf20Sopenharmony_ci items: 1398c2ecf20Sopenharmony_ci - const: viu 1408c2ecf20Sopenharmony_ci - const: venc 1418c2ecf20Sopenharmony_ci - const: vcbus 1428c2ecf20Sopenharmony_ci - const: bt656 1438c2ecf20Sopenharmony_ci - const: rdma 1448c2ecf20Sopenharmony_ci - const: venci 1458c2ecf20Sopenharmony_ci - const: vencp 1468c2ecf20Sopenharmony_ci - const: vdac 1478c2ecf20Sopenharmony_ci - const: vdi6 1488c2ecf20Sopenharmony_ci - const: vencl 1498c2ecf20Sopenharmony_ci - const: vid_lock 1508c2ecf20Sopenharmony_ci required: 1518c2ecf20Sopenharmony_ci - resets 1528c2ecf20Sopenharmony_ci - reset-names 1538c2ecf20Sopenharmony_ci 1548c2ecf20Sopenharmony_cirequired: 1558c2ecf20Sopenharmony_ci - compatible 1568c2ecf20Sopenharmony_ci - clocks 1578c2ecf20Sopenharmony_ci - clock-names 1588c2ecf20Sopenharmony_ci - "#power-domain-cells" 1598c2ecf20Sopenharmony_ci - amlogic,ao-sysctrl 1608c2ecf20Sopenharmony_ci 1618c2ecf20Sopenharmony_ciadditionalProperties: false 1628c2ecf20Sopenharmony_ci 1638c2ecf20Sopenharmony_ciexamples: 1648c2ecf20Sopenharmony_ci - | 1658c2ecf20Sopenharmony_ci pwrc: power-controller { 1668c2ecf20Sopenharmony_ci compatible = "amlogic,meson-sm1-pwrc"; 1678c2ecf20Sopenharmony_ci #power-domain-cells = <1>; 1688c2ecf20Sopenharmony_ci amlogic,ao-sysctrl = <&rti>; 1698c2ecf20Sopenharmony_ci resets = <&reset_viu>, 1708c2ecf20Sopenharmony_ci <&reset_venc>, 1718c2ecf20Sopenharmony_ci <&reset_vcbus>, 1728c2ecf20Sopenharmony_ci <&reset_bt656>, 1738c2ecf20Sopenharmony_ci <&reset_rdma>, 1748c2ecf20Sopenharmony_ci <&reset_venci>, 1758c2ecf20Sopenharmony_ci <&reset_vencp>, 1768c2ecf20Sopenharmony_ci <&reset_vdac>, 1778c2ecf20Sopenharmony_ci <&reset_vdi6>, 1788c2ecf20Sopenharmony_ci <&reset_vencl>, 1798c2ecf20Sopenharmony_ci <&reset_vid_lock>; 1808c2ecf20Sopenharmony_ci reset-names = "viu", "venc", "vcbus", "bt656", 1818c2ecf20Sopenharmony_ci "rdma", "venci", "vencp", "vdac", 1828c2ecf20Sopenharmony_ci "vdi6", "vencl", "vid_lock"; 1838c2ecf20Sopenharmony_ci clocks = <&clk_vpu>, <&clk_vapb>; 1848c2ecf20Sopenharmony_ci clock-names = "vpu", "vapb"; 1858c2ecf20Sopenharmony_ci }; 186