summaryrefslogtreecommitdiff
path: root/arch/arm/mach-imx
diff options
context:
space:
mode:
authorAnson Huang <Anson.Huang@nxp.com>2016-10-11 00:20:59 +0800
committerRobby Cai <robby.cai@nxp.com>2016-11-16 15:41:07 +0800
commitb878389e00f5ea1f2187c5463e114926b51626b1 (patch)
tree0cf9e38f6bff154169c6d172c1866155fb1aa206 /arch/arm/mach-imx
parent935b70d37f0dfbf2c685ccdc3ac379f70a2cb02a (diff)
MLK-13306-1 ARM: imx: correct ddr type for i.mx6sll
For MMDC, LPDDR3 type's value is 2b'11, which is different from DDRC, so correct it. Signed-off-by: Anson Huang <Anson.Huang@nxp.com> (cherry picked from commit 80c543452d9d66f03b84fe31ca3d6e7bbdf28603)
Diffstat (limited to 'arch/arm/mach-imx')
-rw-r--r--arch/arm/mach-imx/anatop.c10
-rw-r--r--arch/arm/mach-imx/mxc.h1
-rw-r--r--arch/arm/mach-imx/pm-imx6.c2
3 files changed, 8 insertions, 5 deletions
diff --git a/arch/arm/mach-imx/anatop.c b/arch/arm/mach-imx/anatop.c
index 9ba4313de8fa..7881d9c699ee 100644
--- a/arch/arm/mach-imx/anatop.c
+++ b/arch/arm/mach-imx/anatop.c
@@ -68,7 +68,8 @@ static void imx_anatop_enable_weak2p5(bool enable)
regmap_read(anatop, ANADIG_ANA_MISC0, &val);
- if (cpu_is_imx6sx() || cpu_is_imx6ul() || cpu_is_imx6ull())
+ if (cpu_is_imx6sx() || cpu_is_imx6ul() || cpu_is_imx6ull()
+ || cpu_is_imx6sll())
mask = BM_ANADIG_ANA_MISC0_V3_STOP_MODE_CONFIG;
else if (cpu_is_imx6sl())
mask = BM_ANADIG_ANA_MISC0_V2_STOP_MODE_CONFIG;
@@ -95,7 +96,8 @@ static inline void imx_anatop_enable_2p5_pulldown(bool enable)
static inline void imx_anatop_disconnect_high_snvs(bool enable)
{
- if (cpu_is_imx6sx() || cpu_is_imx6ul() || cpu_is_imx6ull())
+ if (cpu_is_imx6sx() || cpu_is_imx6ul() || cpu_is_imx6ull() ||
+ cpu_is_imx6sll())
regmap_write(anatop, ANADIG_ANA_MISC0 +
(enable ? REG_SET : REG_CLR),
BM_ANADIG_ANA_MISC0_V2_DISCON_HIGH_SNVS);
@@ -147,7 +149,7 @@ void imx_anatop_pre_suspend(void)
imx_anatop_disable_pu(true);
if ((imx_mmdc_get_ddr_type() == IMX_DDR_TYPE_LPDDR2 ||
- imx_mmdc_get_ddr_type() == IMX_DDR_TYPE_LPDDR3) &&
+ imx_mmdc_get_ddr_type() == IMX_MMDC_DDR_TYPE_LPDDR3) &&
!imx_gpc_usb_wakeup_enabled())
imx_anatop_enable_2p5_pulldown(true);
else
@@ -177,7 +179,7 @@ void imx_anatop_post_resume(void)
imx_anatop_disable_pu(false);
if ((imx_mmdc_get_ddr_type() == IMX_DDR_TYPE_LPDDR2 ||
- imx_mmdc_get_ddr_type() == IMX_DDR_TYPE_LPDDR3) &&
+ imx_mmdc_get_ddr_type() == IMX_MMDC_DDR_TYPE_LPDDR3) &&
!imx_gpc_usb_wakeup_enabled())
imx_anatop_enable_2p5_pulldown(false);
else
diff --git a/arch/arm/mach-imx/mxc.h b/arch/arm/mach-imx/mxc.h
index f76a184e798a..8029b1d95ee2 100644
--- a/arch/arm/mach-imx/mxc.h
+++ b/arch/arm/mach-imx/mxc.h
@@ -63,6 +63,7 @@
#define IMX_DDR_TYPE_DDR3 0
#define IMX_DDR_TYPE_LPDDR2 1
#define IMX_DDR_TYPE_LPDDR3 2
+#define IMX_MMDC_DDR_TYPE_LPDDR3 3
diff --git a/arch/arm/mach-imx/pm-imx6.c b/arch/arm/mach-imx/pm-imx6.c
index e41c4c268b30..e0f529b4a723 100644
--- a/arch/arm/mach-imx/pm-imx6.c
+++ b/arch/arm/mach-imx/pm-imx6.c
@@ -1128,7 +1128,7 @@ static int __init imx6q_suspend_init(const struct imx6_pm_socdata *socdata)
mmdc_offset_array[i]);
}
- if (cpu_is_imx6sll() && pm_info->ddr_type == IMX_DDR_TYPE_LPDDR3) {
+ if (cpu_is_imx6sll() && pm_info->ddr_type == IMX_MMDC_DDR_TYPE_LPDDR3) {
pm_info->mmdc_val[0][1] = 0x8000;
pm_info->mmdc_val[2][1] = 0xa1390003;
pm_info->mmdc_val[3][1] = 0x470000;