forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'regulator-v5.9' of git://git.kernel.org/pub/scm/linux/kern…
…el/git/broonie/regulator Pull regulator updates from Mark Brown: "This time around the bulk of the work on the regulator API has been cleanups of various kinds, partly but not entirely inspired by the W=1 stuff that 0day turned on. There's also been a fairly large crop of new drivers, and a few bugfixes for existing drivers. - Mode setting support for MT6397 and DA9211. - New drivers for ChromeOS embedded controllers, Fairchild FAN53880, NXP PCA9450, Qualcomm LABIBB, MP5496, and VBUS booster, and Silergy SY8827N" * tag 'regulator-v5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (67 commits) regulator: add the sub node names for the MP5496 PMIC regulator: cros-ec-regulator: Fix double free of desc->name. platform/chrome: cros_ec: Fix host command for regulator control. regulator: pca9450: Convert to use module_i2c_driver regulator: fix memory leak on error path of regulator_register() regulator: Replace HTTP links with HTTPS ones regulator: convert QCOM SMD-RPM regulator document to YAML schema regulator: gpio: Honor regulator-boot-on property regulator: core: Add destroy_regulator() regulator: Correct kernel-doc inconsistency regulator: Add labibb regulator binding regulator: qcom: Add labibb driver regulator: Allow regulators to verify enabled during enable() regulator: cros-ec: Constify cros_ec_regulator_voltage_ops regulator: devres: Standardise on function documentation headers regulator: of_regulator: Add missing colon for rdev kerneldoc argument regulator: devres: Fix issues with kerneldoc headers regulator: fan53880: Add support for COMPILE_TEST regulator: fan53880: Add missing .owner field in regulator_desc dt-bindings: regulator: add pca9450 regulator yaml ...
- Loading branch information
Showing
64 changed files
with
3,042 additions
and
487 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
51 changes: 51 additions & 0 deletions
51
Documentation/devicetree/bindings/regulator/google,cros-ec-regulator.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/regulator/google,cros-ec-regulator.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: ChromeOS EC controlled voltage regulators | ||
|
||
maintainers: | ||
- Pi-Hsun Shih <[email protected]> | ||
|
||
description: | ||
Any property defined as part of the core regulator binding, defined in | ||
regulator.yaml, can also be used. | ||
|
||
allOf: | ||
- $ref: "regulator.yaml#" | ||
|
||
properties: | ||
compatible: | ||
const: google,cros-ec-regulator | ||
|
||
reg: | ||
maxItems: 1 | ||
description: Identifier for the voltage regulator to ChromeOS EC. | ||
|
||
required: | ||
- compatible | ||
- reg | ||
|
||
examples: | ||
- | | ||
spi0 { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
cros_ec: ec@0 { | ||
compatible = "google,cros-ec-spi"; | ||
reg = <0>; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
regulator@0 { | ||
compatible = "google,cros-ec-regulator"; | ||
regulator-min-microvolt = <1800000>; | ||
regulator-max-microvolt = <3300000>; | ||
reg = <0>; | ||
}; | ||
}; | ||
}; | ||
... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
190 changes: 190 additions & 0 deletions
190
Documentation/devicetree/bindings/regulator/nxp,pca9450-regulator.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,190 @@ | ||
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/regulator/nxp,pca9450-regulator.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: NXP PCA9450A/B/C Power Management Integrated Circuit regulators | ||
|
||
maintainers: | ||
- Robin Gong <[email protected]> | ||
|
||
description: | | ||
Regulator nodes should be named to BUCK_<number> and LDO_<number>. The | ||
definition for each of these nodes is defined using the standard | ||
binding for regulators at | ||
Documentation/devicetree/bindings/regulator/regulator.txt. | ||
Datasheet is available at | ||
https://www.nxp.com/docs/en/data-sheet/PCA9450DS.pdf | ||
#The valid names for PCA9450 regulator nodes are: | ||
#BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6, | ||
#LDO1, LDO2, LDO3, LDO4, LDO5 | ||
#Note: Buck3 removed on PCA9450B and connect with Buck1 on PCA9450C. | ||
|
||
properties: | ||
compatible: | ||
enum: | ||
- nxp,pca9450a | ||
- nxp,pca9450b | ||
- nxp,pca9450c | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
interrupts: | ||
maxItems: 1 | ||
|
||
regulators: | ||
type: object | ||
description: | | ||
list of regulators provided by this controller | ||
patternProperties: | ||
"^LDO[1-5]$": | ||
type: object | ||
$ref: regulator.yaml# | ||
description: | ||
Properties for single LDO regulator. | ||
|
||
properties: | ||
regulator-name: | ||
pattern: "^LDO[1-5]$" | ||
description: | ||
should be "LDO1", ..., "LDO5" | ||
|
||
unevaluatedProperties: false | ||
|
||
"^BUCK[1-6]$": | ||
type: object | ||
$ref: regulator.yaml# | ||
description: | ||
Properties for single BUCK regulator. | ||
|
||
properties: | ||
regulator-name: | ||
pattern: "^BUCK[1-6]$" | ||
description: | ||
should be "BUCK1", ..., "BUCK6" | ||
|
||
nxp,dvs-run-voltage: | ||
$ref: "/schemas/types.yaml#/definitions/uint32" | ||
minimum: 600000 | ||
maximum: 2187500 | ||
description: | ||
PMIC default "RUN" state voltage in uV. Only Buck1~3 have such | ||
dvs(dynamic voltage scaling) property. | ||
|
||
nxp,dvs-standby-voltage: | ||
$ref: "/schemas/types.yaml#/definitions/uint32" | ||
minimum: 600000 | ||
maximum: 2187500 | ||
description: | ||
PMIC default "STANDBY" state voltage in uV. Only Buck1~3 have such | ||
dvs(dynamic voltage scaling) property. | ||
|
||
unevaluatedProperties: false | ||
|
||
additionalProperties: false | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- interrupts | ||
- regulators | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/interrupt-controller/irq.h> | ||
i2c { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
pmic: pmic@25 { | ||
compatible = "nxp,pca9450b"; | ||
reg = <0x25>; | ||
pinctrl-0 = <&pinctrl_pmic>; | ||
interrupt-parent = <&gpio1>; | ||
interrupts = <3 IRQ_TYPE_LEVEL_LOW>; | ||
regulators { | ||
buck1: BUCK1 { | ||
regulator-name = "BUCK1"; | ||
regulator-min-microvolt = <600000>; | ||
regulator-max-microvolt = <2187500>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
regulator-ramp-delay = <3125>; | ||
}; | ||
buck2: BUCK2 { | ||
regulator-name = "BUCK2"; | ||
regulator-min-microvolt = <600000>; | ||
regulator-max-microvolt = <2187500>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
regulator-ramp-delay = <3125>; | ||
nxp,dvs-run-voltage = <950000>; | ||
nxp,dvs-standby-voltage = <850000>; | ||
}; | ||
buck4: BUCK4 { | ||
regulator-name = "BUCK4"; | ||
regulator-min-microvolt = <600000>; | ||
regulator-max-microvolt = <3400000>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
}; | ||
buck5: BUCK5 { | ||
regulator-name = "BUCK5"; | ||
regulator-min-microvolt = <600000>; | ||
regulator-max-microvolt = <3400000>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
}; | ||
buck6: BUCK6 { | ||
regulator-name = "BUCK6"; | ||
regulator-min-microvolt = <600000>; | ||
regulator-max-microvolt = <3400000>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
}; | ||
ldo1: LDO1 { | ||
regulator-name = "LDO1"; | ||
regulator-min-microvolt = <1600000>; | ||
regulator-max-microvolt = <3300000>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
}; | ||
ldo2: LDO2 { | ||
regulator-name = "LDO2"; | ||
regulator-min-microvolt = <800000>; | ||
regulator-max-microvolt = <1150000>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
}; | ||
ldo3: LDO3 { | ||
regulator-name = "LDO3"; | ||
regulator-min-microvolt = <800000>; | ||
regulator-max-microvolt = <3300000>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
}; | ||
ldo4: LDO4 { | ||
regulator-name = "LDO4"; | ||
regulator-min-microvolt = <800000>; | ||
regulator-max-microvolt = <3300000>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
}; | ||
ldo5: LDO5 { | ||
regulator-name = "LDO5"; | ||
regulator-min-microvolt = <1800000>; | ||
regulator-max-microvolt = <3300000>; | ||
regulator-boot-on; | ||
regulator-always-on; | ||
}; | ||
}; | ||
}; | ||
}; |
85 changes: 85 additions & 0 deletions
85
Documentation/devicetree/bindings/regulator/onnn,fan53880.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/regulator/onnn,fan53880.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Onsemi FAN53880 PMIC | ||
|
||
maintainers: | ||
- Christoph Fritz <[email protected]> | ||
|
||
description: | | ||
The FAN53880 is an I2C porgrammable power management IC (PMIC) | ||
that contains a BUCK (step-down converter), four low dropouts (LDO) | ||
and one BOOST (step-up converter) output. It is designed for mobile | ||
power applications. | ||
properties: | ||
$nodename: | ||
pattern: "pmic@[0-9a-f]{1,2}" | ||
compatible: | ||
enum: | ||
- onnn,fan53880 | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
VIN12-supply: | ||
description: Input supply phandle(s) for LDO1 and LDO2 | ||
|
||
VIN3-supply: | ||
description: Input supply phandle(s) for LDO3 | ||
|
||
VIN4-supply: | ||
description: Input supply phandle(s) for LDO4 | ||
|
||
PVIN-supply: | ||
description: Input supply phandle(s) for BUCK and BOOST | ||
|
||
regulators: | ||
type: object | ||
$ref: regulator.yaml# | ||
description: | | ||
list of regulators provided by this controller, must be named | ||
after their hardware counterparts LDO[1-4], BUCK and BOOST | ||
patternProperties: | ||
"^LDO[1-4]$": | ||
type: object | ||
$ref: regulator.yaml# | ||
|
||
"^BUCK|BOOST$": | ||
type: object | ||
$ref: regulator.yaml# | ||
|
||
additionalProperties: false | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- regulators | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
i2c { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
pmic@35 { | ||
compatible = "onnn,fan53880"; | ||
reg = <0x35>; | ||
PVIN-supply = <&fixreg_example_vcc>; | ||
regulators { | ||
BUCK { | ||
regulator-min-microvolt = <1200000>; | ||
regulator-max-microvolt = <1200000>; | ||
}; | ||
}; | ||
}; | ||
}; | ||
... |
Oops, something went wrong.