@@ -48,3 +48,6 @@ void get_soc_name(char name[SOC_NAME_SIZE]);
u32 get_bootmode(void);
int setup_mac_address(void);
+
+/* board power management : configure vddcore according OPP */
+void board_vddcore_init(u32 voltage_mv);
@@ -1226,6 +1226,10 @@ bool stm32mp1_supports_opp(u32 opp_id, u32 cpu_type)
}
}
+__weak void board_vddcore_init(u32 voltage_mv)
+{
+}
+
/*
* gets OPP parameters (frequency in KHz and voltage in mV) from
* an OPP table subnode. Platform HW support capabilities are also checked.
@@ -1303,6 +1307,7 @@ int stm32mp1_get_max_opp_freq(struct stm32mp1_clk_priv *priv, u64 *freq_hz)
return -FDT_ERR_NOTFOUND;
*freq_hz = (u64)1000U * freq;
+ board_vddcore_init(voltage);
return 0;
}