11291aa45SRhyland KleinTPS65910 Power Management Integrated Circuit 21291aa45SRhyland Klein 31291aa45SRhyland KleinRequired properties: 41291aa45SRhyland Klein- compatible: "ti,tps65910" or "ti,tps65911" 51291aa45SRhyland Klein- reg: I2C slave address 61291aa45SRhyland Klein- interrupts: the interrupt outputs of the controller 71291aa45SRhyland Klein- #gpio-cells: number of cells to describe a GPIO, this should be 2. 81291aa45SRhyland Klein The first cell is the GPIO number. 91291aa45SRhyland Klein The second cell is used to specify additional options <unused>. 101291aa45SRhyland Klein- gpio-controller: mark the device as a GPIO controller 111291aa45SRhyland Klein- #interrupt-cells: the number of cells to describe an IRQ, this should be 2. 121291aa45SRhyland Klein The first cell is the IRQ number. 131291aa45SRhyland Klein The second cell is the flags, encoded as the trigger masks from 143bf0e9e0SYegor Yefremov Documentation/devicetree/bindings/interrupt-controller/interrupts.txt 151291aa45SRhyland Klein- regulators: This is the list of child nodes that specify the regulator 161291aa45SRhyland Klein initialization data for defined regulators. Not all regulators for the given 171291aa45SRhyland Klein device need to be present. The definition for each of these nodes is defined 181291aa45SRhyland Klein using the standard binding for regulators found at 191291aa45SRhyland Klein Documentation/devicetree/bindings/regulator/regulator.txt. 208c5e461dSLaxman Dewangan The regulator is matched with the regulator-compatible. 211291aa45SRhyland Klein 228c5e461dSLaxman Dewangan The valid regulator-compatible values are: 231291aa45SRhyland Klein tps65910: vrtc, vio, vdd1, vdd2, vdd3, vdig1, vdig2, vpll, vdac, vaux1, 2403746dcbSMarkus Pargmann vaux2, vaux33, vmmc, vbb 252d8175adSChristoph Fritz tps65911: vrtc, vio, vdd1, vdd2, vddctrl, ldo1, ldo2, ldo3, ldo4, ldo5, 261291aa45SRhyland Klein ldo6, ldo7, ldo8 271291aa45SRhyland Klein 2819228a6aSLaxman Dewangan- xxx-supply: Input voltage supply regulator. 29*8c6687efSJonathan Neuschäfer These entries are required if regulators are enabled for a device. Missing these 30*8c6687efSJonathan Neuschäfer properties can cause the regulator registration to fail. 31d2cfdb05SLaxman Dewangan If some of input supply is powered through battery or always-on supply then 32d2cfdb05SLaxman Dewangan also it is require to have these parameters with proper node handle of always 33d2cfdb05SLaxman Dewangan on power supply. 3419228a6aSLaxman Dewangan tps65910: 3519228a6aSLaxman Dewangan vcc1-supply: VDD1 input. 3619228a6aSLaxman Dewangan vcc2-supply: VDD2 input. 3719228a6aSLaxman Dewangan vcc3-supply: VAUX33 and VMMC input. 3819228a6aSLaxman Dewangan vcc4-supply: VAUX1 and VAUX2 input. 3919228a6aSLaxman Dewangan vcc5-supply: VPLL and VDAC input. 4019228a6aSLaxman Dewangan vcc6-supply: VDIG1 and VDIG2 input. 4103746dcbSMarkus Pargmann vcc7-supply: VRTC and VBB input. 4219228a6aSLaxman Dewangan vccio-supply: VIO input. 4319228a6aSLaxman Dewangan tps65911: 4419228a6aSLaxman Dewangan vcc1-supply: VDD1 input. 4519228a6aSLaxman Dewangan vcc2-supply: VDD2 input. 4619228a6aSLaxman Dewangan vcc3-supply: LDO6, LDO7 and LDO8 input. 4719228a6aSLaxman Dewangan vcc4-supply: LDO5 input. 4819228a6aSLaxman Dewangan vcc5-supply: LDO3 and LDO4 input. 4919228a6aSLaxman Dewangan vcc6-supply: LDO1 and LDO2 input. 5019228a6aSLaxman Dewangan vcc7-supply: VRTC input. 5119228a6aSLaxman Dewangan vccio-supply: VIO input. 521291aa45SRhyland Klein 53d2cfdb05SLaxman DewanganOptional properties: 54d2cfdb05SLaxman Dewangan- ti,vmbch-threshold: (tps65911) main battery charged threshold 55d2cfdb05SLaxman Dewangan comparator. (see VMBCH_VSEL in TPS65910 datasheet) 56d2cfdb05SLaxman Dewangan- ti,vmbch2-threshold: (tps65911) main battery discharged threshold 57d2cfdb05SLaxman Dewangan comparator. (see VMBCH_VSEL in TPS65910 datasheet) 58d2cfdb05SLaxman Dewangan- ti,en-ck32k-xtal: enable external 32-kHz crystal oscillator (see CK32K_CTRL 59d2cfdb05SLaxman Dewangan in TPS6591X datasheet) 60d2cfdb05SLaxman Dewangan- ti,en-gpio-sleep: enable sleep control for gpios 61d2cfdb05SLaxman Dewangan There should be 9 entries here, one for each gpio. 62b079fa72SBill Huang- ti,system-power-controller: Telling whether or not this pmic is controlling 63b079fa72SBill Huang the system power. 64a9bc67deSMichał Mirosław- ti,sleep-enable: Enable SLEEP state. 65a9bc67deSMichał Mirosław- ti,sleep-keep-therm: Keep thermal monitoring on in sleep state. 66a9bc67deSMichał Mirosław- ti,sleep-keep-ck32k: Keep the 32KHz clock output on in sleep state. 67a9bc67deSMichał Mirosław- ti,sleep-keep-hsclk: Keep high speed internal clock on in sleep state. 68d2cfdb05SLaxman Dewangan 691291aa45SRhyland KleinRegulator Optional properties: 701291aa45SRhyland Klein- ti,regulator-ext-sleep-control: enable external sleep 711291aa45SRhyland Klein control through external inputs [0 (not enabled), 1 (EN1), 2 (EN2) or 4(EN3)] 721291aa45SRhyland Klein If this property is not defined, it defaults to 0 (not enabled). 731291aa45SRhyland Klein 741291aa45SRhyland KleinExample: 751291aa45SRhyland Klein 761291aa45SRhyland Klein pmu: tps65910@d2 { 771291aa45SRhyland Klein compatible = "ti,tps65910"; 781291aa45SRhyland Klein reg = <0xd2>; 791291aa45SRhyland Klein interrupt-parent = <&intc>; 801291aa45SRhyland Klein interrupts = < 0 118 0x04 >; 811291aa45SRhyland Klein 821291aa45SRhyland Klein #gpio-cells = <2>; 831291aa45SRhyland Klein gpio-controller; 841291aa45SRhyland Klein 851291aa45SRhyland Klein #interrupt-cells = <2>; 861291aa45SRhyland Klein interrupt-controller; 871291aa45SRhyland Klein 88b079fa72SBill Huang ti,system-power-controller; 89b079fa72SBill Huang 901291aa45SRhyland Klein ti,vmbch-threshold = 0; 911291aa45SRhyland Klein ti,vmbch2-threshold = 0; 92bcc1dd4cSJohan Hovold ti,en-ck32k-xtal; 931291aa45SRhyland Klein ti,en-gpio-sleep = <0 0 1 0 0 0 0 0 0>; 941291aa45SRhyland Klein 9519228a6aSLaxman Dewangan vcc1-supply = <®_parent>; 96d2cfdb05SLaxman Dewangan vcc2-supply = <&some_reg>; 97d2cfdb05SLaxman Dewangan vcc3-supply = <...>; 98d2cfdb05SLaxman Dewangan vcc4-supply = <...>; 99d2cfdb05SLaxman Dewangan vcc5-supply = <...>; 100d2cfdb05SLaxman Dewangan vcc6-supply = <...>; 101d2cfdb05SLaxman Dewangan vcc7-supply = <...>; 102d2cfdb05SLaxman Dewangan vccio-supply = <...>; 10319228a6aSLaxman Dewangan 1041291aa45SRhyland Klein regulators { 1058c5e461dSLaxman Dewangan #address-cells = <1>; 1068c5e461dSLaxman Dewangan #size-cells = <0>; 1078c5e461dSLaxman Dewangan 1088c5e461dSLaxman Dewangan vdd1_reg: regulator@0 { 1098c5e461dSLaxman Dewangan regulator-compatible = "vdd1"; 1108c5e461dSLaxman Dewangan reg = <0>; 1111291aa45SRhyland Klein regulator-min-microvolt = < 600000>; 1121291aa45SRhyland Klein regulator-max-microvolt = <1500000>; 1131291aa45SRhyland Klein regulator-always-on; 1141291aa45SRhyland Klein regulator-boot-on; 1151291aa45SRhyland Klein ti,regulator-ext-sleep-control = <0>; 1161291aa45SRhyland Klein }; 1178c5e461dSLaxman Dewangan vdd2_reg: regulator@1 { 1188c5e461dSLaxman Dewangan regulator-compatible = "vdd2"; 1198c5e461dSLaxman Dewangan reg = <1>; 1201291aa45SRhyland Klein regulator-min-microvolt = < 600000>; 1211291aa45SRhyland Klein regulator-max-microvolt = <1500000>; 1221291aa45SRhyland Klein regulator-always-on; 1231291aa45SRhyland Klein regulator-boot-on; 1241291aa45SRhyland Klein ti,regulator-ext-sleep-control = <4>; 1251291aa45SRhyland Klein }; 1268c5e461dSLaxman Dewangan vddctrl_reg: regulator@2 { 1278c5e461dSLaxman Dewangan regulator-compatible = "vddctrl"; 1288c5e461dSLaxman Dewangan reg = <2>; 1291291aa45SRhyland Klein regulator-min-microvolt = < 600000>; 1301291aa45SRhyland Klein regulator-max-microvolt = <1400000>; 1311291aa45SRhyland Klein regulator-always-on; 1321291aa45SRhyland Klein regulator-boot-on; 1331291aa45SRhyland Klein ti,regulator-ext-sleep-control = <0>; 1341291aa45SRhyland Klein }; 1358c5e461dSLaxman Dewangan vio_reg: regulator@3 { 1368c5e461dSLaxman Dewangan regulator-compatible = "vio"; 1378c5e461dSLaxman Dewangan reg = <3>; 1381291aa45SRhyland Klein regulator-min-microvolt = <1500000>; 1391291aa45SRhyland Klein regulator-max-microvolt = <1800000>; 1401291aa45SRhyland Klein regulator-always-on; 1411291aa45SRhyland Klein regulator-boot-on; 1421291aa45SRhyland Klein ti,regulator-ext-sleep-control = <1>; 1431291aa45SRhyland Klein }; 1448c5e461dSLaxman Dewangan ldo1_reg: regulator@4 { 1458c5e461dSLaxman Dewangan regulator-compatible = "ldo1"; 1468c5e461dSLaxman Dewangan reg = <4>; 1471291aa45SRhyland Klein regulator-min-microvolt = <1000000>; 1481291aa45SRhyland Klein regulator-max-microvolt = <3300000>; 1491291aa45SRhyland Klein ti,regulator-ext-sleep-control = <0>; 1501291aa45SRhyland Klein }; 1518c5e461dSLaxman Dewangan ldo2_reg: regulator@5 { 1528c5e461dSLaxman Dewangan regulator-compatible = "ldo2"; 1538c5e461dSLaxman Dewangan reg = <5>; 1541291aa45SRhyland Klein regulator-min-microvolt = <1050000>; 1551291aa45SRhyland Klein regulator-max-microvolt = <1050000>; 1561291aa45SRhyland Klein ti,regulator-ext-sleep-control = <0>; 1571291aa45SRhyland Klein }; 1588c5e461dSLaxman Dewangan ldo3_reg: regulator@6 { 1598c5e461dSLaxman Dewangan regulator-compatible = "ldo3"; 1608c5e461dSLaxman Dewangan reg = <6>; 1611291aa45SRhyland Klein regulator-min-microvolt = <1000000>; 1621291aa45SRhyland Klein regulator-max-microvolt = <3300000>; 1631291aa45SRhyland Klein ti,regulator-ext-sleep-control = <0>; 1641291aa45SRhyland Klein }; 1658c5e461dSLaxman Dewangan ldo4_reg: regulator@7 { 1668c5e461dSLaxman Dewangan regulator-compatible = "ldo4"; 1678c5e461dSLaxman Dewangan reg = <7>; 1681291aa45SRhyland Klein regulator-min-microvolt = <1000000>; 1691291aa45SRhyland Klein regulator-max-microvolt = <3300000>; 1701291aa45SRhyland Klein regulator-always-on; 1711291aa45SRhyland Klein ti,regulator-ext-sleep-control = <0>; 1721291aa45SRhyland Klein }; 1738c5e461dSLaxman Dewangan ldo5_reg: regulator@8 { 1748c5e461dSLaxman Dewangan regulator-compatible = "ldo5"; 1758c5e461dSLaxman Dewangan reg = <8>; 1761291aa45SRhyland Klein regulator-min-microvolt = <1000000>; 1771291aa45SRhyland Klein regulator-max-microvolt = <3300000>; 1781291aa45SRhyland Klein ti,regulator-ext-sleep-control = <0>; 1791291aa45SRhyland Klein }; 1808c5e461dSLaxman Dewangan ldo6_reg: regulator@9 { 1818c5e461dSLaxman Dewangan regulator-compatible = "ldo6"; 1828c5e461dSLaxman Dewangan reg = <9>; 1831291aa45SRhyland Klein regulator-min-microvolt = <1200000>; 1841291aa45SRhyland Klein regulator-max-microvolt = <1200000>; 1851291aa45SRhyland Klein ti,regulator-ext-sleep-control = <0>; 1861291aa45SRhyland Klein }; 1878c5e461dSLaxman Dewangan ldo7_reg: regulator@10 { 1888c5e461dSLaxman Dewangan regulator-compatible = "ldo7"; 1898c5e461dSLaxman Dewangan reg = <10>; 1901291aa45SRhyland Klein regulator-min-microvolt = <1200000>; 1911291aa45SRhyland Klein regulator-max-microvolt = <1200000>; 1921291aa45SRhyland Klein regulator-always-on; 1931291aa45SRhyland Klein regulator-boot-on; 1941291aa45SRhyland Klein ti,regulator-ext-sleep-control = <1>; 1951291aa45SRhyland Klein }; 1968c5e461dSLaxman Dewangan ldo8_reg: regulator@11 { 1978c5e461dSLaxman Dewangan regulator-compatible = "ldo8"; 1988c5e461dSLaxman Dewangan reg = <11>; 1991291aa45SRhyland Klein regulator-min-microvolt = <1000000>; 2001291aa45SRhyland Klein regulator-max-microvolt = <3300000>; 2011291aa45SRhyland Klein regulator-always-on; 2021291aa45SRhyland Klein ti,regulator-ext-sleep-control = <1>; 2031291aa45SRhyland Klein }; 2041291aa45SRhyland Klein }; 2051291aa45SRhyland Klein }; 206