[PATCH 2/6] ARM: i.MX8MP: skov: decrease VDD_SOC to 850mV
Ahmad Fatoum
a.fatoum at pengutronix.de
Sun Apr 13 23:50:05 PDT 2025
We don't do dynamic voltage scaling for VDD_SOC, so the value set in
barebox may never change if the Linux PMIC driver doesn't intentionally
change it. The static configuration we had in barebox was for overdrive
mode, but the kernel DT since v6.15-rc1 now configures all clocks for
nominal mode instead as that's what the heat sink was specced for.
Nominal mode is 850mV, so configure BUCK1 RUN voltage to exactly that
value.
Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
arch/arm/boards/skov-imx8mp/lowlevel.c | 16 ++++++++--------
arch/arm/dts/imx8mp-skov.dts | 1 +
2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/arch/arm/boards/skov-imx8mp/lowlevel.c b/arch/arm/boards/skov-imx8mp/lowlevel.c
index c35ffe526dae..692482f43580 100644
--- a/arch/arm/boards/skov-imx8mp/lowlevel.c
+++ b/arch/arm/boards/skov-imx8mp/lowlevel.c
@@ -48,22 +48,22 @@ static struct pmic_config pca9450_cfg[] = {
/* BUCKxOUT_DVS0/1 control BUCK123 output */
{ PCA9450_BUCK123_DVS, 0x29 },
/*
- * increase VDD_SOC to typical value 0.95V before first
+ * Set VDD_SOC to typical value 0.85V before first
* DRAM access, set DVS1 to 0.85v for suspend.
* Enable DVS control through PMIC_STBY_REQ and
* set B1_ENMODE=1 (ON by PMIC_ON_REQ=H)
*/
- { PCA9450_BUCK1OUT_DVS0, 0x1C },
+ { PCA9450_BUCK1OUT_DVS0, 0x14 },
{ PCA9450_BUCK1OUT_DVS1, 0x14 },
{ PCA9450_BUCK1CTRL, 0x59 },
- /*
- * Increase VDD_ARM to 0.95V to avoid issues in case software after
- * Barebox switches to the OD ARM frequency without reprogramming the
- * PMIC first.
- */
- { PCA9450_BUCK2OUT_DVS0, 0x1C },
/* set WDOG_B_CFG to cold reset */
{ PCA9450_RESET_CTRL, 0xA1 },
+ /*
+ * As we do cold resets and Linux will take care to reconfigure the
+ * pmic before switching to the OD ARM frequency, we will just keep
+ * VDD_ARM at 850mV
+ */
+ { PCA9450_BUCK2OUT_DVS0, 0x14 },
};
static void power_init_board(void)
diff --git a/arch/arm/dts/imx8mp-skov.dts b/arch/arm/dts/imx8mp-skov.dts
index 5271c9deabe5..9ec0b9d21709 100644
--- a/arch/arm/dts/imx8mp-skov.dts
+++ b/arch/arm/dts/imx8mp-skov.dts
@@ -4,6 +4,7 @@
#include <arm64/freescale/imx8mp.dtsi>
#include "imx8mp.dtsi"
+#include <arm64/freescale/imx8mp-nominal.dtsi>
#include <dt-bindings/leds/common.h>
--
2.39.5
More information about the barebox
mailing list