Loading Documentation/devicetree/bindings/regulator/gpio-regulator.txt +22 −8 Original line number Diff line number Diff line Loading @@ -4,16 +4,30 @@ Required properties: - compatible : Must be "regulator-gpio". - regulator-name : Defined in regulator.txt as optional, but required here. - states : Selection of available voltages and GPIO configs. if there are no states, then use a fixed regulator - gpios : Array of one or more GPIO pins used to select the regulator voltage/current listed in "states". - states : Selection of available voltages/currents provided by this regulator and matching GPIO configurations to achieve them. If there are no states in the "states" array, use a fixed regulator instead. Optional properties: - enable-gpio : GPIO to use to enable/disable the regulator. - gpios : GPIO group used to control voltage. - gpios-states : gpios pin's initial states array. 0: LOW, 1: HIGH. defualt is LOW if nothing is specified. - enable-gpios : GPIO used to enable/disable the regulator. Warning, the GPIO phandle flags are ignored and the GPIO polarity is controlled solely by the presence of "enable-active-high" DT property. This is due to compatibility with old DTs. - enable-active-high : Polarity of "enable-gpio" GPIO is active HIGH. Default is active LOW. - gpios-states : On operating systems, that don't support reading back gpio values in output mode (most notably linux), this array provides the state of GPIO pins set when requesting them from the gpio controller. Systems, that are capable of preserving state when requesting the lines, are free to ignore this property. 0: LOW, 1: HIGH. Default is LOW if nothing else is specified. - startup-delay-us : Startup time in microseconds. - enable-active-high : Polarity of GPIO is active high (default is low). - regulator-type : Specifies what is being regulated, must be either "voltage" or "current", defaults to voltage. Loading @@ -30,7 +44,7 @@ Example: regulator-max-microvolt = <2600000>; regulator-boot-on; enable-gpio = <&gpio0 23 0x4>; enable-gpios = <&gpio0 23 0x4>; gpios = <&gpio0 24 0x4 &gpio0 25 0x4>; states = <1800000 0x3 Loading Documentation/devicetree/bindings/regulator/st,stm32mp1-pwr-reg.txt 0 → 100644 +43 −0 Original line number Diff line number Diff line STM32MP1 PWR Regulators ----------------------- Available Regulators in STM32MP1 PWR block are: - reg11 for regulator 1V1 - reg18 for regulator 1V8 - usb33 for the swtich USB3V3 Required properties: - compatible: Must be "st,stm32mp1,pwr-reg" - list of child nodes that specify the regulator reg11, reg18 or usb33 initialization data for defined regulators. The definition for each of these nodes is defined using the standard binding for regulators found at Documentation/devicetree/bindings/regulator/regulator.txt. - vdd-supply: phandle to the parent supply/regulator node for vdd input - vdd_3v3_usbfs-supply: phandle to the parent supply/regulator node for usb33 Example: pwr_regulators: pwr@50001000 { compatible = "st,stm32mp1,pwr-reg"; reg = <0x50001000 0x10>; vdd-supply = <&vdd>; vdd_3v3_usbfs-supply = <&vdd_usb>; reg11: reg11 { regulator-name = "reg11"; regulator-min-microvolt = <1100000>; regulator-max-microvolt = <1100000>; }; reg18: reg18 { regulator-name = "reg18"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; }; usb33: usb33 { regulator-name = "usb33"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; }; }; drivers/mfd/wm831x-core.c +1 −1 Original line number Diff line number Diff line Loading @@ -34,7 +34,7 @@ /* Current settings - values are 2*2^(reg_val/4) microamps. These are * exported since they are used by multiple drivers. */ int wm831x_isinkv_values[WM831X_ISINK_MAX_ISEL + 1] = { const unsigned int wm831x_isinkv_values[WM831X_ISINK_MAX_ISEL + 1] = { 2, 2, 3, Loading drivers/mfd/wm8400-core.c +0 −6 Original line number Diff line number Diff line Loading @@ -35,12 +35,6 @@ static bool wm8400_volatile(struct device *dev, unsigned int reg) } } int wm8400_block_read(struct wm8400 *wm8400, u8 reg, int count, u16 *data) { return regmap_bulk_read(wm8400->regmap, reg, data, count); } EXPORT_SYMBOL_GPL(wm8400_block_read); static int wm8400_register_codec(struct wm8400 *wm8400) { const struct mfd_cell cell = { Loading drivers/regulator/88pm800.c +1 −17 Original line number Diff line number Diff line Loading @@ -77,11 +77,6 @@ struct pm800_regulator_info { int max_ua; }; struct pm800_regulators { struct pm80x_chip *chip; struct regmap *map; }; /* * vreg - the buck regs string. * ereg - the string for the enable register. Loading Loading @@ -235,7 +230,6 @@ static int pm800_regulator_probe(struct platform_device *pdev) { struct pm80x_chip *chip = dev_get_drvdata(pdev->dev.parent); struct pm80x_platform_data *pdata = dev_get_platdata(pdev->dev.parent); struct pm800_regulators *pm800_data; struct regulator_config config = { }; struct regulator_init_data *init_data; int i, ret; Loading @@ -252,18 +246,8 @@ static int pm800_regulator_probe(struct platform_device *pdev) return -EINVAL; } pm800_data = devm_kzalloc(&pdev->dev, sizeof(*pm800_data), GFP_KERNEL); if (!pm800_data) return -ENOMEM; pm800_data->map = chip->subchip->regmap_power; pm800_data->chip = chip; platform_set_drvdata(pdev, pm800_data); config.dev = chip->dev; config.regmap = pm800_data->map; config.regmap = chip->subchip->regmap_power; for (i = 0; i < PM800_ID_RG_MAX; i++) { struct regulator_dev *regulator; Loading Loading
Documentation/devicetree/bindings/regulator/gpio-regulator.txt +22 −8 Original line number Diff line number Diff line Loading @@ -4,16 +4,30 @@ Required properties: - compatible : Must be "regulator-gpio". - regulator-name : Defined in regulator.txt as optional, but required here. - states : Selection of available voltages and GPIO configs. if there are no states, then use a fixed regulator - gpios : Array of one or more GPIO pins used to select the regulator voltage/current listed in "states". - states : Selection of available voltages/currents provided by this regulator and matching GPIO configurations to achieve them. If there are no states in the "states" array, use a fixed regulator instead. Optional properties: - enable-gpio : GPIO to use to enable/disable the regulator. - gpios : GPIO group used to control voltage. - gpios-states : gpios pin's initial states array. 0: LOW, 1: HIGH. defualt is LOW if nothing is specified. - enable-gpios : GPIO used to enable/disable the regulator. Warning, the GPIO phandle flags are ignored and the GPIO polarity is controlled solely by the presence of "enable-active-high" DT property. This is due to compatibility with old DTs. - enable-active-high : Polarity of "enable-gpio" GPIO is active HIGH. Default is active LOW. - gpios-states : On operating systems, that don't support reading back gpio values in output mode (most notably linux), this array provides the state of GPIO pins set when requesting them from the gpio controller. Systems, that are capable of preserving state when requesting the lines, are free to ignore this property. 0: LOW, 1: HIGH. Default is LOW if nothing else is specified. - startup-delay-us : Startup time in microseconds. - enable-active-high : Polarity of GPIO is active high (default is low). - regulator-type : Specifies what is being regulated, must be either "voltage" or "current", defaults to voltage. Loading @@ -30,7 +44,7 @@ Example: regulator-max-microvolt = <2600000>; regulator-boot-on; enable-gpio = <&gpio0 23 0x4>; enable-gpios = <&gpio0 23 0x4>; gpios = <&gpio0 24 0x4 &gpio0 25 0x4>; states = <1800000 0x3 Loading
Documentation/devicetree/bindings/regulator/st,stm32mp1-pwr-reg.txt 0 → 100644 +43 −0 Original line number Diff line number Diff line STM32MP1 PWR Regulators ----------------------- Available Regulators in STM32MP1 PWR block are: - reg11 for regulator 1V1 - reg18 for regulator 1V8 - usb33 for the swtich USB3V3 Required properties: - compatible: Must be "st,stm32mp1,pwr-reg" - list of child nodes that specify the regulator reg11, reg18 or usb33 initialization data for defined regulators. The definition for each of these nodes is defined using the standard binding for regulators found at Documentation/devicetree/bindings/regulator/regulator.txt. - vdd-supply: phandle to the parent supply/regulator node for vdd input - vdd_3v3_usbfs-supply: phandle to the parent supply/regulator node for usb33 Example: pwr_regulators: pwr@50001000 { compatible = "st,stm32mp1,pwr-reg"; reg = <0x50001000 0x10>; vdd-supply = <&vdd>; vdd_3v3_usbfs-supply = <&vdd_usb>; reg11: reg11 { regulator-name = "reg11"; regulator-min-microvolt = <1100000>; regulator-max-microvolt = <1100000>; }; reg18: reg18 { regulator-name = "reg18"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; }; usb33: usb33 { regulator-name = "usb33"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; }; };
drivers/mfd/wm831x-core.c +1 −1 Original line number Diff line number Diff line Loading @@ -34,7 +34,7 @@ /* Current settings - values are 2*2^(reg_val/4) microamps. These are * exported since they are used by multiple drivers. */ int wm831x_isinkv_values[WM831X_ISINK_MAX_ISEL + 1] = { const unsigned int wm831x_isinkv_values[WM831X_ISINK_MAX_ISEL + 1] = { 2, 2, 3, Loading
drivers/mfd/wm8400-core.c +0 −6 Original line number Diff line number Diff line Loading @@ -35,12 +35,6 @@ static bool wm8400_volatile(struct device *dev, unsigned int reg) } } int wm8400_block_read(struct wm8400 *wm8400, u8 reg, int count, u16 *data) { return regmap_bulk_read(wm8400->regmap, reg, data, count); } EXPORT_SYMBOL_GPL(wm8400_block_read); static int wm8400_register_codec(struct wm8400 *wm8400) { const struct mfd_cell cell = { Loading
drivers/regulator/88pm800.c +1 −17 Original line number Diff line number Diff line Loading @@ -77,11 +77,6 @@ struct pm800_regulator_info { int max_ua; }; struct pm800_regulators { struct pm80x_chip *chip; struct regmap *map; }; /* * vreg - the buck regs string. * ereg - the string for the enable register. Loading Loading @@ -235,7 +230,6 @@ static int pm800_regulator_probe(struct platform_device *pdev) { struct pm80x_chip *chip = dev_get_drvdata(pdev->dev.parent); struct pm80x_platform_data *pdata = dev_get_platdata(pdev->dev.parent); struct pm800_regulators *pm800_data; struct regulator_config config = { }; struct regulator_init_data *init_data; int i, ret; Loading @@ -252,18 +246,8 @@ static int pm800_regulator_probe(struct platform_device *pdev) return -EINVAL; } pm800_data = devm_kzalloc(&pdev->dev, sizeof(*pm800_data), GFP_KERNEL); if (!pm800_data) return -ENOMEM; pm800_data->map = chip->subchip->regmap_power; pm800_data->chip = chip; platform_set_drvdata(pdev, pm800_data); config.dev = chip->dev; config.regmap = pm800_data->map; config.regmap = chip->subchip->regmap_power; for (i = 0; i < PM800_ID_RG_MAX; i++) { struct regulator_dev *regulator; Loading