diff options
author | Vimarsh Zutshi <vimarsh.zutshi@ti.com> | 2012-02-16 11:37:11 -0800 |
---|---|---|
committer | Ziyann <jaraidaniel@gmail.com> | 2014-10-01 12:57:29 +0200 |
commit | 1df16e026a3ec2317b8c992b434c57a82b3349c0 (patch) | |
tree | 26fd152b179ae9e050da5540e5352f2dcd905390 /arch/arm/mach-omap2/omap4-common.c | |
parent | f6ff742e8ff8b6092ce32adf0a441bf444c7f578 (diff) | |
download | kernel_samsung_tuna-1df16e026a3ec2317b8c992b434c57a82b3349c0.zip kernel_samsung_tuna-1df16e026a3ec2317b8c992b434c57a82b3349c0.tar.gz kernel_samsung_tuna-1df16e026a3ec2317b8c992b434c57a82b3349c0.tar.bz2 |
OMAP4: L2C: Restore L2 POR on GP devices
Current code restores POR on HS devices only. Add support for restoring POR on
GP devices.
Failure to restore POR severely affects memory bandwidth on the device.
This was found during investigating a memory throughput issue on GP devices
using the 'stream' benchmark as reported by Rocky Rhodes. On GP devices the
memory throuput was slashed by almost half after the first OSWR to ON
transition was done. Restoring POR fixes that issue.
The original patch for this was done by Volodymyr Riazantsev on
p-android-omap-2.6.35 (Commit 34d50a29) which seems to have been lost in the
newer kernel versions. Hopefully this one is not lost again :-)
[vikram pandita]
- fixed bug with decimal vs hex in assembly
- made code cleaner by passing 0x443022 to mean 4430 ES2.2
- fix por setting on 4430 on ES2.2 and above silicon only
Change-Id: I3b607d2436e8fc5c5c1719a726b8fa88e339625c
Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
Cc: Richard Woodruff <r-woodruff2@ti.com>
Signed-off-by: Vimarsh Zutshi <vimarsh.zutshi@ti.com>
Signed-off-by: Vikram Pandita <vikram.pandita@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/omap4-common.c')
-rw-r--r-- | arch/arm/mach-omap2/omap4-common.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/omap4-common.c b/arch/arm/mach-omap2/omap4-common.c index 6f8f2e2..db585cb 100644 --- a/arch/arm/mach-omap2/omap4-common.c +++ b/arch/arm/mach-omap2/omap4-common.c @@ -223,7 +223,7 @@ static int __init omap_l2_cache_init(void) if (omap_type() != OMAP2_DEVICE_TYPE_GP) omap4_secure_dispatcher(PPA_SERVICE_PL310_POR, 0x7, 1, por_ctrl, 0, 0, 0); - else if (omap_rev() >= OMAP4430_REV_ES2_1) + else if (omap_rev() >= OMAP4430_REV_ES2_2) omap_smc1(0x113, por_ctrl); |