From: Viorel Suman <viorel.su...@nxp.com>

Reading CSRs for low power use shall be done regardless
the way the PHY is configured, so move the call outside
"ddr_cfg_phy" function in order to be called for QuickBoot FW
also.

Signed-off-by: Viorel Suman <viorel.su...@nxp.com>
Signed-off-by: Peng Fan <peng....@nxp.com>
---
 drivers/ddr/imx/imx8m/ddr_init.c   | 4 ++++
 drivers/ddr/imx/imx9/ddr_init.c    | 4 ++++
 drivers/ddr/imx/phy/ddrphy_train.c | 4 ----
 3 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/ddr/imx/imx8m/ddr_init.c b/drivers/ddr/imx/imx8m/ddr_init.c
index 
7fdcfee1d9c982d391fe0d20e373a66d71d26e23..3b942fd3986699f76c1417c10f205dcdd7792dd0
 100644
--- a/drivers/ddr/imx/imx8m/ddr_init.c
+++ b/drivers/ddr/imx/imx8m/ddr_init.c
@@ -396,6 +396,10 @@ int ddr_init(struct dram_timing_info *dram_timing)
 
        debug("DDRINFO: ddrphy config done\n");
 
+       /* save the ddr PHY trained CSR in memory for low power use */
+       ddrphy_trained_csr_save(dram_timing->ddrphy_trained_csr,
+                               dram_timing->ddrphy_trained_csr_num);
+
        /*
         * step14 CalBusy.0 =1, indicates the calibrator is actively
         * calibrating. Wait Calibrating done.
diff --git a/drivers/ddr/imx/imx9/ddr_init.c b/drivers/ddr/imx/imx9/ddr_init.c
index 
42ba493ebca4d6efc5ee047dd3f049cebb24b69d..50c2dbd40084c6a4d750f628c5c1fc76fa017596
 100644
--- a/drivers/ddr/imx/imx9/ddr_init.c
+++ b/drivers/ddr/imx/imx9/ddr_init.c
@@ -385,6 +385,10 @@ int ddr_init(struct dram_timing_info *dram_timing)
        if (ret)
                return ret;
 
+       /* save the ddr PHY trained CSR in memory for low power use */
+       ddrphy_trained_csr_save(dram_timing->ddrphy_trained_csr,
+                               dram_timing->ddrphy_trained_csr_num);
+
        debug("DDRINFO: ddrphy config done\n");
 
        update_umctl2_rank_space_setting(dram_timing, dram_timing->fsp_msg_num 
- 1);
diff --git a/drivers/ddr/imx/phy/ddrphy_train.c 
b/drivers/ddr/imx/phy/ddrphy_train.c
index 
1a2d071d6f10f8e7482e7be8498e1c18578404ec..84a1a17734f4d2a90f3bf0a6e54b5ae4ed49bebd
 100644
--- a/drivers/ddr/imx/phy/ddrphy_train.c
+++ b/drivers/ddr/imx/phy/ddrphy_train.c
@@ -89,9 +89,5 @@ int ddr_cfg_phy(struct dram_timing_info *dram_timing)
                dram_cfg++;
        }
 
-       /* save the ddr PHY trained CSR in memory for low power use */
-       ddrphy_trained_csr_save(dram_timing->ddrphy_trained_csr,
-                               dram_timing->ddrphy_trained_csr_num);
-
        return 0;
 }

-- 
2.35.3

Reply via email to