diff options
author | licheng <licheng@nvidia.com> | 2011-07-08 13:17:11 -0500 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2011-11-30 21:47:39 -0800 |
commit | b6201f23b3192934a8a4820635b0f71a69ce09ba (patch) | |
tree | 808832d2f9f48611a1d5507fdf3f9339c1de95e1 /arch/arm/mach-tegra/tegra2_mc.c | |
parent | 798292909126f1ae3e0975279c28e59ac96451e8 (diff) |
ARM: tegra2: mc: Fix the issue of counters not being reset
EMC state control register is not programmed correctly as the value
is not reset after previous write is done.
Bug 829087
Reviewed-on: http://git-master/r/40230
(cherry picked from commit 51a190b49a347968c22c1ed8187568a7ed1fb1f1)
Original-Change-Id: Ic2c8d33ad241100939eb1d8fa026a1d5849c0fd8
Reviewed-on: http://git-master/r/40687
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-by: Scott Williams <scwilliams@nvidia.com>
Rebase-Id: R6fe4735e67c44d7b3cc26449342de6862aa92b36
Diffstat (limited to 'arch/arm/mach-tegra/tegra2_mc.c')
-rw-r--r-- | arch/arm/mach-tegra/tegra2_mc.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/tegra2_mc.c b/arch/arm/mach-tegra/tegra2_mc.c index 3b6e87c29028..6df9c232c02f 100644 --- a/arch/arm/mach-tegra/tegra2_mc.c +++ b/arch/arm/mach-tegra/tegra2_mc.c @@ -701,6 +701,7 @@ void emc_stat_start(tegra_mc_counter_t *llp_counter, writel(0xFFFFFFFF, emc.mmio + EMC_STAT_DRAM_CLOCK_LIMIT_LO_0); writel(0xFF, emc.mmio + EMC_STAT_DRAM_CLOCK_LIMIT_HI_0); + llmc_stat = 0; /* Reset then enable statistics */ llmc_stat |= (EMC_STAT_CONTROL_0_LLMC_GATHER_CLEAR << EMC_STAT_CONTROL_0_LLMC_GATHER_SHIFT); @@ -708,6 +709,7 @@ void emc_stat_start(tegra_mc_counter_t *llp_counter, EMC_STAT_CONTROL_0_DRAM_GATHER_SHIFT); writel(llmc_stat, emc.mmio + EMC_STAT_CONTROL_0); + llmc_stat = 0; llmc_stat |= (EMC_STAT_CONTROL_0_LLMC_GATHER_ENABLE << EMC_STAT_CONTROL_0_LLMC_GATHER_SHIFT); llmc_stat |= (EMC_STAT_CONTROL_0_DRAM_GATHER_ENABLE << |