arm64: dts: mediatek: cherry: Add platform regulators layout and config

Add the regulators layout for this platform, including the basic power
rails controlled by the EC (and/or always on).
Moreover, include the MT6359 PMIC devicetree and add some configuration
for its regulators, essential to keep the machine alive after booting.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Link: https://lore.kernel.org/r/20220704101321.44835-4-angelogioacchino.delregno@collabora.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
This commit is contained in:
AngeloGioacchino Del Regno 2022-07-04 12:13:13 +02:00 committed by Matthias Brugger
parent 5eb2e303ec
commit 37242cb97a

View file

@ -5,6 +5,7 @@
#include <dt-bindings/gpio/gpio.h>
#include "mt8195.dtsi"
#include "mt6359.dtsi"
/ {
aliases {
@ -19,6 +20,109 @@ memory@40000000 {
device_type = "memory";
reg = <0 0x40000000 0 0x80000000>;
};
/* system wide LDO 3.3V power rail */
pp3300_z5: regulator-pp3300-ldo-z5 {
compatible = "regulator-fixed";
regulator-name = "pp3300_ldo_z5";
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&ppvar_sys>;
};
/* separately switched 3.3V power rail */
pp3300_s3: regulator-pp3300-s3 {
compatible = "regulator-fixed";
regulator-name = "pp3300_s3";
/* automatically sequenced by PMIC EXT_PMIC_EN2 */
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&pp3300_z2>;
};
/* system wide 3.3V power rail */
pp3300_z2: regulator-pp3300-z2 {
compatible = "regulator-fixed";
regulator-name = "pp3300_z2";
/* EN pin tied to pp4200_z2, which is controlled by EC */
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&ppvar_sys>;
};
/* system wide 4.2V power rail */
pp4200_z2: regulator-pp4200-z2 {
compatible = "regulator-fixed";
regulator-name = "pp4200_z2";
/* controlled by EC */
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <4200000>;
regulator-max-microvolt = <4200000>;
vin-supply = <&ppvar_sys>;
};
/* system wide switching 5.0V power rail */
pp5000_s5: regulator-pp5000-s5 {
compatible = "regulator-fixed";
regulator-name = "pp5000_s5";
/* controlled by EC */
regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
vin-supply = <&ppvar_sys>;
};
/* system wide semi-regulated power rail from battery or USB */
ppvar_sys: regulator-ppvar-sys {
compatible = "regulator-fixed";
regulator-name = "ppvar_sys";
regulator-always-on;
regulator-boot-on;
};
};
/* for CPU-L */
&mt6359_vcore_buck_reg {
regulator-always-on;
};
/* for CORE */
&mt6359_vgpu11_buck_reg {
regulator-always-on;
};
&mt6359_vgpu11_sshub_buck_reg {
regulator-always-on;
regulator-min-microvolt = <550000>;
regulator-max-microvolt = <550000>;
};
/* for CORE SRAM */
&mt6359_vpu_buck_reg {
regulator-always-on;
};
&mt6359_vrf12_ldo_reg {
regulator-always-on;
};
/* for GPU SRAM */
&mt6359_vsram_others_ldo_reg {
regulator-always-on;
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <750000>;
};
&mt6359_vufs_ldo_reg {
regulator-always-on;
};
&uart0 {