summaryrefslogtreecommitdiff
path: root/drivers/ddr/imx
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2024-01-08 12:00:18 -0500
committerTom Rini <trini@konsulko.com>2024-01-08 12:00:18 -0500
commit93d91e9485d902a1836a22e72d1a545b587adf36 (patch)
treef368b4e3c2220e7cd34c83bf192d8b674158d16b /drivers/ddr/imx
parent866ca972d6c3cabeaf6dbac431e8e08bb30b3c8e (diff)
parentf28a77589e7505535a4eebdc7269df98f67dbe68 (diff)
Merge branch 'next'
Diffstat (limited to 'drivers/ddr/imx')
-rw-r--r--drivers/ddr/imx/phy/helper.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/ddr/imx/phy/helper.c b/drivers/ddr/imx/phy/helper.c
index 855a874ac1e..b9b2403012d 100644
--- a/drivers/ddr/imx/phy/helper.c
+++ b/drivers/ddr/imx/phy/helper.c
@@ -49,6 +49,13 @@ void ddr_load_train_firmware(enum fw_type type)
unsigned long imem_start = (unsigned long)_end + fw_offset;
unsigned long dmem_start;
unsigned long imem_len = IMEM_LEN, dmem_len = DMEM_LEN;
+ static enum fw_type last_type = -1;
+
+ /* If FW doesn't change, we can save the loading. */
+ if (last_type == type)
+ return;
+
+ last_type = type;
#ifdef CONFIG_SPL_OF_CONTROL
if (gd->fdt_blob && !fdt_check_header(gd->fdt_blob)) {