RE: [PATCH] ARM: dts: microchip: at91-sam9x75_curiosity: Add PMIC suspend voltage configuration
From: Mihai.Sain
Date: Mon Jan 13 2025 - 02:40:33 EST
> Add missing essential configuration for the PMIC rails, which is necessary for
> proper low-power mode operation. This patch adds the required settings to
> ensure that the regulators behave correctly during Suspend-to-RAM and Standby
> states. Otherwise, after resuming, it receives: "No configuration"
> message.
>
> Our driver implements the set_suspend_voltage and set_suspend_mode callbacks,
> which require the `regulator-suspend-microvolt` property to be specified in the
> device tree for each regulator node. This property defines the voltage level
> that the regulator should maintain during suspend mode.
>
> Additionally, according to the datasheet, some regulators need to be turned on
> or off during suspend mode. This patch addresses these requirements by adding
> the `regulator-on-in-suspend` and `regulator-off-in-suspend` properties where
> appropriate.
>
> Fixes: 371a47c9a58a ("ARM: dts: microchip: sam9x75_curiosity: add sam9x75
> curiosity board")
> Signed-off-by: Andrei Simion <andrei.simion@xxxxxxxxxxxxx>
Hi Andrei,
Tested-by: Mihai Sain <mihai.sain@xxxxxxxxxxxxx>
Best regards,
Mihai Sain
> ---
> .../dts/microchip/at91-sam9x75_curiosity.dts | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/arch/arm/boot/dts/microchip/at91-sam9x75_curiosity.dts
> b/arch/arm/boot/dts/microchip/at91-sam9x75_curiosity.dts
> index 1a6a909a5043..5514ad10cda5 100644
> --- a/arch/arm/boot/dts/microchip/at91-sam9x75_curiosity.dts
> +++ b/arch/arm/boot/dts/microchip/at91-sam9x75_curiosity.dts
> @@ -110,10 +110,12 @@ vdd_3v3: VDD_IO {
>
> regulator-state-standby {
> regulator-on-in-suspend;
> + regulator-suspend-microvolt = <3300000>;
> regulator-mode = <4>;
> };
>
> regulator-state-mem {
> + regulator-off-in-suspend;
> regulator-mode = <4>;
> };
> };
> @@ -128,11 +130,13 @@ vddioddr: VDD_DDR {
>
> regulator-state-standby {
> regulator-on-in-suspend;
> + regulator-suspend-microvolt = <1350000>;
> regulator-mode = <4>;
> };
>
> regulator-state-mem {
> regulator-on-in-suspend;
> + regulator-suspend-microvolt = <1350000>;
> regulator-mode = <4>;
> };
> };
> @@ -147,10 +151,12 @@ vddcore: VDD_CORE {
>
> regulator-state-standby {
> regulator-on-in-suspend;
> + regulator-suspend-microvolt = <1150000>;
> regulator-mode = <4>;
> };
>
> regulator-state-mem {
> + regulator-off-in-suspend;
> regulator-mode = <4>;
> };
> };
> @@ -166,10 +172,12 @@ dcdc4: VDD_OTHER {
>
> regulator-state-standby {
> regulator-on-in-suspend;
> + regulator-suspend-microvolt = <1150000>;
> regulator-mode = <4>;
> };
>
> regulator-state-mem {
> + regulator-off-in-suspend;
> regulator-mode = <4>;
> };
> };
> @@ -182,6 +190,11 @@ vldo1: LDO1 {
>
> regulator-state-standby {
> regulator-on-in-suspend;
> + regulator-suspend-microvolt = <3300000>;
> + };
> +
> + regulator-state-mem {
> + regulator-off-in-suspend;
> };
> };
>
> @@ -192,6 +205,11 @@ vldo2: LDO2 {
>
> regulator-state-standby {
> regulator-on-in-suspend;
> + regulator-suspend-microvolt = <1800000>;
> + };
> +
> + regulator-state-mem {
> + regulator-off-in-suspend;
> };
> };
> };
>
> base-commit: 37136bf5c3a6f6b686d74f41837a6406bec6b7bc
> --
> 2.34.1
>