diff options
author | Jacky Bai <ping.bai@nxp.com> | 2019-12-03 10:38:11 +0800 |
---|---|---|
committer | Anson Huang <Anson.Huang@nxp.com> | 2019-12-13 10:45:50 +0800 |
commit | 837f1ff8c210d7518d7264177b1675694f57012b (patch) | |
tree | 2844625b4c4a3663f8dcc7785a5dfb36eb45dbef | |
parent | fc444a01c1306fc09a43c9b8e064973f3ba5cb3d (diff) |
plat: imx8mn: Enable dram retention suuport on imx8mn
Enable dram retention support on i.MX8MN.
Signed-off-by: Jacky Bai <ping.bai@nxp.com>
-rw-r--r-- | plat/imx/imx8m/ddr/dram_retention.c | 4 | ||||
-rw-r--r-- | plat/imx/imx8m/imx8mn/imx8mn_bl31_setup.c | 4 | ||||
-rw-r--r-- | plat/imx/imx8m/imx8mn/platform.mk | 4 |
3 files changed, 12 insertions, 0 deletions
diff --git a/plat/imx/imx8m/ddr/dram_retention.c b/plat/imx/imx8m/ddr/dram_retention.c index 91d887fe..b919fecc 100644 --- a/plat/imx/imx8m/ddr/dram_retention.c +++ b/plat/imx/imx8m/ddr/dram_retention.c @@ -132,8 +132,12 @@ void dram_exit_retention(void) /* before write Dynamic reg, sw_done should be 0 */ mmio_write_32(DDRC_SWCTL(0), 0x0); + +#if !PLAT_imx8mn if (dram_info.dram_type == DDRC_LPDDR4) mmio_write_32(DDRC_DDR_SS_GPR0, 0x01); /*LPDDR4 mode */ +#endif /* !PLAT_imx8mn */ + mmio_write_32(DDRC_DFIMISC(0), 0x0); /* dram phy re-init */ diff --git a/plat/imx/imx8m/imx8mn/imx8mn_bl31_setup.c b/plat/imx/imx8m/imx8mn/imx8mn_bl31_setup.c index b8fcca92..190a874e 100644 --- a/plat/imx/imx8m/imx8mn/imx8mn_bl31_setup.c +++ b/plat/imx/imx8m/imx8mn/imx8mn_bl31_setup.c @@ -21,6 +21,7 @@ #include <lib/xlat_tables/xlat_tables.h> #include <plat/common/platform.h> +#include <dram.h> #include <gpc.h> #include <imx_aipstz.h> #include <imx_uart.h> @@ -169,6 +170,9 @@ void bl31_platform_setup(void) /* select the CKIL source to 32K OSC */ mmio_write_32(IMX_ANAMIX_BASE + ANAMIX_MISC_CTL, 0x1); + /* Init the dram info */ + dram_info_init(SAVED_DRAM_TIMING_BASE); + plat_gic_driver_init(); plat_gic_init(); diff --git a/plat/imx/imx8m/imx8mn/platform.mk b/plat/imx/imx8m/imx8mn/platform.mk index 798a795e..8d7f8feb 100644 --- a/plat/imx/imx8m/imx8mn/platform.mk +++ b/plat/imx/imx8m/imx8mn/platform.mk @@ -8,6 +8,9 @@ PLAT_INCLUDES := -Iplat/imx/common/include \ -Iplat/imx/imx8m/include \ -Iplat/imx/imx8m/imx8mn/include +IMX_DRAM_SOURCES := plat/imx/imx8m/ddr/dram.c \ + plat/imx/imx8m/ddr/dram_retention.c + IMX_GIC_SOURCES := drivers/arm/gic/v3/gicv3_helpers.c \ drivers/arm/gic/v3/arm_gicv3_common.c \ drivers/arm/gic/v3/gic500.c \ @@ -36,6 +39,7 @@ BL31_SOURCES += plat/imx/common/imx8_helpers.S \ drivers/arm/tzc/tzc380.c \ drivers/delay_timer/delay_timer.c \ drivers/delay_timer/generic_delay_timer.c \ + ${IMX_DRAM_SOURCES} \ ${IMX_GIC_SOURCES} USE_COHERENT_MEM := 1 |