14d023bebSNeil Armstrong# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 24d023bebSNeil Armstrong%YAML 1.2 34d023bebSNeil Armstrong--- 44d023bebSNeil Armstrong$id: http://devicetree.org/schemas/soc/amlogic/amlogic,meson-gx-hhi-sysctrl.yaml# 54d023bebSNeil Armstrong$schema: http://devicetree.org/meta-schemas/core.yaml# 64d023bebSNeil Armstrong 74d023bebSNeil Armstrongtitle: Amlogic Meson System Control registers 84d023bebSNeil Armstrong 94d023bebSNeil Armstrongmaintainers: 104d023bebSNeil Armstrong - Neil Armstrong <neil.armstrong@linaro.org> 114d023bebSNeil Armstrong 124d023bebSNeil Armstrongproperties: 134d023bebSNeil Armstrong compatible: 144d023bebSNeil Armstrong items: 154d023bebSNeil Armstrong - enum: 16*960a4140SNeil Armstrong - amlogic,meson-hhi-sysctrl 174d023bebSNeil Armstrong - amlogic,meson-gx-hhi-sysctrl 184d023bebSNeil Armstrong - amlogic,meson-gx-ao-sysctrl 194d023bebSNeil Armstrong - amlogic,meson-axg-hhi-sysctrl 204d023bebSNeil Armstrong - amlogic,meson-axg-ao-sysctrl 214d023bebSNeil Armstrong - const: simple-mfd 224d023bebSNeil Armstrong - const: syscon 234d023bebSNeil Armstrong 244d023bebSNeil Armstrong reg: 254d023bebSNeil Armstrong maxItems: 1 264d023bebSNeil Armstrong 274d023bebSNeil Armstrong clock-controller: 284d023bebSNeil Armstrong type: object 294d023bebSNeil Armstrong 304d023bebSNeil Armstrong power-controller: 314d023bebSNeil Armstrong $ref: /schemas/power/amlogic,meson-ee-pwrc.yaml 324d023bebSNeil Armstrong 334d023bebSNeil Armstrong pinctrl: 344d023bebSNeil Armstrong type: object 354d023bebSNeil Armstrong 364d023bebSNeil Armstrong phy: 374d023bebSNeil Armstrong type: object 384d023bebSNeil Armstrong 394d023bebSNeil ArmstrongallOf: 404d023bebSNeil Armstrong - if: 414d023bebSNeil Armstrong properties: 424d023bebSNeil Armstrong compatible: 434d023bebSNeil Armstrong enum: 44*960a4140SNeil Armstrong - amlogic,meson-hhi-sysctrl 45*960a4140SNeil Armstrong then: 46*960a4140SNeil Armstrong properties: 47*960a4140SNeil Armstrong clock-controller: 48*960a4140SNeil Armstrong $ref: /schemas/clock/amlogic,meson8-clkc.yaml# 49*960a4140SNeil Armstrong 50*960a4140SNeil Armstrong pinctrl: false 51*960a4140SNeil Armstrong phy: false 52*960a4140SNeil Armstrong 53*960a4140SNeil Armstrong - if: 54*960a4140SNeil Armstrong properties: 55*960a4140SNeil Armstrong compatible: 56*960a4140SNeil Armstrong enum: 574d023bebSNeil Armstrong - amlogic,meson-gx-hhi-sysctrl 584d023bebSNeil Armstrong - amlogic,meson-axg-hhi-sysctrl 594d023bebSNeil Armstrong then: 604d023bebSNeil Armstrong properties: 614d023bebSNeil Armstrong clock-controller: 624d023bebSNeil Armstrong $ref: /schemas/clock/amlogic,gxbb-clkc.yaml# 634d023bebSNeil Armstrong 644d023bebSNeil Armstrong required: 654d023bebSNeil Armstrong - power-controller 664d023bebSNeil Armstrong 674d023bebSNeil Armstrong - if: 684d023bebSNeil Armstrong properties: 694d023bebSNeil Armstrong compatible: 704d023bebSNeil Armstrong enum: 714d023bebSNeil Armstrong - amlogic,meson-gx-ao-sysctrl 724d023bebSNeil Armstrong - amlogic,meson-axg-ao-sysctrl 734d023bebSNeil Armstrong then: 744d023bebSNeil Armstrong properties: 754d023bebSNeil Armstrong clock-controller: 764d023bebSNeil Armstrong $ref: /schemas/clock/amlogic,gxbb-aoclkc.yaml# 774d023bebSNeil Armstrong 784d023bebSNeil Armstrong power-controller: false 794d023bebSNeil Armstrong phy: false 804d023bebSNeil Armstrong 814d023bebSNeil Armstrong - if: 824d023bebSNeil Armstrong properties: 834d023bebSNeil Armstrong compatible: 844d023bebSNeil Armstrong enum: 854d023bebSNeil Armstrong - amlogic,meson-gx-hhi-sysctrl 864d023bebSNeil Armstrong then: 874d023bebSNeil Armstrong properties: 884d023bebSNeil Armstrong phy: false 894d023bebSNeil Armstrong 904d023bebSNeil Armstrong - if: 914d023bebSNeil Armstrong properties: 924d023bebSNeil Armstrong compatible: 934d023bebSNeil Armstrong enum: 944d023bebSNeil Armstrong - amlogic,meson-axg-hhi-sysctrl 954d023bebSNeil Armstrong then: 964d023bebSNeil Armstrong properties: 974d023bebSNeil Armstrong phy: 984d023bebSNeil Armstrong oneOf: 994d023bebSNeil Armstrong - $ref: /schemas/phy/amlogic,g12a-mipi-dphy-analog.yaml 1004d023bebSNeil Armstrong - $ref: /schemas/phy/amlogic,meson-axg-mipi-pcie-analog.yaml 1014d023bebSNeil Armstrong 1024d023bebSNeil Armstrongrequired: 1034d023bebSNeil Armstrong - compatible 1044d023bebSNeil Armstrong - reg 1054d023bebSNeil Armstrong - clock-controller 1064d023bebSNeil Armstrong 1074d023bebSNeil ArmstrongadditionalProperties: false 1084d023bebSNeil Armstrong 1094d023bebSNeil Armstrongexamples: 1104d023bebSNeil Armstrong - | 1114d023bebSNeil Armstrong bus@c883c000 { 1124d023bebSNeil Armstrong compatible = "simple-bus"; 1134d023bebSNeil Armstrong reg = <0xc883c000 0x2000>; 1144d023bebSNeil Armstrong #address-cells = <1>; 1154d023bebSNeil Armstrong #size-cells = <1>; 1164d023bebSNeil Armstrong ranges = <0x0 0xc883c000 0x2000>; 1174d023bebSNeil Armstrong 1184d023bebSNeil Armstrong sysctrl: system-controller@0 { 1194d023bebSNeil Armstrong compatible = "amlogic,meson-gx-hhi-sysctrl", "simple-mfd", "syscon"; 1204d023bebSNeil Armstrong reg = <0 0x400>; 1214d023bebSNeil Armstrong 1224d023bebSNeil Armstrong clock-controller { 1234d023bebSNeil Armstrong compatible = "amlogic,gxbb-clkc"; 1244d023bebSNeil Armstrong #clock-cells = <1>; 1254d023bebSNeil Armstrong clocks = <&xtal>; 1264d023bebSNeil Armstrong clock-names = "xtal"; 1274d023bebSNeil Armstrong }; 1284d023bebSNeil Armstrong 1294d023bebSNeil Armstrong power-controller { 1304d023bebSNeil Armstrong compatible = "amlogic,meson-gxbb-pwrc"; 1314d023bebSNeil Armstrong #power-domain-cells = <1>; 1324d023bebSNeil Armstrong amlogic,ao-sysctrl = <&sysctrl_AO>; 1334d023bebSNeil Armstrong 1344d023bebSNeil Armstrong resets = <&reset_viu>, 1354d023bebSNeil Armstrong <&reset_venc>, 1364d023bebSNeil Armstrong <&reset_vcbus>, 1374d023bebSNeil Armstrong <&reset_bt656>, 1384d023bebSNeil Armstrong <&reset_dvin>, 1394d023bebSNeil Armstrong <&reset_rdma>, 1404d023bebSNeil Armstrong <&reset_venci>, 1414d023bebSNeil Armstrong <&reset_vencp>, 1424d023bebSNeil Armstrong <&reset_vdac>, 1434d023bebSNeil Armstrong <&reset_vdi6>, 1444d023bebSNeil Armstrong <&reset_vencl>, 1454d023bebSNeil Armstrong <&reset_vid_lock>; 1464d023bebSNeil Armstrong reset-names = "viu", "venc", "vcbus", "bt656", "dvin", 1474d023bebSNeil Armstrong "rdma", "venci", "vencp", "vdac", "vdi6", 1484d023bebSNeil Armstrong "vencl", "vid_lock"; 1494d023bebSNeil Armstrong clocks = <&clk_vpu>, <&clk_vapb>; 1504d023bebSNeil Armstrong clock-names = "vpu", "vapb"; 1514d023bebSNeil Armstrong }; 1524d023bebSNeil Armstrong }; 1534d023bebSNeil Armstrong }; 1544d023bebSNeil Armstrong 1554d023bebSNeil Armstrong bus@c8100000 { 1564d023bebSNeil Armstrong compatible = "simple-bus"; 1574d023bebSNeil Armstrong reg = <0xc8100000 0x100000>; 1584d023bebSNeil Armstrong #address-cells = <1>; 1594d023bebSNeil Armstrong #size-cells = <1>; 1604d023bebSNeil Armstrong ranges = <0x0 0xc8100000 0x100000>; 1614d023bebSNeil Armstrong 1624d023bebSNeil Armstrong sysctrl_AO: system-controller@0 { 1634d023bebSNeil Armstrong compatible = "amlogic,meson-gx-ao-sysctrl", "simple-mfd", "syscon"; 1644d023bebSNeil Armstrong reg = <0 0x100>; 1654d023bebSNeil Armstrong 1664d023bebSNeil Armstrong clock-controller { 1674d023bebSNeil Armstrong compatible = "amlogic,meson-gxbb-aoclkc", "amlogic,meson-gx-aoclkc"; 1684d023bebSNeil Armstrong #clock-cells = <1>; 1694d023bebSNeil Armstrong #reset-cells = <1>; 1704d023bebSNeil Armstrong clocks = <&xtal>, <&clk81>; 1714d023bebSNeil Armstrong clock-names = "xtal", "mpeg-clk"; 1724d023bebSNeil Armstrong }; 1734d023bebSNeil Armstrong }; 1744d023bebSNeil Armstrong }; 175beb9c30bSNeil Armstrong 176beb9c30bSNeil Armstrong - | 177beb9c30bSNeil Armstrong system-controller@ff63c000 { 178beb9c30bSNeil Armstrong compatible = "amlogic,meson-axg-hhi-sysctrl", "simple-mfd", "syscon"; 179beb9c30bSNeil Armstrong reg = <0xff63c000 0x400>; 180beb9c30bSNeil Armstrong 181beb9c30bSNeil Armstrong clock-controller { 182beb9c30bSNeil Armstrong compatible = "amlogic,axg-clkc"; 183beb9c30bSNeil Armstrong #clock-cells = <1>; 184beb9c30bSNeil Armstrong clocks = <&xtal>; 185beb9c30bSNeil Armstrong clock-names = "xtal"; 186beb9c30bSNeil Armstrong }; 187beb9c30bSNeil Armstrong 188beb9c30bSNeil Armstrong power-controller { 189beb9c30bSNeil Armstrong compatible = "amlogic,meson-axg-pwrc"; 190beb9c30bSNeil Armstrong #power-domain-cells = <1>; 191beb9c30bSNeil Armstrong amlogic,ao-sysctrl = <&sysctrl_AO>; 192beb9c30bSNeil Armstrong 193beb9c30bSNeil Armstrong resets = <&reset_viu>, 194beb9c30bSNeil Armstrong <&reset_venc>, 195beb9c30bSNeil Armstrong <&reset_vcbus>, 196beb9c30bSNeil Armstrong <&reset_vencl>, 197beb9c30bSNeil Armstrong <&reset_vid_lock>; 198beb9c30bSNeil Armstrong reset-names = "viu", "venc", "vcbus", "vencl", "vid_lock"; 199beb9c30bSNeil Armstrong clocks = <&clk_vpu>, <&clk_vapb>; 200beb9c30bSNeil Armstrong clock-names = "vpu", "vapb"; 201beb9c30bSNeil Armstrong }; 202beb9c30bSNeil Armstrong 203beb9c30bSNeil Armstrong phy { 204beb9c30bSNeil Armstrong compatible = "amlogic,axg-mipi-pcie-analog-phy"; 205beb9c30bSNeil Armstrong #phy-cells = <0>; 206beb9c30bSNeil Armstrong }; 207beb9c30bSNeil Armstrong }; 208