[PATCH 2/2] board: phytec: phycore-imx93: Add VOLT_LOW_DRIVE frequency fixup
Primoz Fiser
primoz.fiser at norik.com
Thu Aug 7 15:13:54 CEST 2025
For phyCORE-i.MX93 SoMs with i.MX93 parts running in VOLT_LOW_DRIVE mode
(SoCs with speed grade fuse set to 900 MHz) reduce usdhc clocks from 400
MHz to 266 MHz. Do this in board code since global imx9 board_fix_fdt()
is not used in case of phycore-imx93 board since commit d3b9b7996889
("board: phytec: imx93: Add eeprom-based hardware introspection").
While at it, add a note to ft_board_setup() function to inform that
fixup for Linux device-tree is taken care by ft_system_setup() in imx9
global arch/arm/mach-imx/imx9/soc.c implementation.
Signed-off-by: Primoz Fiser <primoz.fiser at norik.com>
---
board/phytec/phycore_imx93/phycore-imx93.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/board/phytec/phycore_imx93/phycore-imx93.c b/board/phytec/phycore_imx93/phycore-imx93.c
index a55795e06034..b64138053935 100644
--- a/board/phytec/phycore_imx93/phycore-imx93.c
+++ b/board/phytec/phycore_imx93/phycore-imx93.c
@@ -82,6 +82,10 @@ int board_fix_fdt(void *blob)
emmc_fixup(blob, &data);
+ /* Update dtb clocks for low drive mode */
+ if (is_voltage_mode(VOLT_LOW_DRIVE))
+ low_drive_freq_update(blob);
+
return 0;
}
@@ -89,5 +93,10 @@ int ft_board_setup(void *blob, struct bd_info *bd)
{
emmc_fixup(blob, NULL);
+ /**
+ * NOTE: VOLT_LOW_DRIVE fixup is done by the ft_system_setup()
+ * in arch/arm/mach-imx/imx9/soc.c for Linux device-tree.
+ */
+
return 0;
}
--
2.34.1
More information about the U-Boot
mailing list