MLK-11387-2 ARM: imx: add imx7d lpddr2 support
authorAnson Huang <b20788@freescale.com>
Thu, 20 Aug 2015 10:27:56 +0000 (18:27 +0800)
committerNitin Garg <nitin.garg@nxp.com>
Mon, 19 Mar 2018 19:48:43 +0000 (14:48 -0500)
i.MX7D LPDDR2 board has same flow of suspend/resume
and busfreq with LPDDR3, the only difference is the
DRAM init script which is done in u-boot.

This patch adds suspend/resume and busfreq support
for i.MX7D LPDDR2, tested on i.MX7D 19x19 LPDDR2 board.

Signed-off-by: Anson Huang <b20788@freescale.com>
Conflicts:
arch/arm/mach-imx/busfreq_ddr3.c
arch/arm/mach-imx/pm-imx7.c

arch/arm/mach-imx/busfreq_ddr3.c
arch/arm/mach-imx/pm-imx7.c

index 0f058f9..e3d4bee 100644 (file)
@@ -477,7 +477,8 @@ int init_ddrc_ddr_settings(struct platform_device *busfreq_pdev)
                        (void *)ddr_freq_change_iram_base + SMP_WFE_CODE_SIZE,
                        &imx7d_ddr3_freq_change,
                        MX7_BUSFREQ_OCRAM_SIZE - SMP_WFE_CODE_SIZE);
-       else if (ddr_type == IMX_DDR_TYPE_LPDDR3)
+       else if (ddr_type == IMX_DDR_TYPE_LPDDR3
+               || ddr_type == IMX_DDR_TYPE_LPDDR2)
                imx7d_change_ddr_freq = (void *)fncpy(
                        (void *)ddr_freq_change_iram_base +
                        SMP_WFE_CODE_SIZE,
index 02d1678..45c03d6 100644 (file)
@@ -606,7 +606,8 @@ void __init imx7d_pm_init(void)
        struct device_node *np;
        struct resource res;
 
-       if (imx_ddrc_get_ddr_type() == IMX_DDR_TYPE_LPDDR3)
+       if (imx_ddrc_get_ddr_type() == IMX_DDR_TYPE_LPDDR3
+               || imx_ddrc_get_ddr_type() == IMX_DDR_TYPE_LPDDR2)
                imx7_pm_common_init(&imx7d_pm_data_lpddr3);
        else if (imx_ddrc_get_ddr_type() == IMX_DDR_TYPE_DDR3)
                imx7_pm_common_init(&imx7d_pm_data_ddr3);