u-boot/doc/device-tree-bindings/pmic/max77663.txt
Svyatoslav Ryhel f2ed584994 power: pmic: add the base MAX77663 PMIC support
Add support to bind the regulators/child nodes with the pmic.
Also adds the pmic i2c based read/write functions to access pmic
registers.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2023-11-03 12:37:15 -04:00

84 lines
2 KiB
Text

MAXIM, MAX77663 PMIC
This device uses two drivers:
- drivers/power/pmic/max77663.c (for parent device)
- drivers/power/regulator/max77663_regulator.c (for child regulators)
This chapter describes the binding info for the PMIC driver and regulators.
Required properties for PMIC:
- compatible: "maxim,max77663"
- reg: usually 0x1c or 0x3c
With those two properties, the pmic device can be used for read/write only.
To bind each regulator, the optional regulators subnode should exists.
Optional subnode:
- name: regulators (subnode list of each device's regulator)
Regulators subnode contains set on supported regulators.
Required properties:
- regulator-name: used for regulator uclass platform data '.name',
List of supported regulator nodes names for max77663:
- sd0, sd1, sd2, sd3, ldo0, ldo1, ldo2, ldo3, ldo4, ldo5, ldo6, ldo7, ldo8
Optional:
- regulator-min-microvolt: minimum allowed Voltage to set
- regulator-max-microvolt: minimum allowed Voltage to set
- regulator-always-on: regulator should be never disabled
- regulator-boot-on: regulator should be enabled by the bootloader
Linux driver binding for this driver is compatible.
Example:
max77663@1c {
compatible = "maxim,max77663";
reg = <0x1c>;
regulators {
sd0 {
regulator-name = "vdd_cpu";
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1250000>;
regulator-always-on;
regulator-boot-on;
};
...
ldo0 {
regulator-name = "avdd_pll";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
};
...
ldo2 {
regulator-name = "avdd_usb";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
};
ldo3 {
regulator-name = "vdd_sdmmc3";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-always-on;
regulator-boot-on;
};
...
ldo8 {
regulator-name = "avdd_dsi_csi";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
};
};
};