Commit 7784a6eb authored by Boris Brezillon's avatar Boris Brezillon Committed by Ludovic Desroches

ARM: dts: at91: sama5d2_xplained: Add proper regulator states for suspend-to-mem

When entering suspend-to-mem, all PMIC outputs are disabled except
VDDIODDR which is put in power saving mode, and whose voltage is
increased (probably to counter the poor accuracy of power saving mode).
Signed-off-by: default avatarBoris Brezillon <boris.brezillon@bootlin.com>
[claudiu.beznea@microchip.com: use regulator-changeable-in-suspend,
 regulator-suspend-max-microvolt, regulator-suspend-max-microvolt,
 use macros for regulators' states, add regulator-inital-state]
Signed-off-by: default avatarClaudiu Beznea <claudiu.beznea@microchip.com>
Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: default avatarLudovic Desroches <ludovic.desroches@microchip.com>
parent 1ba8994f
...@@ -47,6 +47,7 @@ ...@@ -47,6 +47,7 @@
#include "sama5d2-pinfunc.h" #include "sama5d2-pinfunc.h"
#include <dt-bindings/mfd/atmel-flexcom.h> #include <dt-bindings/mfd/atmel-flexcom.h>
#include <dt-bindings/gpio/gpio.h> #include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/regulator/active-semi,8945a-regulator.h>
/ { / {
model = "Atmel SAMA5D2 Xplained"; model = "Atmel SAMA5D2 Xplained";
...@@ -181,49 +182,102 @@ vdd_1v35_reg: REG_DCDC1 { ...@@ -181,49 +182,102 @@ vdd_1v35_reg: REG_DCDC1 {
regulator-name = "VDD_1V35"; regulator-name = "VDD_1V35";
regulator-min-microvolt = <1350000>; regulator-min-microvolt = <1350000>;
regulator-max-microvolt = <1350000>; regulator-max-microvolt = <1350000>;
regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_FIXED>,
<ACT8945A_REGULATOR_MODE_LOWPOWER>;
regulator-initial-mode = <ACT8945A_REGULATOR_MODE_FIXED>;
regulator-always-on; regulator-always-on;
regulator-state-mem {
regulator-on-in-suspend;
regulator-suspend-min-microvolt=<1400000>;
regulator-suspend-max-microvolt=<1400000>;
regulator-changeable-in-suspend;
regulator-mode=<ACT8945A_REGULATOR_MODE_LOWPOWER>;
};
}; };
vdd_1v2_reg: REG_DCDC2 { vdd_1v2_reg: REG_DCDC2 {
regulator-name = "VDD_1V2"; regulator-name = "VDD_1V2";
regulator-min-microvolt = <1100000>; regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1300000>; regulator-max-microvolt = <1300000>;
regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_FIXED>,
<ACT8945A_REGULATOR_MODE_LOWPOWER>;
regulator-initial-mode = <ACT8945A_REGULATOR_MODE_FIXED>;
regulator-always-on; regulator-always-on;
regulator-state-mem {
regulator-off-in-suspend;
};
}; };
vdd_3v3_reg: REG_DCDC3 { vdd_3v3_reg: REG_DCDC3 {
regulator-name = "VDD_3V3"; regulator-name = "VDD_3V3";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_FIXED>,
<ACT8945A_REGULATOR_MODE_LOWPOWER>;
regulator-initial-mode = <ACT8945A_REGULATOR_MODE_FIXED>;
regulator-always-on; regulator-always-on;
regulator-state-mem {
regulator-off-in-suspend;
};
}; };
vdd_fuse_reg: REG_LDO1 { vdd_fuse_reg: REG_LDO1 {
regulator-name = "VDD_FUSE"; regulator-name = "VDD_FUSE";
regulator-min-microvolt = <2500000>; regulator-min-microvolt = <2500000>;
regulator-max-microvolt = <2500000>; regulator-max-microvolt = <2500000>;
regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_NORMAL>,
<ACT8945A_REGULATOR_MODE_LOWPOWER>;
regulator-initial-mode = <ACT8945A_REGULATOR_MODE_NORMAL>;
regulator-always-on; regulator-always-on;
regulator-state-mem {
regulator-off-in-suspend;
};
}; };
vdd_3v3_lp_reg: REG_LDO2 { vdd_3v3_lp_reg: REG_LDO2 {
regulator-name = "VDD_3V3_LP"; regulator-name = "VDD_3V3_LP";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_NORMAL>,
<ACT8945A_REGULATOR_MODE_LOWPOWER>;
regulator-initial-mode = <ACT8945A_REGULATOR_MODE_NORMAL>;
regulator-always-on; regulator-always-on;
regulator-state-mem {
regulator-off-in-suspend;
};
}; };
vdd_led_reg: REG_LDO3 { vdd_led_reg: REG_LDO3 {
regulator-name = "VDD_LED"; regulator-name = "VDD_LED";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_NORMAL>,
<ACT8945A_REGULATOR_MODE_LOWPOWER>;
regulator-initial-mode = <ACT8945A_REGULATOR_MODE_NORMAL>;
regulator-always-on; regulator-always-on;
regulator-state-mem {
regulator-off-in-suspend;
};
}; };
vdd_sdhc_1v8_reg: REG_LDO4 { vdd_sdhc_1v8_reg: REG_LDO4 {
regulator-name = "VDD_SDHC_1V8"; regulator-name = "VDD_SDHC_1V8";
regulator-min-microvolt = <1800000>; regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>; regulator-max-microvolt = <1800000>;
regulator-allowed-modes = <ACT8945A_REGULATOR_MODE_NORMAL>,
<ACT8945A_REGULATOR_MODE_LOWPOWER>;
regulator-initial-mode = <ACT8945A_REGULATOR_MODE_NORMAL>;
regulator-always-on; regulator-always-on;
regulator-state-mem {
regulator-off-in-suspend;
};
}; };
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment