rk3026: force l2 cache 16-way, 16KB way-size
author黄涛 <huangtao@rock-chips.com>
Wed, 31 Jul 2013 05:39:12 +0000 (13:39 +0800)
committer黄涛 <huangtao@rock-chips.com>
Wed, 31 Jul 2013 05:39:12 +0000 (13:39 +0800)
arch/arm/mach-rk2928/common.c

index e9e5885bfc5c4d6032a9701bd5d173d4294b4837..82df448f600270f7a92fa421327c6871d9fa3829 100755 (executable)
@@ -105,6 +105,12 @@ static void __init rk2928_l2_cache_init(void)
                        (0x1 << L2X0_AUX_CTRL_INSTR_PREFETCH_SHIFT) |
                        (0x1 << L2X0_AUX_CTRL_EARLY_BRESP_SHIFT) );
 
+#ifdef CONFIG_ARCH_RK3026
+       /* force 16-way, 16KB way-size on RK3026 */
+       aux_ctrl |= (1 << L2X0_AUX_CTRL_ASSOCIATIVITY_SHIFT) | (0x1 << L2X0_AUX_CTRL_WAY_SIZE_SHIFT);
+       aux_ctrl_mask &= ~((1 << L2X0_AUX_CTRL_ASSOCIATIVITY_SHIFT) | (0x7 << L2X0_AUX_CTRL_WAY_SIZE_SHIFT));
+#endif
+
        l2x0_init(RK2928_L2C_BASE, aux_ctrl, aux_ctrl_mask);
 #endif
 }