0001 TPS65910 Power Management Integrated Circuit
0002
0003 Required properties:
0004 - compatible: "ti,tps65910" or "ti,tps65911"
0005 - reg: I2C slave address
0006 - interrupts: the interrupt outputs of the controller
0007 - #gpio-cells: number of cells to describe a GPIO, this should be 2.
0008 The first cell is the GPIO number.
0009 The second cell is used to specify additional options <unused>.
0010 - gpio-controller: mark the device as a GPIO controller
0011 - #interrupt-cells: the number of cells to describe an IRQ, this should be 2.
0012 The first cell is the IRQ number.
0013 The second cell is the flags, encoded as the trigger masks from
0014 Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
0015 - regulators: This is the list of child nodes that specify the regulator
0016 initialization data for defined regulators. Not all regulators for the given
0017 device need to be present. The definition for each of these nodes is defined
0018 using the standard binding for regulators found at
0019 Documentation/devicetree/bindings/regulator/regulator.txt.
0020 The regulator is matched with the regulator-compatible.
0021
0022 The valid regulator-compatible values are:
0023 tps65910: vrtc, vio, vdd1, vdd2, vdd3, vdig1, vdig2, vpll, vdac, vaux1,
0024 vaux2, vaux33, vmmc, vbb
0025 tps65911: vrtc, vio, vdd1, vdd2, vddctrl, ldo1, ldo2, ldo3, ldo4, ldo5,
0026 ldo6, ldo7, ldo8
0027
0028 - xxx-supply: Input voltage supply regulator.
0029 These entries are required if regulators are enabled for a device. Missing these
0030 properties can cause the regulator registration to fail.
0031 If some of input supply is powered through battery or always-on supply then
0032 also it is require to have these parameters with proper node handle of always
0033 on power supply.
0034 tps65910:
0035 vcc1-supply: VDD1 input.
0036 vcc2-supply: VDD2 input.
0037 vcc3-supply: VAUX33 and VMMC input.
0038 vcc4-supply: VAUX1 and VAUX2 input.
0039 vcc5-supply: VPLL and VDAC input.
0040 vcc6-supply: VDIG1 and VDIG2 input.
0041 vcc7-supply: VRTC and VBB input.
0042 vccio-supply: VIO input.
0043 tps65911:
0044 vcc1-supply: VDD1 input.
0045 vcc2-supply: VDD2 input.
0046 vcc3-supply: LDO6, LDO7 and LDO8 input.
0047 vcc4-supply: LDO5 input.
0048 vcc5-supply: LDO3 and LDO4 input.
0049 vcc6-supply: LDO1 and LDO2 input.
0050 vcc7-supply: VRTC input.
0051 vccio-supply: VIO input.
0052
0053 Optional properties:
0054 - ti,vmbch-threshold: (tps65911) main battery charged threshold
0055 comparator. (see VMBCH_VSEL in TPS65910 datasheet)
0056 - ti,vmbch2-threshold: (tps65911) main battery discharged threshold
0057 comparator. (see VMBCH_VSEL in TPS65910 datasheet)
0058 - ti,en-ck32k-xtal: enable external 32-kHz crystal oscillator (see CK32K_CTRL
0059 in TPS6591X datasheet)
0060 - ti,en-gpio-sleep: enable sleep control for gpios
0061 There should be 9 entries here, one for each gpio.
0062 - ti,system-power-controller: Telling whether or not this pmic is controlling
0063 the system power.
0064 - ti,sleep-enable: Enable SLEEP state.
0065 - ti,sleep-keep-therm: Keep thermal monitoring on in sleep state.
0066 - ti,sleep-keep-ck32k: Keep the 32KHz clock output on in sleep state.
0067 - ti,sleep-keep-hsclk: Keep high speed internal clock on in sleep state.
0068
0069 Regulator Optional properties:
0070 - ti,regulator-ext-sleep-control: enable external sleep
0071 control through external inputs [0 (not enabled), 1 (EN1), 2 (EN2) or 4(EN3)]
0072 If this property is not defined, it defaults to 0 (not enabled).
0073
0074 Example:
0075
0076 pmu: tps65910@d2 {
0077 compatible = "ti,tps65910";
0078 reg = <0xd2>;
0079 interrupt-parent = <&intc>;
0080 interrupts = < 0 118 0x04 >;
0081
0082 #gpio-cells = <2>;
0083 gpio-controller;
0084
0085 #interrupt-cells = <2>;
0086 interrupt-controller;
0087
0088 ti,system-power-controller;
0089
0090 ti,vmbch-threshold = 0;
0091 ti,vmbch2-threshold = 0;
0092 ti,en-ck32k-xtal;
0093 ti,en-gpio-sleep = <0 0 1 0 0 0 0 0 0>;
0094
0095 vcc1-supply = <®_parent>;
0096 vcc2-supply = <&some_reg>;
0097 vcc3-supply = <...>;
0098 vcc4-supply = <...>;
0099 vcc5-supply = <...>;
0100 vcc6-supply = <...>;
0101 vcc7-supply = <...>;
0102 vccio-supply = <...>;
0103
0104 regulators {
0105 #address-cells = <1>;
0106 #size-cells = <0>;
0107
0108 vdd1_reg: regulator@0 {
0109 regulator-compatible = "vdd1";
0110 reg = <0>;
0111 regulator-min-microvolt = < 600000>;
0112 regulator-max-microvolt = <1500000>;
0113 regulator-always-on;
0114 regulator-boot-on;
0115 ti,regulator-ext-sleep-control = <0>;
0116 };
0117 vdd2_reg: regulator@1 {
0118 regulator-compatible = "vdd2";
0119 reg = <1>;
0120 regulator-min-microvolt = < 600000>;
0121 regulator-max-microvolt = <1500000>;
0122 regulator-always-on;
0123 regulator-boot-on;
0124 ti,regulator-ext-sleep-control = <4>;
0125 };
0126 vddctrl_reg: regulator@2 {
0127 regulator-compatible = "vddctrl";
0128 reg = <2>;
0129 regulator-min-microvolt = < 600000>;
0130 regulator-max-microvolt = <1400000>;
0131 regulator-always-on;
0132 regulator-boot-on;
0133 ti,regulator-ext-sleep-control = <0>;
0134 };
0135 vio_reg: regulator@3 {
0136 regulator-compatible = "vio";
0137 reg = <3>;
0138 regulator-min-microvolt = <1500000>;
0139 regulator-max-microvolt = <1800000>;
0140 regulator-always-on;
0141 regulator-boot-on;
0142 ti,regulator-ext-sleep-control = <1>;
0143 };
0144 ldo1_reg: regulator@4 {
0145 regulator-compatible = "ldo1";
0146 reg = <4>;
0147 regulator-min-microvolt = <1000000>;
0148 regulator-max-microvolt = <3300000>;
0149 ti,regulator-ext-sleep-control = <0>;
0150 };
0151 ldo2_reg: regulator@5 {
0152 regulator-compatible = "ldo2";
0153 reg = <5>;
0154 regulator-min-microvolt = <1050000>;
0155 regulator-max-microvolt = <1050000>;
0156 ti,regulator-ext-sleep-control = <0>;
0157 };
0158 ldo3_reg: regulator@6 {
0159 regulator-compatible = "ldo3";
0160 reg = <6>;
0161 regulator-min-microvolt = <1000000>;
0162 regulator-max-microvolt = <3300000>;
0163 ti,regulator-ext-sleep-control = <0>;
0164 };
0165 ldo4_reg: regulator@7 {
0166 regulator-compatible = "ldo4";
0167 reg = <7>;
0168 regulator-min-microvolt = <1000000>;
0169 regulator-max-microvolt = <3300000>;
0170 regulator-always-on;
0171 ti,regulator-ext-sleep-control = <0>;
0172 };
0173 ldo5_reg: regulator@8 {
0174 regulator-compatible = "ldo5";
0175 reg = <8>;
0176 regulator-min-microvolt = <1000000>;
0177 regulator-max-microvolt = <3300000>;
0178 ti,regulator-ext-sleep-control = <0>;
0179 };
0180 ldo6_reg: regulator@9 {
0181 regulator-compatible = "ldo6";
0182 reg = <9>;
0183 regulator-min-microvolt = <1200000>;
0184 regulator-max-microvolt = <1200000>;
0185 ti,regulator-ext-sleep-control = <0>;
0186 };
0187 ldo7_reg: regulator@10 {
0188 regulator-compatible = "ldo7";
0189 reg = <10>;
0190 regulator-min-microvolt = <1200000>;
0191 regulator-max-microvolt = <1200000>;
0192 regulator-always-on;
0193 regulator-boot-on;
0194 ti,regulator-ext-sleep-control = <1>;
0195 };
0196 ldo8_reg: regulator@11 {
0197 regulator-compatible = "ldo8";
0198 reg = <11>;
0199 regulator-min-microvolt = <1000000>;
0200 regulator-max-microvolt = <3300000>;
0201 regulator-always-on;
0202 ti,regulator-ext-sleep-control = <1>;
0203 };
0204 };
0205 };