summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-cardhu-memory.c
diff options
context:
space:
mode:
authorRay Poudrier <rapoudrier@nvidia.com>2011-11-03 18:12:15 -0700
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:50:11 -0800
commit1dbac767d324ab9dfa08f65d1e63212afcd3d165 (patch)
tree026d9c1eb8fab299620387a3facc085a6024aa88 /arch/arm/mach-tegra/board-cardhu-memory.c
parent21a64ae60c23b4c74dbb7674b676bd04fc99f448 (diff)
ARM: tegra: cardhu: Expand EMC DFS table for Hynix DDR3
- Added dynamic self-refresh field, and updated arbitration settings Bug 896654 Reviewed-on: http://git-master/r/61725 (cherry picked from commit 2d5a9c1fbe5cdf4f4233ec3eca230d625d0439de) Reviewed-on: http://git-master/r/62296 (cherry picked from commit 31f9198bcc05c35cc4aa797e4f224aed62fdfc64) Signed-off-by: Ray Poudrier <rapoudrier@nvidia.com> Reviewed-on: http://git-master/r/62534 (cherry picked from commit a0977e407c3937aae077304ca1ec1f937419c07b) Change-Id: I16b46da22d1a7c40bafcc1e55fd22f2979f3798b Reviewed-on: http://git-master/r/64982 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com> Rebase-Id: R15d84c206780f90108f44ebe7cc4812d75d3e57f
Diffstat (limited to 'arch/arm/mach-tegra/board-cardhu-memory.c')
-rw-r--r--arch/arm/mach-tegra/board-cardhu-memory.c24
1 files changed, 15 insertions, 9 deletions
diff --git a/arch/arm/mach-tegra/board-cardhu-memory.c b/arch/arm/mach-tegra/board-cardhu-memory.c
index bf73e0b35846..9a2bbdc0b900 100644
--- a/arch/arm/mach-tegra/board-cardhu-memory.c
+++ b/arch/arm/mach-tegra/board-cardhu-memory.c
@@ -615,7 +615,7 @@ static const struct tegra_emc_table cardhu_emc_tables_h5tc2g[] = {
static const struct tegra_emc_table cardhu_emc_tables_h5tc2g_a2[] = {
{
- 0x31, /* Rev 3.1 */
+ 0x32, /* Rev 3.2 */
25500, /* SDRAM frequency */
{
0x00000001, /* EMC_RC */
@@ -706,7 +706,7 @@ static const struct tegra_emc_table cardhu_emc_tables_h5tc2g_a2[] = {
0x00000000, /* EMC_CTT_DURATION */
0x80000280, /* EMC_DYN_SELF_REF_CONTROL */
0x00020001, /* MC_EMEM_ARB_CFG */
- 0x80000008, /* MC_EMEM_ARB_OUTSTANDING_REQ */
+ 0xc0000008, /* MC_EMEM_ARB_OUTSTANDING_REQ */
0x00000001, /* MC_EMEM_ARB_TIMING_RCD */
0x00000001, /* MC_EMEM_ARB_TIMING_RP */
0x00000002, /* MC_EMEM_ARB_TIMING_RC */
@@ -732,9 +732,10 @@ static const struct tegra_emc_table cardhu_emc_tables_h5tc2g_a2[] = {
0x80001221, /* Mode Register 0 */
0x80100003, /* Mode Register 1 */
0x80200008, /* Mode Register 2 */
+ 0x00000001, /* EMC_CFG.DYN_SELF_REF */
},
{
- 0x31, /* Rev 3.1 */
+ 0x32, /* Rev 3.2 */
51000, /* SDRAM frequency */
{
0x00000002, /* EMC_RC */
@@ -825,7 +826,7 @@ static const struct tegra_emc_table cardhu_emc_tables_h5tc2g_a2[] = {
0x00000000, /* EMC_CTT_DURATION */
0x8000040b, /* EMC_DYN_SELF_REF_CONTROL */
0x00000001, /* MC_EMEM_ARB_CFG */
- 0x8000000a, /* MC_EMEM_ARB_OUTSTANDING_REQ */
+ 0xc000000a, /* MC_EMEM_ARB_OUTSTANDING_REQ */
0x00000001, /* MC_EMEM_ARB_TIMING_RCD */
0x00000001, /* MC_EMEM_ARB_TIMING_RP */
0x00000002, /* MC_EMEM_ARB_TIMING_RC */
@@ -851,9 +852,10 @@ static const struct tegra_emc_table cardhu_emc_tables_h5tc2g_a2[] = {
0x80001221, /* Mode Register 0 */
0x80100003, /* Mode Register 1 */
0x80200008, /* Mode Register 2 */
+ 0x00000001, /* EMC_CFG.DYN_SELF_REF */
},
{
- 0x31, /* Rev 3.1 */
+ 0x32, /* Rev 3.2 */
102000, /* SDRAM frequency */
{
0x00000004, /* EMC_RC */
@@ -944,7 +946,7 @@ static const struct tegra_emc_table cardhu_emc_tables_h5tc2g_a2[] = {
0x00000000, /* EMC_CTT_DURATION */
0x80000713, /* EMC_DYN_SELF_REF_CONTROL */
0x00000001, /* MC_EMEM_ARB_CFG */
- 0x80000013, /* MC_EMEM_ARB_OUTSTANDING_REQ */
+ 0xc0000013, /* MC_EMEM_ARB_OUTSTANDING_REQ */
0x00000001, /* MC_EMEM_ARB_TIMING_RCD */
0x00000001, /* MC_EMEM_ARB_TIMING_RP */
0x00000003, /* MC_EMEM_ARB_TIMING_RC */
@@ -970,9 +972,10 @@ static const struct tegra_emc_table cardhu_emc_tables_h5tc2g_a2[] = {
0x80001221, /* Mode Register 0 */
0x80100003, /* Mode Register 1 */
0x80200008, /* Mode Register 2 */
+ 0x00000001, /* EMC_CFG.DYN_SELF_REF */
},
{
- 0x31, /* Rev 3.1 */
+ 0x32, /* Rev 3.2 */
408000, /* SDRAM frequency */
{
0x00000012, /* EMC_RC */
@@ -1089,9 +1092,10 @@ static const struct tegra_emc_table cardhu_emc_tables_h5tc2g_a2[] = {
0x80000731, /* Mode Register 0 */
0x80100002, /* Mode Register 1 */
0x80200008, /* Mode Register 2 */
+ 0x00000000, /* EMC_CFG.DYN_SELF_REF */
},
{
- 0x31, /* Rev 3.1 */
+ 0x32, /* Rev 3.2 */
533000, /* SDRAM frequency */
{
0x00000018, /* EMC_RC */
@@ -1208,9 +1212,10 @@ static const struct tegra_emc_table cardhu_emc_tables_h5tc2g_a2[] = {
0x80000941, /* Mode Register 0 */
0x80100002, /* Mode Register 1 */
0x80200008, /* Mode Register 2 */
+ 0x00000000, /* EMC_CFG.DYN_SELF_REF */
},
{
- 0x31, /* Rev 3.1 */
+ 0x32, /* Rev 3.2 */
750000, /* SDRAM frequency */
{
0x00000025, /* EMC_RC */
@@ -1327,6 +1332,7 @@ static const struct tegra_emc_table cardhu_emc_tables_h5tc2g_a2[] = {
0x80000d71, /* Mode Register 0 */
0x80100002, /* Mode Register 1 */
0x80200018, /* Mode Register 2 */
+ 0x00000000, /* EMC_CFG.DYN_SELF_REF */
},
};