diff options
22 files changed, 1051 insertions, 694 deletions
diff --git a/Documentation/devicetree/bindings/mfd/lp873x.txt b/Documentation/devicetree/bindings/mfd/lp873x.txt index 52766c2035f7..ae9cf39bd101 100644 --- a/Documentation/devicetree/bindings/mfd/lp873x.txt +++ b/Documentation/devicetree/bindings/mfd/lp873x.txt | |||
| @@ -7,6 +7,9 @@ Required properties: | |||
| 7 | - #gpio-cells: Should be two. The first cell is the pin number and | 7 | - #gpio-cells: Should be two. The first cell is the pin number and |
| 8 | the second cell is used to specify flags. | 8 | the second cell is used to specify flags. |
| 9 | See ../gpio/gpio.txt for more information. | 9 | See ../gpio/gpio.txt for more information. |
| 10 | - xxx-in-supply: Phandle to parent supply node of each regulator | ||
| 11 | populated under regulators node. xxx can be | ||
| 12 | buck0, buck1, ldo0 or ldo1. | ||
| 10 | - regulators: List of child nodes that specify the regulator | 13 | - regulators: List of child nodes that specify the regulator |
| 11 | initialization data. | 14 | initialization data. |
| 12 | Example: | 15 | Example: |
| @@ -17,6 +20,11 @@ pmic: lp8733@60 { | |||
| 17 | gpio-controller; | 20 | gpio-controller; |
| 18 | #gpio-cells = <2>; | 21 | #gpio-cells = <2>; |
| 19 | 22 | ||
| 23 | buck0-in-supply = <&vsys_3v3>; | ||
| 24 | buck1-in-supply = <&vsys_3v3>; | ||
| 25 | ldo0-in-supply = <&vsys_3v3>; | ||
| 26 | ldo1-in-supply = <&vsys_3v3>; | ||
| 27 | |||
| 20 | regulators { | 28 | regulators { |
| 21 | lp8733_buck0: buck0 { | 29 | lp8733_buck0: buck0 { |
| 22 | regulator-name = "lp8733-buck0"; | 30 | regulator-name = "lp8733-buck0"; |
diff --git a/Documentation/devicetree/bindings/mfd/max77620.txt b/Documentation/devicetree/bindings/mfd/max77620.txt index 2ad44f7e4880..9c16d51cc15b 100644 --- a/Documentation/devicetree/bindings/mfd/max77620.txt +++ b/Documentation/devicetree/bindings/mfd/max77620.txt | |||
| @@ -106,6 +106,18 @@ Here supported time periods by device in microseconds are as follows: | |||
| 106 | MAX77620 supports 40, 80, 160, 320, 640, 1280, 2560 and 5120 microseconds. | 106 | MAX77620 supports 40, 80, 160, 320, 640, 1280, 2560 and 5120 microseconds. |
| 107 | MAX20024 supports 20, 40, 80, 160, 320, 640, 1280 and 2540 microseconds. | 107 | MAX20024 supports 20, 40, 80, 160, 320, 640, 1280 and 2540 microseconds. |
| 108 | 108 | ||
| 109 | -maxim,power-ok-control: configure map power ok bit | ||
| 110 | 1: Enables POK(Power OK) to control nRST_IO and GPIO1 | ||
| 111 | POK function. | ||
| 112 | 0: Disables POK control. | ||
| 113 | if property missing, do not configure MPOK bit. | ||
| 114 | If POK mapping is enabled for GPIO1/nRST_IO then, | ||
| 115 | GPIO1/nRST_IO pins are HIGH only if all rails | ||
| 116 | that have POK control enabled are HIGH. | ||
| 117 | If any of the rails goes down(which are enabled for POK | ||
| 118 | control) then, GPIO1/nRST_IO goes LOW. | ||
| 119 | this property is valid for max20024 only. | ||
| 120 | |||
| 109 | For DT binding details of different sub modules like GPIO, pincontrol, | 121 | For DT binding details of different sub modules like GPIO, pincontrol, |
| 110 | regulator, power, please refer respective device-tree binding document | 122 | regulator, power, please refer respective device-tree binding document |
| 111 | under their respective sub-system directories. | 123 | under their respective sub-system directories. |
diff --git a/Documentation/devicetree/bindings/mfd/tps65086.txt b/Documentation/devicetree/bindings/mfd/tps65086.txt index d3705612a846..9cfa886fe99f 100644 --- a/Documentation/devicetree/bindings/mfd/tps65086.txt +++ b/Documentation/devicetree/bindings/mfd/tps65086.txt | |||
| @@ -23,7 +23,7 @@ Required properties: | |||
| 23 | defined below. | 23 | defined below. |
| 24 | 24 | ||
| 25 | Optional regulator properties: | 25 | Optional regulator properties: |
| 26 | - ti,regulator-step-size-25mv : This is applicable for buck[1,2,6], set this | 26 | - ti,regulator-step-size-25mv : This is applicable for buck[1-6], set this |
| 27 | if the regulator is factory set with a 25mv | 27 | if the regulator is factory set with a 25mv |
| 28 | step voltage mapping. | 28 | step voltage mapping. |
| 29 | - ti,regulator-decay : This is applicable for buck[1-6], set this if | 29 | - ti,regulator-decay : This is applicable for buck[1-6], set this if |
diff --git a/Documentation/devicetree/bindings/regulator/pwm-regulator.txt b/Documentation/devicetree/bindings/regulator/pwm-regulator.txt index 3aeba9f86ed8..bf85aa9ad6a7 100644 --- a/Documentation/devicetree/bindings/regulator/pwm-regulator.txt +++ b/Documentation/devicetree/bindings/regulator/pwm-regulator.txt | |||
| @@ -59,7 +59,7 @@ Any property defined as part of the core regulator binding can also be used. | |||
| 59 | 59 | ||
| 60 | Continuous Voltage With Enable GPIO Example: | 60 | Continuous Voltage With Enable GPIO Example: |
| 61 | pwm_regulator { | 61 | pwm_regulator { |
| 62 | compatible = "pwm-regulator; | 62 | compatible = "pwm-regulator"; |
| 63 | pwms = <&pwm1 0 8448 0>; | 63 | pwms = <&pwm1 0 8448 0>; |
| 64 | enable-gpios = <&gpio0 23 GPIO_ACTIVE_HIGH>; | 64 | enable-gpios = <&gpio0 23 GPIO_ACTIVE_HIGH>; |
| 65 | regulator-min-microvolt = <1016000>; | 65 | regulator-min-microvolt = <1016000>; |
| @@ -76,7 +76,7 @@ Continuous Voltage With Enable GPIO Example: | |||
| 76 | 76 | ||
| 77 | Voltage Table Example: | 77 | Voltage Table Example: |
| 78 | pwm_regulator { | 78 | pwm_regulator { |
| 79 | compatible = "pwm-regulator; | 79 | compatible = "pwm-regulator"; |
| 80 | pwms = <&pwm1 0 8448 0>; | 80 | pwms = <&pwm1 0 8448 0>; |
| 81 | regulator-min-microvolt = <1016000>; | 81 | regulator-min-microvolt = <1016000>; |
| 82 | regulator-max-microvolt = <1114000>; | 82 | regulator-max-microvolt = <1114000>; |
diff --git a/MAINTAINERS b/MAINTAINERS index c77e3bff262f..d04335080cdd 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
| @@ -8761,6 +8761,7 @@ F: drivers/regulator/tps65217-regulator.c | |||
| 8761 | F: drivers/regulator/tps65218-regulator.c | 8761 | F: drivers/regulator/tps65218-regulator.c |
| 8762 | F: drivers/regulator/tps65910-regulator.c | 8762 | F: drivers/regulator/tps65910-regulator.c |
| 8763 | F: drivers/regulator/twl-regulator.c | 8763 | F: drivers/regulator/twl-regulator.c |
| 8764 | F: drivers/regulator/twl6030-regulator.c | ||
| 8764 | F: include/linux/i2c-omap.h | 8765 | F: include/linux/i2c-omap.h |
| 8765 | 8766 | ||
| 8766 | OMAP DEVICE TREE SUPPORT | 8767 | OMAP DEVICE TREE SUPPORT |
diff --git a/drivers/regulator/Makefile b/drivers/regulator/Makefile index 2142a5d3fc08..14294692beb9 100644 --- a/drivers/regulator/Makefile +++ b/drivers/regulator/Makefile | |||
| @@ -104,7 +104,7 @@ obj-$(CONFIG_REGULATOR_TPS6586X) += tps6586x-regulator.o | |||
| 104 | obj-$(CONFIG_REGULATOR_TPS65910) += tps65910-regulator.o | 104 | obj-$(CONFIG_REGULATOR_TPS65910) += tps65910-regulator.o |
| 105 | obj-$(CONFIG_REGULATOR_TPS65912) += tps65912-regulator.o | 105 | obj-$(CONFIG_REGULATOR_TPS65912) += tps65912-regulator.o |
| 106 | obj-$(CONFIG_REGULATOR_TPS80031) += tps80031-regulator.o | 106 | obj-$(CONFIG_REGULATOR_TPS80031) += tps80031-regulator.o |
| 107 | obj-$(CONFIG_REGULATOR_TWL4030) += twl-regulator.o | 107 | obj-$(CONFIG_REGULATOR_TWL4030) += twl-regulator.o twl6030-regulator.o |
| 108 | obj-$(CONFIG_REGULATOR_VEXPRESS) += vexpress-regulator.o | 108 | obj-$(CONFIG_REGULATOR_VEXPRESS) += vexpress-regulator.o |
| 109 | obj-$(CONFIG_REGULATOR_WM831X) += wm831x-dcdc.o | 109 | obj-$(CONFIG_REGULATOR_WM831X) += wm831x-dcdc.o |
| 110 | obj-$(CONFIG_REGULATOR_WM831X) += wm831x-isink.o | 110 | obj-$(CONFIG_REGULATOR_WM831X) += wm831x-isink.o |
diff --git a/drivers/regulator/arizona-ldo1.c b/drivers/regulator/arizona-ldo1.c index f7c88ff90c43..302b57cb89c6 100644 --- a/drivers/regulator/arizona-ldo1.c +++ b/drivers/regulator/arizona-ldo1.c | |||
| @@ -130,6 +130,7 @@ static const struct regulator_desc arizona_ldo1_hc = { | |||
| 130 | .uV_step = 50000, | 130 | .uV_step = 50000, |
| 131 | .n_voltages = 8, | 131 | .n_voltages = 8, |
| 132 | .enable_time = 1500, | 132 | .enable_time = 1500, |
| 133 | .ramp_delay = 24000, | ||
| 133 | 134 | ||
| 134 | .owner = THIS_MODULE, | 135 | .owner = THIS_MODULE, |
| 135 | }; | 136 | }; |
| @@ -153,6 +154,7 @@ static const struct regulator_desc arizona_ldo1 = { | |||
| 153 | .uV_step = 25000, | 154 | .uV_step = 25000, |
| 154 | .n_voltages = 13, | 155 | .n_voltages = 13, |
| 155 | .enable_time = 500, | 156 | .enable_time = 500, |
| 157 | .ramp_delay = 24000, | ||
| 156 | 158 | ||
| 157 | .owner = THIS_MODULE, | 159 | .owner = THIS_MODULE, |
| 158 | }; | 160 | }; |
diff --git a/drivers/regulator/axp20x-regulator.c b/drivers/regulator/axp20x-regulator.c index 54382ef902c6..e6a512ebeae2 100644 --- a/drivers/regulator/axp20x-regulator.c +++ b/drivers/regulator/axp20x-regulator.c | |||
| @@ -337,10 +337,18 @@ static const struct regulator_desc axp809_regulators[] = { | |||
| 337 | AXP22X_ELDO2_V_OUT, 0x1f, AXP22X_PWR_OUT_CTRL2, BIT(1)), | 337 | AXP22X_ELDO2_V_OUT, 0x1f, AXP22X_PWR_OUT_CTRL2, BIT(1)), |
| 338 | AXP_DESC(AXP809, ELDO3, "eldo3", "eldoin", 700, 3300, 100, | 338 | AXP_DESC(AXP809, ELDO3, "eldo3", "eldoin", 700, 3300, 100, |
| 339 | AXP22X_ELDO3_V_OUT, 0x1f, AXP22X_PWR_OUT_CTRL2, BIT(2)), | 339 | AXP22X_ELDO3_V_OUT, 0x1f, AXP22X_PWR_OUT_CTRL2, BIT(2)), |
| 340 | AXP_DESC_IO(AXP809, LDO_IO0, "ldo_io0", "ips", 700, 3300, 100, | 340 | /* |
| 341 | * Note the datasheet only guarantees reliable operation up to | ||
| 342 | * 3.3V, this needs to be enforced via dts provided constraints | ||
| 343 | */ | ||
| 344 | AXP_DESC_IO(AXP809, LDO_IO0, "ldo_io0", "ips", 700, 3800, 100, | ||
| 341 | AXP22X_LDO_IO0_V_OUT, 0x1f, AXP20X_GPIO0_CTRL, 0x07, | 345 | AXP22X_LDO_IO0_V_OUT, 0x1f, AXP20X_GPIO0_CTRL, 0x07, |
| 342 | AXP22X_IO_ENABLED, AXP22X_IO_DISABLED), | 346 | AXP22X_IO_ENABLED, AXP22X_IO_DISABLED), |
| 343 | AXP_DESC_IO(AXP809, LDO_IO1, "ldo_io1", "ips", 700, 3300, 100, | 347 | /* |
| 348 | * Note the datasheet only guarantees reliable operation up to | ||
| 349 | * 3.3V, this needs to be enforced via dts provided constraints | ||
| 350 | |||
