18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/regulator/pfuze100.yaml# 58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cititle: PFUZE100 family of regulators 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cimaintainers: 108c2ecf20Sopenharmony_ci - Robin Gong <yibin.gong@nxp.com> 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_cidescription: | 138c2ecf20Sopenharmony_ci The valid names for regulators are: 148c2ecf20Sopenharmony_ci --PFUZE100 158c2ecf20Sopenharmony_ci sw1ab,sw1c,sw2,sw3a,sw3b,sw4,swbst,vsnvs,vrefddr,vgen1~vgen6 168c2ecf20Sopenharmony_ci --PFUZE200 178c2ecf20Sopenharmony_ci sw1ab,sw2,sw3a,sw3b,swbst,vsnvs,vrefddr,vgen1~vgen6,coin 188c2ecf20Sopenharmony_ci --PFUZE3000 198c2ecf20Sopenharmony_ci sw1a,sw1b,sw2,sw3,swbst,vsnvs,vrefddr,vldo1,vldo2,vccsd,v33,vldo3,vldo4 208c2ecf20Sopenharmony_ci --PFUZE3001 218c2ecf20Sopenharmony_ci sw1,sw2,sw3,vsnvs,vldo1,vldo2,vccsd,v33,vldo3,vldo4 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci Each regulator is defined using the standard binding for regulators. 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ciproperties: 268c2ecf20Sopenharmony_ci $nodename: 278c2ecf20Sopenharmony_ci pattern: "^pmic@[0-9]$" 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci compatible: 308c2ecf20Sopenharmony_ci enum: 318c2ecf20Sopenharmony_ci - fsl,pfuze100 328c2ecf20Sopenharmony_ci - fsl,pfuze200 338c2ecf20Sopenharmony_ci - fsl,pfuze3000 348c2ecf20Sopenharmony_ci - fsl,pfuze3001 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci reg: 378c2ecf20Sopenharmony_ci maxItems: 1 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ci fsl,pfuze-support-disable-sw: 408c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/flag 418c2ecf20Sopenharmony_ci description: | 428c2ecf20Sopenharmony_ci Boolean, if present disable all unused switch regulators to save power 438c2ecf20Sopenharmony_ci consumption. Attention, ensure that all important regulators 448c2ecf20Sopenharmony_ci (e.g. DDR ref, DDR supply) has set the "regulator-always-on" property. 458c2ecf20Sopenharmony_ci If not present, the switched regulators are always on and can't be 468c2ecf20Sopenharmony_ci disabled. This binding is a workaround to keep backward compatibility 478c2ecf20Sopenharmony_ci with old dtb's which rely on the fact that the switched regulators are 488c2ecf20Sopenharmony_ci always on and don't mark them explicit as "regulator-always-on". 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci fsl,pmic-stby-poweroff: 518c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/flag 528c2ecf20Sopenharmony_ci description: | 538c2ecf20Sopenharmony_ci if present, configure the PMIC to shutdown all 548c2ecf20Sopenharmony_ci power rails when PMIC_STBY_REQ line is asserted during the power off sequence. 558c2ecf20Sopenharmony_ci Use this option if the SoC should be powered off by external power management 568c2ecf20Sopenharmony_ci IC (PMIC) on PMIC_STBY_REQ signal. 578c2ecf20Sopenharmony_ci As opposite to PMIC_STBY_REQ boards can implement PMIC_ON_REQ signal. 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ci regulators: 608c2ecf20Sopenharmony_ci type: object 618c2ecf20Sopenharmony_ci description: | 628c2ecf20Sopenharmony_ci list of regulators provided by this controller. 638c2ecf20Sopenharmony_ci 648c2ecf20Sopenharmony_ci patternProperties: 658c2ecf20Sopenharmony_ci "^sw([1-4]|[1-4][a-c]|[1-4][a-c][a-c])$": 668c2ecf20Sopenharmony_ci $ref: "regulator.yaml#" 678c2ecf20Sopenharmony_ci type: object 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ci "^vgen[1-6]$": 708c2ecf20Sopenharmony_ci $ref: "regulator.yaml#" 718c2ecf20Sopenharmony_ci type: object 728c2ecf20Sopenharmony_ci 738c2ecf20Sopenharmony_ci "^(vsnvs|vref|vrefddr|swbst|coin)$": 748c2ecf20Sopenharmony_ci $ref: "regulator.yaml#" 758c2ecf20Sopenharmony_ci type: object 768c2ecf20Sopenharmony_ci 778c2ecf20Sopenharmony_ci additionalProperties: false 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_cirequired: 808c2ecf20Sopenharmony_ci - compatible 818c2ecf20Sopenharmony_ci - reg 828c2ecf20Sopenharmony_ci 838c2ecf20Sopenharmony_ciadditionalProperties: false 848c2ecf20Sopenharmony_ci 858c2ecf20Sopenharmony_ciexamples: 868c2ecf20Sopenharmony_ci - | 878c2ecf20Sopenharmony_ci i2c { 888c2ecf20Sopenharmony_ci #address-cells = <1>; 898c2ecf20Sopenharmony_ci #size-cells = <0>; 908c2ecf20Sopenharmony_ci 918c2ecf20Sopenharmony_ci pmic@8 { 928c2ecf20Sopenharmony_ci compatible = "fsl,pfuze100"; 938c2ecf20Sopenharmony_ci reg = <0x08>; 948c2ecf20Sopenharmony_ci 958c2ecf20Sopenharmony_ci regulators { 968c2ecf20Sopenharmony_ci sw1a_reg: sw1ab { 978c2ecf20Sopenharmony_ci regulator-min-microvolt = <300000>; 988c2ecf20Sopenharmony_ci regulator-max-microvolt = <1875000>; 998c2ecf20Sopenharmony_ci regulator-boot-on; 1008c2ecf20Sopenharmony_ci regulator-always-on; 1018c2ecf20Sopenharmony_ci regulator-ramp-delay = <6250>; 1028c2ecf20Sopenharmony_ci }; 1038c2ecf20Sopenharmony_ci 1048c2ecf20Sopenharmony_ci sw1c_reg: sw1c { 1058c2ecf20Sopenharmony_ci regulator-min-microvolt = <300000>; 1068c2ecf20Sopenharmony_ci regulator-max-microvolt = <1875000>; 1078c2ecf20Sopenharmony_ci regulator-boot-on; 1088c2ecf20Sopenharmony_ci regulator-always-on; 1098c2ecf20Sopenharmony_ci }; 1108c2ecf20Sopenharmony_ci 1118c2ecf20Sopenharmony_ci sw2_reg: sw2 { 1128c2ecf20Sopenharmony_ci regulator-min-microvolt = <800000>; 1138c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1148c2ecf20Sopenharmony_ci regulator-boot-on; 1158c2ecf20Sopenharmony_ci regulator-always-on; 1168c2ecf20Sopenharmony_ci }; 1178c2ecf20Sopenharmony_ci 1188c2ecf20Sopenharmony_ci sw3a_reg: sw3a { 1198c2ecf20Sopenharmony_ci regulator-min-microvolt = <400000>; 1208c2ecf20Sopenharmony_ci regulator-max-microvolt = <1975000>; 1218c2ecf20Sopenharmony_ci regulator-boot-on; 1228c2ecf20Sopenharmony_ci regulator-always-on; 1238c2ecf20Sopenharmony_ci }; 1248c2ecf20Sopenharmony_ci 1258c2ecf20Sopenharmony_ci sw3b_reg: sw3b { 1268c2ecf20Sopenharmony_ci regulator-min-microvolt = <400000>; 1278c2ecf20Sopenharmony_ci regulator-max-microvolt = <1975000>; 1288c2ecf20Sopenharmony_ci regulator-boot-on; 1298c2ecf20Sopenharmony_ci regulator-always-on; 1308c2ecf20Sopenharmony_ci }; 1318c2ecf20Sopenharmony_ci 1328c2ecf20Sopenharmony_ci sw4_reg: sw4 { 1338c2ecf20Sopenharmony_ci regulator-min-microvolt = <800000>; 1348c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1358c2ecf20Sopenharmony_ci }; 1368c2ecf20Sopenharmony_ci 1378c2ecf20Sopenharmony_ci swbst_reg: swbst { 1388c2ecf20Sopenharmony_ci regulator-min-microvolt = <5000000>; 1398c2ecf20Sopenharmony_ci regulator-max-microvolt = <5150000>; 1408c2ecf20Sopenharmony_ci }; 1418c2ecf20Sopenharmony_ci 1428c2ecf20Sopenharmony_ci snvs_reg: vsnvs { 1438c2ecf20Sopenharmony_ci regulator-min-microvolt = <1000000>; 1448c2ecf20Sopenharmony_ci regulator-max-microvolt = <3000000>; 1458c2ecf20Sopenharmony_ci regulator-boot-on; 1468c2ecf20Sopenharmony_ci regulator-always-on; 1478c2ecf20Sopenharmony_ci }; 1488c2ecf20Sopenharmony_ci 1498c2ecf20Sopenharmony_ci vref_reg: vrefddr { 1508c2ecf20Sopenharmony_ci regulator-boot-on; 1518c2ecf20Sopenharmony_ci regulator-always-on; 1528c2ecf20Sopenharmony_ci }; 1538c2ecf20Sopenharmony_ci 1548c2ecf20Sopenharmony_ci vgen1_reg: vgen1 { 1558c2ecf20Sopenharmony_ci regulator-min-microvolt = <800000>; 1568c2ecf20Sopenharmony_ci regulator-max-microvolt = <1550000>; 1578c2ecf20Sopenharmony_ci }; 1588c2ecf20Sopenharmony_ci 1598c2ecf20Sopenharmony_ci vgen2_reg: vgen2 { 1608c2ecf20Sopenharmony_ci regulator-min-microvolt = <800000>; 1618c2ecf20Sopenharmony_ci regulator-max-microvolt = <1550000>; 1628c2ecf20Sopenharmony_ci }; 1638c2ecf20Sopenharmony_ci 1648c2ecf20Sopenharmony_ci vgen3_reg: vgen3 { 1658c2ecf20Sopenharmony_ci regulator-min-microvolt = <1800000>; 1668c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1678c2ecf20Sopenharmony_ci }; 1688c2ecf20Sopenharmony_ci 1698c2ecf20Sopenharmony_ci vgen4_reg: vgen4 { 1708c2ecf20Sopenharmony_ci regulator-min-microvolt = <1800000>; 1718c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1728c2ecf20Sopenharmony_ci regulator-always-on; 1738c2ecf20Sopenharmony_ci }; 1748c2ecf20Sopenharmony_ci 1758c2ecf20Sopenharmony_ci vgen5_reg: vgen5 { 1768c2ecf20Sopenharmony_ci regulator-min-microvolt = <1800000>; 1778c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1788c2ecf20Sopenharmony_ci regulator-always-on; 1798c2ecf20Sopenharmony_ci }; 1808c2ecf20Sopenharmony_ci 1818c2ecf20Sopenharmony_ci vgen6_reg: vgen6 { 1828c2ecf20Sopenharmony_ci regulator-min-microvolt = <1800000>; 1838c2ecf20Sopenharmony_ci regulator-max-microvolt = <3300000>; 1848c2ecf20Sopenharmony_ci regulator-always-on; 1858c2ecf20Sopenharmony_ci }; 1868c2ecf20Sopenharmony_ci }; 1878c2ecf20Sopenharmony_ci }; 1888c2ecf20Sopenharmony_ci }; 189