From: rmk+kernel@arm.linux.org.uk (Russell King)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 049/222] ARM: l2c: fix register naming
Date: Fri, 25 Apr 2014 12:35:07 +0100 [thread overview]
Message-ID: <E1WdePL-0007GR-AX@rmk-PC.arm.linux.org.uk> (raw)
In-Reply-To: <20140425112951.GK26756@n2100.arm.linux.org.uk>
We have a mixture of different devices with different register layouts,
but we group all the bits together in an opaque mess. Split them out
into those which are L2C-310 specific and ones which refer to earlier
devices. Provide full auxiliary control register definitions.
Acked-by: Tony Lindgren <tony@atomide.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
---
arch/arm/include/asm/hardware/cache-l2x0.h | 73 ++++++++++++++++++++----------
arch/arm/mach-cns3xxx/core.c | 8 ++--
arch/arm/mach-exynos/sleep.S | 8 ++--
arch/arm/mach-imx/system.c | 8 ++--
arch/arm/mach-omap2/omap-mpuss-lowpower.c | 2 +-
arch/arm/mach-omap2/omap4-common.c | 18 ++++----
arch/arm/mach-prima2/l2x0.c | 5 +-
arch/arm/mach-realview/realview_pbx.c | 4 +-
arch/arm/mach-spear/spear13xx.c | 6 +--
arch/arm/mach-sti/board-dt.c | 8 ++--
arch/arm/mach-tegra/sleep.h | 8 ++--
arch/arm/mach-ux500/cache-l2x0.c | 4 +-
arch/arm/mach-vexpress/ct-ca9x4.c | 4 +-
arch/arm/mm/cache-l2x0.c | 57 +++++++++++------------
14 files changed, 118 insertions(+), 95 deletions(-)
diff --git a/arch/arm/include/asm/hardware/cache-l2x0.h b/arch/arm/include/asm/hardware/cache-l2x0.h
index 3af45734b514..b3ee122c6f24 100644
--- a/arch/arm/include/asm/hardware/cache-l2x0.h
+++ b/arch/arm/include/asm/hardware/cache-l2x0.h
@@ -26,8 +26,8 @@
#define L2X0_CACHE_TYPE 0x004
#define L2X0_CTRL 0x100
#define L2X0_AUX_CTRL 0x104
-#define L2X0_TAG_LATENCY_CTRL 0x108
-#define L2X0_DATA_LATENCY_CTRL 0x10C
+#define L310_TAG_LATENCY_CTRL 0x108
+#define L310_DATA_LATENCY_CTRL 0x10C
#define L2X0_EVENT_CNT_CTRL 0x200
#define L2X0_EVENT_CNT1_CFG 0x204
#define L2X0_EVENT_CNT0_CFG 0x208
@@ -54,16 +54,16 @@
#define L2X0_LOCKDOWN_WAY_D_BASE 0x900
#define L2X0_LOCKDOWN_WAY_I_BASE 0x904
#define L2X0_LOCKDOWN_STRIDE 0x08
-#define L2X0_ADDR_FILTER_START 0xC00
-#define L2X0_ADDR_FILTER_END 0xC04
+#define L310_ADDR_FILTER_START 0xC00
+#define L310_ADDR_FILTER_END 0xC04
#define L2X0_TEST_OPERATION 0xF00
#define L2X0_LINE_DATA 0xF10
#define L2X0_LINE_TAG 0xF30
#define L2X0_DEBUG_CTRL 0xF40
-#define L2X0_PREFETCH_CTRL 0xF60
-#define L2X0_POWER_CTRL 0xF80
-#define L2X0_DYNAMIC_CLK_GATING_EN (1 << 1)
-#define L2X0_STNDBY_MODE_EN (1 << 0)
+#define L310_PREFETCH_CTRL 0xF60
+#define L310_POWER_CTRL 0xF80
+#define L310_DYNAMIC_CLK_GATING_EN (1 << 1)
+#define L310_STNDBY_MODE_EN (1 << 0)
/* Registers shifts and masks */
#define L2X0_CACHE_ID_PART_MASK (0xf << 6)
@@ -88,29 +88,52 @@
#define L310_CACHE_ID_RTL_R3P3 0x09
#define L2X0_AUX_CTRL_MASK 0xc0000fff
+/* L2C auxiliary control register - bits common to L2C-210/220/310 */
+#define L2C_AUX_CTRL_WAY_SIZE_SHIFT 17
+#define L2C_AUX_CTRL_WAY_SIZE_MASK (7 << 17)
+#define L2C_AUX_CTRL_WAY_SIZE(n) ((n) << 17)
+#define L2C_AUX_CTRL_EVTMON_ENABLE BIT(20)
+#define L2C_AUX_CTRL_PARITY_ENABLE BIT(21)
+#define L2C_AUX_CTRL_SHARED_OVERRIDE BIT(22)
+/* L2C-210/220 common bits */
#define L2X0_AUX_CTRL_DATA_RD_LATENCY_SHIFT 0
-#define L2X0_AUX_CTRL_DATA_RD_LATENCY_MASK 0x7
+#define L2X0_AUX_CTRL_DATA_RD_LATENCY_MASK (7 << 0)
#define L2X0_AUX_CTRL_DATA_WR_LATENCY_SHIFT 3
-#define L2X0_AUX_CTRL_DATA_WR_LATENCY_MASK (0x7 << 3)
+#define L2X0_AUX_CTRL_DATA_WR_LATENCY_MASK (7 << 3)
#define L2X0_AUX_CTRL_TAG_LATENCY_SHIFT 6
-#define L2X0_AUX_CTRL_TAG_LATENCY_MASK (0x7 << 6)
+#define L2X0_AUX_CTRL_TAG_LATENCY_MASK (7 << 6)
#define L2X0_AUX_CTRL_DIRTY_LATENCY_SHIFT 9
-#define L2X0_AUX_CTRL_DIRTY_LATENCY_MASK (0x7 << 9)
-#define L2X0_AUX_CTRL_ASSOCIATIVITY_SHIFT 16
-#define L2X0_AUX_CTRL_WAY_SIZE_SHIFT 17
-#define L2X0_AUX_CTRL_WAY_SIZE_MASK (0x7 << 17)
-#define L2X0_AUX_CTRL_SHARE_OVERRIDE_SHIFT 22
-#define L2X0_AUX_CTRL_NS_LOCKDOWN_SHIFT 26
-#define L2X0_AUX_CTRL_NS_INT_CTRL_SHIFT 27
-#define L2X0_AUX_CTRL_DATA_PREFETCH_SHIFT 28
-#define L2X0_AUX_CTRL_INSTR_PREFETCH_SHIFT 29
-#define L2X0_AUX_CTRL_EARLY_BRESP_SHIFT 30
+#define L2X0_AUX_CTRL_DIRTY_LATENCY_MASK (7 << 9)
+#define L2X0_AUX_CTRL_ASSOC_SHIFT 13
+#define L2X0_AUX_CTRL_ASSOC_MASK (15 << 13)
+/* L2C-210 specific bits */
+#define L210_AUX_CTRL_WRAP_DISABLE BIT(12)
+#define L210_AUX_CTRL_WA_OVERRIDE BIT(23)
+#define L210_AUX_CTRL_EXCLUSIVE_ABORT BIT(24)
+/* L2C-220 specific bits */
+#define L220_AUX_CTRL_EXCLUSIVE_CACHE BIT(12)
+#define L220_AUX_CTRL_FWA_SHIFT 23
+#define L220_AUX_CTRL_FWA_MASK (3 << 23)
+#define L220_AUX_CTRL_NS_LOCKDOWN BIT(26)
+#define L220_AUX_CTRL_NS_INT_CTRL BIT(27)
+/* L2C-310 specific bits */
+#define L310_AUX_CTRL_FULL_LINE_ZERO BIT(0) /* R2P0+ */
+#define L310_AUX_CTRL_HIGHPRIO_SO_DEV BIT(10) /* R2P0+ */
+#define L310_AUX_CTRL_STORE_LIMITATION BIT(11) /* R2P0+ */
+#define L310_AUX_CTRL_EXCLUSIVE_CACHE BIT(12)
+#define L310_AUX_CTRL_ASSOCIATIVITY_16 BIT(16)
+#define L310_AUX_CTRL_CACHE_REPLACE_RR BIT(25) /* R2P0+ */
+#define L310_AUX_CTRL_NS_LOCKDOWN BIT(26)
+#define L310_AUX_CTRL_NS_INT_CTRL BIT(27)
+#define L310_AUX_CTRL_DATA_PREFETCH BIT(28)
+#define L310_AUX_CTRL_INSTR_PREFETCH BIT(29)
+#define L310_AUX_CTRL_EARLY_BRESP BIT(30) /* R2P0+ */
-#define L2X0_LATENCY_CTRL_SETUP_SHIFT 0
-#define L2X0_LATENCY_CTRL_RD_SHIFT 4
-#define L2X0_LATENCY_CTRL_WR_SHIFT 8
+#define L310_LATENCY_CTRL_SETUP(n) ((n) << 0)
+#define L310_LATENCY_CTRL_RD(n) ((n) << 4)
+#define L310_LATENCY_CTRL_WR(n) ((n) << 8)
-#define L2X0_ADDR_FILTER_EN 1
+#define L310_ADDR_FILTER_EN 1
#define L2X0_CTRL_EN 1
diff --git a/arch/arm/mach-cns3xxx/core.c b/arch/arm/mach-cns3xxx/core.c
index 2ae28a69e3e5..5c31b2638c01 100644
--- a/arch/arm/mach-cns3xxx/core.c
+++ b/arch/arm/mach-cns3xxx/core.c
@@ -272,9 +272,9 @@ void __init cns3xxx_l2x0_init(void)
*
* 1 cycle of latency for setup, read and write accesses
*/
- val = readl(base + L2X0_TAG_LATENCY_CTRL);
+ val = readl(base + L310_TAG_LATENCY_CTRL);
val &= 0xfffff888;
- writel(val, base + L2X0_TAG_LATENCY_CTRL);
+ writel(val, base + L310_TAG_LATENCY_CTRL);
/*
* Data RAM Control register
@@ -285,9 +285,9 @@ void __init cns3xxx_l2x0_init(void)
*
* 1 cycle of latency for setup, read and write accesses
*/
- val = readl(base + L2X0_DATA_LATENCY_CTRL);
+ val = readl(base + L310_DATA_LATENCY_CTRL);
val &= 0xfffff888;
- writel(val, base + L2X0_DATA_LATENCY_CTRL);
+ writel(val, base + L310_DATA_LATENCY_CTRL);
/* 32 KiB, 8-way, parity disable */
l2x0_init(base, 0x00540000, 0xfe000fff);
diff --git a/arch/arm/mach-exynos/sleep.S b/arch/arm/mach-exynos/sleep.S
index a2613e944e10..7e0af530511e 100644
--- a/arch/arm/mach-exynos/sleep.S
+++ b/arch/arm/mach-exynos/sleep.S
@@ -65,13 +65,13 @@ ENTRY(exynos_cpu_resume)
ldr r2, [r0, #L2X0_R_AUX_CTRL]
str r2, [r1, #L2X0_AUX_CTRL]
ldr r2, [r0, #L2X0_R_TAG_LATENCY]
- str r2, [r1, #L2X0_TAG_LATENCY_CTRL]
+ str r2, [r1, #L310_TAG_LATENCY_CTRL]
ldr r2, [r0, #L2X0_R_DATA_LATENCY]
- str r2, [r1, #L2X0_DATA_LATENCY_CTRL]
+ str r2, [r1, #L310_DATA_LATENCY_CTRL]
ldr r2, [r0, #L2X0_R_PREFETCH_CTRL]
- str r2, [r1, #L2X0_PREFETCH_CTRL]
+ str r2, [r1, #L310_PREFETCH_CTRL]
ldr r2, [r0, #L2X0_R_PWR_CTRL]
- str r2, [r1, #L2X0_POWER_CTRL]
+ str r2, [r1, #L310_POWER_CTRL]
mov r2, #1
str r2, [r1, #L2X0_CTRL]
skip_l2_resume:
diff --git a/arch/arm/mach-imx/system.c b/arch/arm/mach-imx/system.c
index c6571f1de9fd..59013a81107b 100644
--- a/arch/arm/mach-imx/system.c
+++ b/arch/arm/mach-imx/system.c
@@ -124,7 +124,7 @@ void __init imx_init_l2cache(void)
}
/* Configure the L2 PREFETCH and POWER registers */
- val = readl_relaxed(l2x0_base + L2X0_PREFETCH_CTRL);
+ val = readl_relaxed(l2x0_base + L310_PREFETCH_CTRL);
val |= 0x70800000;
/*
* The L2 cache controller(PL310) version on the i.MX6D/Q is r3p1-50rel0
@@ -137,9 +137,9 @@ void __init imx_init_l2cache(void)
*/
if (cpu_is_imx6q())
val &= ~(1 << 30 | 1 << 23);
- writel_relaxed(val, l2x0_base + L2X0_PREFETCH_CTRL);
- val = L2X0_DYNAMIC_CLK_GATING_EN | L2X0_STNDBY_MODE_EN;
- writel_relaxed(val, l2x0_base + L2X0_POWER_CTRL);
+ writel_relaxed(val, l2x0_base + L310_PREFETCH_CTRL);
+ val = L310_DYNAMIC_CLK_GATING_EN | L310_STNDBY_MODE_EN;
+ writel_relaxed(val, l2x0_base + L310_POWER_CTRL);
iounmap(l2x0_base);
of_node_put(np);
diff --git a/arch/arm/mach-omap2/omap-mpuss-lowpower.c b/arch/arm/mach-omap2/omap-mpuss-lowpower.c
index 667915d236f3..ba43f49fbb59 100644
--- a/arch/arm/mach-omap2/omap-mpuss-lowpower.c
+++ b/arch/arm/mach-omap2/omap-mpuss-lowpower.c
@@ -194,7 +194,7 @@ static void save_l2x0_context(void)
if (l2x0_base) {
val = __raw_readl(l2x0_base + L2X0_AUX_CTRL);
__raw_writel(val, sar_base + L2X0_AUXCTRL_OFFSET);
- val = __raw_readl(l2x0_base + L2X0_PREFETCH_CTRL);
+ val = __raw_readl(l2x0_base + L310_PREFETCH_CTRL);
__raw_writel(val, sar_base + L2X0_PREFETCH_CTRL_OFFSET);
}
}
diff --git a/arch/arm/mach-omap2/omap4-common.c b/arch/arm/mach-omap2/omap4-common.c
index 46dac72aaa4c..dc9844a55443 100644
--- a/arch/arm/mach-omap2/omap4-common.c
+++ b/arch/arm/mach-omap2/omap4-common.c
@@ -213,15 +213,15 @@ static int __init omap_l2_cache_init(void)
return -ENOMEM;
/* 16-way associativity, parity disabled, way size - 64KB (es2.0 +) */
- aux_ctrl = (1 << L2X0_AUX_CTRL_ASSOCIATIVITY_SHIFT) |
- (0x1 << 25) |
- (0x1 << L2X0_AUX_CTRL_NS_LOCKDOWN_SHIFT) |
- (0x1 << L2X0_AUX_CTRL_NS_INT_CTRL_SHIFT)) |
- (0x3 << L2X0_AUX_CTRL_WAY_SIZE_SHIFT) |
- (1 << L2X0_AUX_CTRL_SHARE_OVERRIDE_SHIFT) |
- (1 << L2X0_AUX_CTRL_DATA_PREFETCH_SHIFT) |
- (1 << L2X0_AUX_CTRL_INSTR_PREFETCH_SHIFT) |
- (1 << L2X0_AUX_CTRL_EARLY_BRESP_SHIFT);
+ aux_ctrl = L310_AUX_CTRL_ASSOCIATIVITY_16 |
+ L310_AUX_CTRL_CACHE_REPLACE_RR |
+ L310_AUX_CTRL_NS_LOCKDOWN |
+ L310_AUX_CTRL_NS_INT_CTRL |
+ L2C_AUX_CTRL_WAY_SIZE(3) |
+ L2C_AUX_CTRL_SHARED_OVERRIDE |
+ L310_AUX_CTRL_DATA_PREFETCH |
+ L310_AUX_CTRL_INSTR_PREFETCH |
+ L310_AUX_CTRL_EARLY_BRESP;
outer_cache.write_sec = omap4_l2c310_write_sec;
if (of_have_populated_dt())
diff --git a/arch/arm/mach-prima2/l2x0.c b/arch/arm/mach-prima2/l2x0.c
index c7102539c0b0..2db82742fb74 100644
--- a/arch/arm/mach-prima2/l2x0.c
+++ b/arch/arm/mach-prima2/l2x0.c
@@ -17,13 +17,12 @@ struct l2x0_aux {
};
static const struct l2x0_aux prima2_l2x0_aux __initconst = {
- .val = 2 << L2X0_AUX_CTRL_WAY_SIZE_SHIFT,
+ .val = L2C_AUX_CTRL_WAY_SIZE(2),
.mask = 0,
};
static const struct l2x0_aux marco_l2x0_aux __initconst = {
- .val = (2 << L2X0_AUX_CTRL_WAY_SIZE_SHIFT) |
- (1 << L2X0_AUX_CTRL_ASSOCIATIVITY_SHIFT),
+ .val = L2C_AUX_CTRL_WAY_SIZE(2) | L310_AUX_CTRL_ASSOCIATIVITY_16,
.mask = L2X0_AUX_CTRL_MASK,
};
diff --git a/arch/arm/mach-realview/realview_pbx.c b/arch/arm/mach-realview/realview_pbx.c
index 9d75493e3f0c..f0cfd7e7e569 100644
--- a/arch/arm/mach-realview/realview_pbx.c
+++ b/arch/arm/mach-realview/realview_pbx.c
@@ -370,8 +370,8 @@ static void __init realview_pbx_init(void)
__io_address(REALVIEW_PBX_TILE_L220_BASE);
/* set RAM latencies to 1 cycle for eASIC */
- writel(0, l2x0_base + L2X0_TAG_LATENCY_CTRL);
- writel(0, l2x0_base + L2X0_DATA_LATENCY_CTRL);
+ writel(0, l2x0_base + L310_TAG_LATENCY_CTRL);
+ writel(0, l2x0_base + L310_DATA_LATENCY_CTRL);
/* 16KB way size, 8-way associativity, parity disabled
* Bits: .. 0 0 0 0 1 00 1 0 1 001 0 000 0 .... .... .... */
diff --git a/arch/arm/mach-spear/spear13xx.c b/arch/arm/mach-spear/spear13xx.c
index 7aa6e8cf830f..92860fa01668 100644
--- a/arch/arm/mach-spear/spear13xx.c
+++ b/arch/arm/mach-spear/spear13xx.c
@@ -38,14 +38,14 @@ void __init spear13xx_l2x0_init(void)
if (!IS_ENABLED(CONFIG_CACHE_L2X0))
return;
- writel_relaxed(0x06, VA_L2CC_BASE + L2X0_PREFETCH_CTRL);
+ writel_relaxed(0x06, VA_L2CC_BASE + L310_PREFETCH_CTRL);
/*
* Program following latencies in order to make
* SPEAr1340 work@600 MHz
*/
- writel_relaxed(0x221, VA_L2CC_BASE + L2X0_TAG_LATENCY_CTRL);
- writel_relaxed(0x441, VA_L2CC_BASE + L2X0_DATA_LATENCY_CTRL);
+ writel_relaxed(0x221, VA_L2CC_BASE + L310_TAG_LATENCY_CTRL);
+ writel_relaxed(0x441, VA_L2CC_BASE + L310_DATA_LATENCY_CTRL);
l2x0_init(VA_L2CC_BASE, 0x70A60001, 0xfe00ffff);
}
diff --git a/arch/arm/mach-sti/board-dt.c b/arch/arm/mach-sti/board-dt.c
index 1217fb598cfd..dc8669efc12d 100644
--- a/arch/arm/mach-sti/board-dt.c
+++ b/arch/arm/mach-sti/board-dt.c
@@ -19,10 +19,10 @@ void __init stih41x_l2x0_init(void)
u32 way_size = 0x4;
u32 aux_ctrl;
/* may be this can be encoded in macros like BIT*() */
- aux_ctrl = (0x1 << L2X0_AUX_CTRL_SHARE_OVERRIDE_SHIFT) |
- (0x1 << L2X0_AUX_CTRL_DATA_PREFETCH_SHIFT) |
- (0x1 << L2X0_AUX_CTRL_INSTR_PREFETCH_SHIFT) |
- (way_size << L2X0_AUX_CTRL_WAY_SIZE_SHIFT);
+ aux_ctrl = L2C_AUX_CTRL_SHARED_OVERRIDE |
+ L310_AUX_CTRL_DATA_PREFETCH |
+ L310_AUX_CTRL_INSTR_PREFETCH |
+ L2C_AUX_CTRL_WAY_SIZE(way_size);
l2x0_of_init(aux_ctrl, L2X0_AUX_CTRL_MASK);
}
diff --git a/arch/arm/mach-tegra/sleep.h b/arch/arm/mach-tegra/sleep.h
index a4edbb3abd3d..a032820d2fac 100644
--- a/arch/arm/mach-tegra/sleep.h
+++ b/arch/arm/mach-tegra/sleep.h
@@ -134,13 +134,13 @@
tst \tmp3, #L2X0_CTRL_EN
bne exit_l2_resume
ldr \tmp3, [\tmp1, #L2X0_R_TAG_LATENCY]
- str \tmp3, [\tmp2, #L2X0_TAG_LATENCY_CTRL]
+ str \tmp3, [\tmp2, #L310_TAG_LATENCY_CTRL]
ldr \tmp3, [\tmp1, #L2X0_R_DATA_LATENCY]
- str \tmp3, [\tmp2, #L2X0_DATA_LATENCY_CTRL]
+ str \tmp3, [\tmp2, #L310_DATA_LATENCY_CTRL]
ldr \tmp3, [\tmp1, #L2X0_R_PREFETCH_CTRL]
- str \tmp3, [\tmp2, #L2X0_PREFETCH_CTRL]
+ str \tmp3, [\tmp2, #L310_PREFETCH_CTRL]
ldr \tmp3, [\tmp1, #L2X0_R_PWR_CTRL]
- str \tmp3, [\tmp2, #L2X0_POWER_CTRL]
+ str \tmp3, [\tmp2, #L310_POWER_CTRL]
ldr \tmp3, [\tmp1, #L2X0_R_AUX_CTRL]
str \tmp3, [\tmp2, #L2X0_AUX_CTRL]
mov \tmp3, #L2X0_CTRL_EN
diff --git a/arch/arm/mach-ux500/cache-l2x0.c b/arch/arm/mach-ux500/cache-l2x0.c
index 5cc7e3625d8c..067c37a054fb 100644
--- a/arch/arm/mach-ux500/cache-l2x0.c
+++ b/arch/arm/mach-ux500/cache-l2x0.c
@@ -59,10 +59,10 @@ static int __init ux500_l2x0_init(void)
/* DBx540's L2 has 128KB way size */
if (cpu_is_ux540_family())
/* 128KB way size */
- aux_val |= (0x4 << L2X0_AUX_CTRL_WAY_SIZE_SHIFT);
+ aux_val |= L2C_AUX_CTRL_WAY_SIZE(4);
else
/* 64KB way size */
- aux_val |= (0x3 << L2X0_AUX_CTRL_WAY_SIZE_SHIFT);
+ aux_val |= L2C_AUX_CTRL_WAY_SIZE(3);
outer_cache.write_sec = ux500_l2c310_write_sec;
diff --git a/arch/arm/mach-vexpress/ct-ca9x4.c b/arch/arm/mach-vexpress/ct-ca9x4.c
index 6f34497a4245..6c4ffb6c5ad8 100644
--- a/arch/arm/mach-vexpress/ct-ca9x4.c
+++ b/arch/arm/mach-vexpress/ct-ca9x4.c
@@ -145,8 +145,8 @@ static void __init ct_ca9x4_init(void)
void __iomem *l2x0_base = ioremap(CT_CA9X4_L2CC, SZ_4K);
/* set RAM latencies to 1 cycle for this core tile. */
- writel(0, l2x0_base + L2X0_TAG_LATENCY_CTRL);
- writel(0, l2x0_base + L2X0_DATA_LATENCY_CTRL);
+ writel(0, l2x0_base + L310_TAG_LATENCY_CTRL);
+ writel(0, l2x0_base + L310_DATA_LATENCY_CTRL);
l2x0_init(l2x0_base, 0x00400000, 0xfe0fffff);
#endif
diff --git a/arch/arm/mm/cache-l2x0.c b/arch/arm/mm/cache-l2x0.c
index b1fa825c133f..3e2c22a12d87 100644
--- a/arch/arm/mm/cache-l2x0.c
+++ b/arch/arm/mm/cache-l2x0.c
@@ -567,13 +567,13 @@ static void __init l2c310_save(void __iomem *base)
unsigned revision;
l2x0_saved_regs.tag_latency = readl_relaxed(base +
- L2X0_TAG_LATENCY_CTRL);
+ L310_TAG_LATENCY_CTRL);
l2x0_saved_regs.data_latency = readl_relaxed(base +
- L2X0_DATA_LATENCY_CTRL);
+ L310_DATA_LATENCY_CTRL);
l2x0_saved_regs.filter_end = readl_relaxed(base +
- L2X0_ADDR_FILTER_END);
+ L310_ADDR_FILTER_END);
l2x0_saved_regs.filter_start = readl_relaxed(base +
- L2X0_ADDR_FILTER_START);
+ L310_ADDR_FILTER_START);
revision = readl_relaxed(base + L2X0_CACHE_ID) &
L2X0_CACHE_ID_RTL_MASK;
@@ -581,12 +581,12 @@ static void __init l2c310_save(void __iomem *base)
/* From r2p0, there is Prefetch offset/control register */
if (revision >= L310_CACHE_ID_RTL_R2P0)
l2x0_saved_regs.prefetch_ctrl = readl_relaxed(base +
- L2X0_PREFETCH_CTRL);
+ L310_PREFETCH_CTRL);
/* From r3p0, there is Power control register */
if (revision >= L310_CACHE_ID_RTL_R3P0)
l2x0_saved_regs.pwr_ctrl = readl_relaxed(base +
- L2X0_POWER_CTRL);
+ L310_POWER_CTRL);
}
static void l2c310_resume(void)
@@ -598,23 +598,23 @@ static void l2c310_resume(void)
/* restore pl310 setup */
writel_relaxed(l2x0_saved_regs.tag_latency,
- base + L2X0_TAG_LATENCY_CTRL);
+ base + L310_TAG_LATENCY_CTRL);
writel_relaxed(l2x0_saved_regs.data_latency,
- base + L2X0_DATA_LATENCY_CTRL);
+ base + L310_DATA_LATENCY_CTRL);
writel_relaxed(l2x0_saved_regs.filter_end,
- base + L2X0_ADDR_FILTER_END);
+ base + L310_ADDR_FILTER_END);
writel_relaxed(l2x0_saved_regs.filter_start,
- base + L2X0_ADDR_FILTER_START);
+ base + L310_ADDR_FILTER_START);
revision = readl_relaxed(base + L2X0_CACHE_ID) &
L2X0_CACHE_ID_RTL_MASK;
if (revision >= L310_CACHE_ID_RTL_R2P0)
l2c_write_sec(l2x0_saved_regs.prefetch_ctrl, base,
- L2X0_PREFETCH_CTRL);
+ L310_PREFETCH_CTRL);
if (revision >= L310_CACHE_ID_RTL_R3P0)
l2c_write_sec(l2x0_saved_regs.pwr_ctrl, base,
- L2X0_POWER_CTRL);
+ L310_POWER_CTRL);
l2c_enable(base, l2x0_saved_regs.aux_ctrl, 8);
}
@@ -645,11 +645,11 @@ static void __init l2c310_fixup(void __iomem *base, u32 cache_id,
if (revision >= L310_CACHE_ID_RTL_R3P0 &&
revision < L310_CACHE_ID_RTL_R3P2) {
- u32 val = readl_relaxed(base + L2X0_PREFETCH_CTRL);
+ u32 val = readl_relaxed(base + L310_PREFETCH_CTRL);
/* I don't think bit23 is required here... but iMX6 does so */
if (val & (BIT(30) | BIT(23))) {
val &= ~(BIT(30) | BIT(23));
- l2c_write_sec(val, base, L2X0_PREFETCH_CTRL);
+ l2c_write_sec(val, base, L310_PREFETCH_CTRL);
errata[n++] = "752271";
}
}
@@ -745,7 +745,8 @@ static void __init __l2c_init(const struct l2c_init_data *data,
*
* L2 cache size = number of ways * way size.
*/
- way_size_bits = (aux & L2X0_AUX_CTRL_WAY_SIZE_MASK) >> 17;
+ way_size_bits = (aux & L2C_AUX_CTRL_WAY_SIZE_MASK) >>
+ L2C_AUX_CTRL_WAY_SIZE_SHIFT;
l2x0_size = ways * (data->way_size_0 << way_size_bits);
fns = data->outer_cache;
@@ -886,27 +887,27 @@ static void __init l2c310_of_parse(const struct device_node *np,
of_property_read_u32_array(np, "arm,tag-latency", tag, ARRAY_SIZE(tag));
if (tag[0] && tag[1] && tag[2])
writel_relaxed(
- ((tag[0] - 1) << L2X0_LATENCY_CTRL_RD_SHIFT) |
- ((tag[1] - 1) << L2X0_LATENCY_CTRL_WR_SHIFT) |
- ((tag[2] - 1) << L2X0_LATENCY_CTRL_SETUP_SHIFT),
- l2x0_base + L2X0_TAG_LATENCY_CTRL);
+ L310_LATENCY_CTRL_RD(tag[0] - 1) |
+ L310_LATENCY_CTRL_WR(tag[1] - 1) |
+ L310_LATENCY_CTRL_SETUP(tag[2] - 1),
+ l2x0_base + L310_TAG_LATENCY_CTRL);
of_property_read_u32_array(np, "arm,data-latency",
data, ARRAY_SIZE(data));
if (data[0] && data[1] && data[2])
writel_relaxed(
- ((data[0] - 1) << L2X0_LATENCY_CTRL_RD_SHIFT) |
- ((data[1] - 1) << L2X0_LATENCY_CTRL_WR_SHIFT) |
- ((data[2] - 1) << L2X0_LATENCY_CTRL_SETUP_SHIFT),
- l2x0_base + L2X0_DATA_LATENCY_CTRL);
+ L310_LATENCY_CTRL_RD(data[0] - 1) |
+ L310_LATENCY_CTRL_WR(data[1] - 1) |
+ L310_LATENCY_CTRL_SETUP(data[2] - 1),
+ l2x0_base + L310_DATA_LATENCY_CTRL);
of_property_read_u32_array(np, "arm,filter-ranges",
filter, ARRAY_SIZE(filter));
if (filter[1]) {
writel_relaxed(ALIGN(filter[0] + filter[1], SZ_1M),
- l2x0_base + L2X0_ADDR_FILTER_END);
- writel_relaxed((filter[0] & ~(SZ_1M - 1)) | L2X0_ADDR_FILTER_EN,
- l2x0_base + L2X0_ADDR_FILTER_START);
+ l2x0_base + L310_ADDR_FILTER_END);
+ writel_relaxed((filter[0] & ~(SZ_1M - 1)) | L310_ADDR_FILTER_EN,
+ l2x0_base + L310_ADDR_FILTER_START);
}
}
@@ -1281,7 +1282,7 @@ static void __init tauros3_save(void __iomem *base)
l2x0_saved_regs.aux2_ctrl =
readl_relaxed(base + TAUROS3_AUX2_CTRL);
l2x0_saved_regs.prefetch_ctrl =
- readl_relaxed(base + L2X0_PREFETCH_CTRL);
+ readl_relaxed(base + L310_PREFETCH_CTRL);
}
static void tauros3_resume(void)
@@ -1292,7 +1293,7 @@ static void tauros3_resume(void)
writel_relaxed(l2x0_saved_regs.aux2_ctrl,
base + TAUROS3_AUX2_CTRL);
writel_relaxed(l2x0_saved_regs.prefetch_ctrl,
- base + L2X0_PREFETCH_CTRL);
+ base + L310_PREFETCH_CTRL);
l2c_enable(base, l2x0_saved_regs.aux_ctrl, 8);
}
--
1.8.3.1
next prev parent reply other threads:[~2014-04-25 11:35 UTC|newest]
Thread overview: 232+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-25 11:29 [PATCH 000/222] The *Full* Cubox-i series Russell King - ARM Linux
2014-04-25 11:31 ` [PATCH 001/222] ARM: l2c: remove outer_inv_all() method Russell King
2014-04-25 11:31 ` [PATCH 002/222] ARM: l2c: remove unnecessary call to outer_flush_all() Russell King
2014-04-25 11:31 ` [PATCH 003/222] ARM: l2c: avoid calling outer_flush_all() unnecessarily (Spear) Russell King
2014-04-25 11:31 ` [PATCH 004/222] ARM: l2c: omap2: remove ES1.0 support Russell King
2014-04-25 11:31 ` [PATCH 005/222] ARM: l2c: remove unnecessary UL-suffix to mask values Russell King
2014-04-25 11:31 ` [PATCH 006/222] ARM: outer cache: add documentation of outer cache functions Russell King
2014-04-25 11:31 ` [PATCH 007/222] ARM: outer cache: add WARN_ON() to outer_disable() Russell King
2014-04-25 11:31 ` [PATCH 008/222] ARM: l2c: add helper for L2 cache controller DT IDs Russell King
2014-04-25 11:31 ` [PATCH 009/222] ARM: l2c: tidy up l2x0_of_data declarations Russell King
2014-04-25 11:31 ` [PATCH 010/222] ARM: l2c: rename OF specific things, making l2x0_of_data available to all Russell King
2014-04-25 11:31 ` [PATCH 011/222] ARM: l2c: provide generic function for calling set_debug method Russell King
2014-04-25 11:31 ` [PATCH 012/222] ARM: l2c: split out cache unlock code Russell King
2014-04-25 11:32 ` [PATCH 013/222] ARM: l2c: provide generic helper for way-based operations Russell King
2014-04-25 11:32 ` [PATCH 014/222] ARM: l2c: rename cache_wait_way() Russell King
2014-04-25 11:32 ` [PATCH 015/222] ARM: l2c: add and use L2C revision constants Russell King
2014-04-25 11:32 ` [PATCH 016/222] ARM: l2c: clean up OF initialisation a bit Russell King
2014-04-25 11:32 ` [PATCH 017/222] ARM: l2c: pass iomem address into data->save function Russell King
2014-04-25 11:32 ` [PATCH 018/222] ARM: l2c: move l2c save function to __l2c_init() Russell King
2014-04-25 11:32 ` [PATCH 019/222] ARM: l2c: group implementation specific code together Russell King
2014-04-25 11:32 ` [PATCH 020/222] ARM: l2c: provide enable method Russell King
2014-04-25 11:32 ` [PATCH 021/222] ARM: l2c: write auxctrl register before unlocking Russell King
2014-04-25 11:32 ` [PATCH 022/222] ARM: l2c: only write the auxiliary control register if required Russell King
2014-04-25 11:32 ` [PATCH 023/222] ARM: l2c: move aurora broadcast setup to enable function Russell King
2014-04-25 11:32 ` [PATCH 024/222] ARM: l2c: implement fixups for L2 cache controller quirks/errata Russell King
2014-04-25 11:33 ` [PATCH 025/222] ARM: l2c: clean up L2 cache initialisation messages Russell King
2014-04-25 11:33 ` [PATCH 026/222] ARM: l2c: move and add ARM L2C-2x0/L2C-310 save/resume code to non-OF Russell King
2014-04-25 11:33 ` [PATCH 027/222] ARM: l2c: clean up save/resume functions Russell King
2014-04-25 11:33 ` [PATCH 028/222] ARM: l2c: simplify l2x0 unlocking code Russell King
2014-04-25 11:33 ` [PATCH 029/222] ARM: l2c: move pl310_set_debug() into l2c-310 code Russell King
2014-04-25 11:33 ` [PATCH 030/222] ARM: l2c: add L2C-210 specific handlers Russell King
2014-04-25 11:33 ` [PATCH 031/222] ARM: l2c: implement L2C-310 erratum 727915 as a method override Russell King
2014-04-25 11:33 ` [PATCH 032/222] ARM: l2c: implement L2C-310 erratum 588369 " Russell King
2014-04-25 11:33 ` [PATCH 033/222] ARM: l2c: use L2C-210 handlers for L2C-310 errata-less implementations Russell King
2014-04-25 11:33 ` [PATCH 034/222] ARM: l2c: add L2C-220 specific handlers Russell King
2014-04-25 11:33 ` [PATCH 035/222] ARM: l2c: convert Broadcom L2C-310 to new code Russell King
2014-04-25 11:34 ` [PATCH 036/222] ARM: l2c: remove obsolete l2x0 ops for non-OF init Russell King
2014-04-25 11:34 ` [PATCH 037/222] ARM: l2c: move type string into l2c_init_data structure Russell King
2014-04-25 11:34 ` [PATCH 038/222] ARM: l2c: add decode for L2C-220 cache ways Russell King
2014-04-25 11:34 ` [PATCH 039/222] ARM: l2c: move way size calculation data into l2c_init_data Russell King
2014-04-25 11:34 ` [PATCH 040/222] ARM: l2c: move errata configuration options to arch/arm/mm/Kconfig Russell King
2014-04-25 11:34 ` [PATCH 041/222] ARM: l2c: provide generic hook to intercept writes to secure registers Russell King
2014-04-25 11:34 ` [PATCH 042/222] ARM: l2c: omap2: implement new write_sec method Russell King
2014-04-25 11:34 ` [PATCH 043/222] ARM: l2c: omap2: remove explicit SMI calls to enable L2 cache Russell King
2014-04-25 11:34 ` [PATCH 044/222] ARM: l2c: highbank: implement new write_sec method Russell King
2014-04-25 11:34 ` [PATCH 045/222] ARM: l2c: highbank: remove explicit SMI call in L2 cache initialisation Russell King
2014-04-25 11:34 ` [PATCH 046/222] ARM: l2c: ux500: implement dummy write_sec method Russell King
2014-04-25 11:34 ` [PATCH 047/222] ARM: l2c: remove old .set_debug method Russell King
2014-04-25 11:35 ` [PATCH 048/222] ARM: l2c: implement L2C-310 erratum 752271 in core L2C code Russell King
2014-04-25 11:35 ` Russell King [this message]
2014-04-25 11:35 ` [PATCH 050/222] ARM: l2c: add automatic enable of early BRESP Russell King
2014-04-25 11:35 ` [PATCH 051/222] ARM: l2c: remove platforms/SoCs setting " Russell King
2014-04-25 11:35 ` [PATCH 052/222] ARM: l2c: tegra: remove associativity and way size from aux_ctrl Russell King
2014-04-25 11:35 ` [PATCH 053/222] ARM: l2c: ux500: " Russell King
2014-04-25 11:35 ` [PATCH 054/222] ARM: l2c: ux500: don't try to change the L2 cache auxiliary control register Russell King
2014-04-25 11:35 ` [PATCH 055/222] ARM: l2c: cns3xxx: remove cache size override Russell King
2014-04-25 11:35 ` [PATCH 056/222] ARM: l2c: exynos: " Russell King
2014-04-25 11:35 ` [PATCH 057/222] ARM: l2c: nomadik: " Russell King
2014-04-25 11:35 ` [PATCH 058/222] ARM: l2c: omap2: " Russell King
2014-04-25 11:35 ` [PATCH 059/222] ARM: l2c: prima2: " Russell King
2014-04-25 11:36 ` [PATCH 060/222] ARM: l2c: shmobile: " Russell King
2014-04-25 11:36 ` [PATCH 061/222] ARM: l2c: spear13xx: " Russell King
2014-04-25 11:36 ` [PATCH 062/222] ARM: l2c: sti: " Russell King
2014-04-25 11:36 ` [PATCH 063/222] ARM: l2c: zynq: " Russell King
2014-04-25 11:36 ` [PATCH 064/222] ARM: l2c: realview: improve commentry about the L2 cache requirements Russell King
2014-04-25 11:36 ` [PATCH 065/222] ARM: l2c: kill L2X0_AUX_CTRL_MASK before anyone else makes use of this Russell King
2014-04-25 11:36 ` [PATCH 066/222] ARM: l2c: print a warning with L2C-310 caches if the cache size is modified Russell King
2014-04-25 11:36 ` [PATCH 067/222] ARM: l2c: vexpress ca9x4: move L2 cache initialisation earlier Russell King
2014-04-25 11:36 ` [PATCH 068/222] ARM: l2c: add L2C-310 power control DT properties Russell King
2014-04-25 11:36 ` [PATCH 069/222] ARM: l2c: check that DT files specify the required "cache-unified" property Russell King
2014-04-25 11:36 ` [PATCH 070/222] ARM: l2c: add warnings for stuff modifying aux_ctrl register values Russell King
2014-04-25 11:36 ` [PATCH 071/222] net:fec: remove unnecessary ip stack includes Russell King
2014-04-28 18:36 ` Frank Li
2014-04-28 18:39 ` Russell King - ARM Linux
2014-04-25 11:37 ` [PATCH 072/222] net:fec: reorder ethtool ops to match order in struct declaration Russell King
2014-04-25 11:37 ` [PATCH 073/222] net:fec: remove checking for NULL phy_dev in fec_enet_close() Russell King
2014-04-25 11:37 ` [PATCH 074/222] net:fec: ensure that a disconnected phy isn't configured Russell King
2014-04-25 11:37 ` [PATCH 075/222] net:fec: add support for dumping transmit ring on timeout Russell King
2014-04-25 11:37 ` [PATCH 076/222] net:fec: use netif_tx_disable() rather than netif_stop_queue() Russell King
2014-04-25 11:37 ` [PATCH 077/222] net:fec: iMX6 FEC does not support half-duplex gigabit Russell King
2014-04-25 11:37 ` [PATCH 078/222] net:fec: clean up transmit descriptor setup Russell King
2014-04-25 11:37 ` [PATCH 079/222] net:fec: make rx skb allocation/map more robust Russell King
2014-04-25 11:37 ` [PATCH 080/222] net:fec: ensure fec_enet_free_buffers() properly cleans the rings Russell King
2014-04-25 11:37 ` [PATCH 081/222] net:fec: fix missing kmalloc() failure check in fec_enet_alloc_buffers() Russell King
2014-04-25 11:37 ` [PATCH 082/222] net:fec: ensure that we dma unmap the transmit descriptors Russell King
2014-04-25 11:38 ` [PATCH 083/222] net:fec: remove useless fep->opened Russell King
2014-04-25 11:38 ` [PATCH 084/222] net:fec: stop the phy before shutting down the MAC Russell King
2014-04-25 11:38 ` [PATCH 085/222] net:fec: improve safety of suspend/resume/transmit timeout paths Russell King
2014-04-25 11:38 ` [PATCH 086/222] net:fec: ensure fec_enet_close() copes with resume failure Russell King
2014-04-25 11:38 ` [PATCH 087/222] net:fec: only run a restart or stop if the device is present and running Russell King
2014-04-25 11:38 ` [PATCH 088/222] net:fec: move calls to quiesce/resume packet processing out of fec_restart() Russell King
2014-04-25 11:38 ` [PATCH 089/222] net:fec: remove inappropriate calls around fec_restart() Russell King
2014-04-25 11:38 ` [PATCH 090/222] net:fec: quiesce packet processing before stopping device in fec_suspend() Russell King
2014-04-25 11:38 ` [PATCH 091/222] net:fec: quiesce packet processing before stopping device in fec_set_features() Russell King
2014-04-25 11:38 ` [PATCH 092/222] net:fec: quiesce packet processing before changing features Russell King
2014-04-25 11:38 ` [PATCH 093/222] net:fec: quiesce packet processing when taking link down in fec_enet_adjust_link() Russell King
2014-04-25 11:38 ` [PATCH 094/222] net:fec: fix ethtool set_pauseparam duplex bug Russell King
2014-04-25 11:39 ` [PATCH 095/222] net:fec: clean up duplex mode handling Russell King
2014-04-25 11:39 ` [PATCH 096/222] net:fec: add barrier to transmit path to ensure proper ordering Russell King
2014-04-25 11:39 ` [PATCH 097/222] net:fec: add barrier to receive " Russell King
2014-04-25 11:39 ` [PATCH 098/222] net:fec: better implementation of iMX6 ERR006358 quirk Russell King
2014-04-25 11:39 ` [PATCH 099/222] net:fec: avoid hitting transmitter if it is still running Russell King
2014-04-25 11:39 ` [PATCH 100/222] net:fec: remove delayed work Russell King
2014-04-25 11:39 ` [PATCH 101/222] net:fec: fix interrupt handling races Russell King
2014-04-25 11:39 ` [PATCH 102/222] net:fec: clear receive interrupts before processing a packet Russell King
2014-04-25 11:39 ` [PATCH 103/222] net:fec: remove useless status check in tx reap path Russell King
2014-04-25 11:39 ` [PATCH 104/222] net:fec: use a union for the buffer descriptors Russell King
2014-04-25 11:39 ` [PATCH 105/222] net:fec: consolidate hwtstamp implementation Russell King
2014-04-25 11:39 ` [PATCH 106/222] net:fec: better indexing for transmit descriptor ring Russell King
2014-04-25 11:40 ` [PATCH 107/222] net:fec: better indexing for receive " Russell King
2014-04-25 11:40 ` [PATCH 108/222] net:fec: calculate ring space rather than relying on comparing indices Russell King
2014-04-25 11:40 ` [PATCH 109/222] net:fec: increase transmit ring size Russell King
2014-04-25 11:40 ` [PATCH 110/222] net:fec: increase receive " Russell King
2014-04-25 11:40 ` [PATCH 111/222] net:fec: add scatter-gather support Russell King
2014-04-25 11:40 ` [PATCH 112/222] net:fec: add byte queue limits support Russell King
2014-04-25 11:41 ` [PATCH 113/222] net:fec: add better flow control support Russell King
2014-04-25 11:41 ` [PATCH 114/222] net:fec: move transmit dma ring address calculation to fec_enet_init() Russell King
2014-04-25 11:41 ` [PATCH 115/222] net:fec: allocate descriptor rings at device open, and free on device close Russell King
2014-04-25 11:41 ` [PATCH 116/222] net:fec: remove unnecessary code Russell King
2014-04-25 11:41 ` [PATCH 117/222] net:fec: consolidate common parts of mdio read/write Russell King
2014-04-25 11:41 ` [PATCH 118/222] net:fec: add locking for MDIO bus access Russell King
2014-04-25 11:41 ` [PATCH 119/222] net:fec: move bufdesc_ex flag into flags Russell King
2014-04-25 11:41 ` [PATCH 120/222] net:fec: move receive checksum flags into new flags member Russell King
2014-04-25 11:41 ` [PATCH 121/222] net:fec: only enable CTAG_RX and IP checksumming if we have enhanced buffer descriptors Russell King
2014-04-25 11:41 ` [PATCH 122/222] net:fec: avoid checking more flags than necessary in rx path Russell King
2014-04-25 11:41 ` [PATCH 123/222] net:fec: move vlan receive flag into our private flags Russell King
2014-04-25 11:42 ` [PATCH 124/222] net:fec: add ethtool support for tx/rx ring sizes Russell King
2014-04-25 11:42 ` [PATCH 125/222] net:fec: even larger rings Russell King
2014-04-25 11:42 ` [PATCH 126/222] net:fec: unsorted hacks Russell King
2014-04-25 11:42 ` [PATCH 127/222] leds: leds-pwm: provide a common function to setup a single led-pwm device Russell King
2014-04-25 11:42 ` [PATCH 128/222] leds: leds-pwm: convert OF parsing code to use led_pwm_add() Russell King
2014-04-25 11:42 ` [PATCH 129/222] leds: leds-pwm: implement PWM inversion Russell King
2014-04-25 11:42 ` [PATCH 130/222] leds: leds-pwm: add DT support for LEDs wired to supply Russell King
2014-04-25 11:42 ` [PATCH 131/222] ARM: add support for Cubox-i PWM-driven front panel LED Russell King
2014-04-25 11:42 ` [PATCH 132/222] ASoC: work around block transfer issues with imx-pcm-dma Russell King
2014-04-25 11:42 ` [PATCH 133/222] ata: ahci_imx: warn when disabling ahci link Russell King
2014-04-25 11:42 ` [PATCH 134/222] ARM: imx: keep PLLs in bypass while they're locking Russell King
2014-04-30 10:52 ` Dirk Behme
2014-05-08 8:59 ` Dirk Behme
2014-04-25 11:42 ` [PATCH 135/222] ARM: imx: set IPU to be derived from the 540MHz PLL3 PFD1 clock Russell King
2014-04-25 11:43 ` [PATCH 136/222] regulator: allow GPIO 0 to be used for an enable signal Russell King
2014-04-25 11:43 ` [PATCH 137/222] ARM: dt: microsom: don't set bit 7 for ethernet mux settings Russell King
2014-04-25 11:43 ` [PATCH 138/222] ARM: imx6q: clk: Parent DI clocks to video PLL via di_pre_sel Russell King
2014-04-25 11:43 ` [PATCH 139/222] ARM: i.MX6: ipu_di_sel clocks can set parent rates Russell King
2014-04-25 11:43 ` [PATCH 140/222] ata: ahci_imx: allow hardware parameters to be specified in DT Russell King
2014-04-25 11:43 ` [PATCH 141/222] ARM: cubox-i: add eSATA DT configuration Russell King
2014-04-25 11:43 ` [PATCH 142/222] ahci_imx: add disable for spread-spectrum Russell King
2014-04-25 11:43 ` [PATCH 143/222] imx-drm: imx-drm-core: fix imx_drm_encoder_get_mux_id Russell King
2014-04-25 11:43 ` [PATCH 144/222] imx-drm: imx-drm-core: skip components whose parent device is disabled Russell King
2014-04-25 11:43 ` [PATCH 145/222] imx-drm: imx-ldb: add drm_panel support Russell King
2014-04-25 11:43 ` [PATCH 146/222] imx-drm: match ipu_di_signal_cfg's clk_pol with its description Russell King
2014-04-25 11:43 ` [PATCH 147/222] v4l2: add new V4L2_PIX_FMT_RGB666 pixel format Russell King
2014-04-25 11:44 ` [PATCH 148/222] imx-drm: add RGB666 support for parallel display Russell King
2014-04-25 11:44 ` [PATCH 149/222] imx-drm: ipu-common: add ipu_map_irq to request non-IDMAC interrupts Russell King
2014-04-25 11:44 ` [PATCH 150/222] imx-drm: ipu-common: add helpers to check for a busy IDMAC channel and to busywait for an interrupt Russell King
2014-04-25 11:44 ` [PATCH 151/222] imx-drm: ipu-dmfc: wait for FIFOs to run empty before disabling Russell King
2014-04-25 11:44 ` [PATCH 152/222] imx-drm: ipu-dc: wait for DC_FC_1 / DP_SF_END interrupt Russell King
2014-04-25 11:44 ` [PATCH 153/222] imx-drm: ipu-dp: split disabling the DP foreground channel from disabling the DP module Russell King
2014-04-25 11:44 ` [PATCH 154/222] imx-drm: imx-dp: when disabling the DP foreground channel, wait until the DP background channel is finished before disabling the IDMAC channel Russell King
2014-04-25 11:44 ` [PATCH 155/222] imx-drm: ipuv3-crtc: change display enable/disable order Russell King
2014-04-25 11:44 ` [PATCH 156/222] imx-drm: ipu-dc: disable DC module when not in use Russell King
2014-04-25 11:45 ` [PATCH 157/222] imx-drm: imx-hdmi: fix hdmi hotplug detection initial state Russell King
2014-04-25 11:46 ` [PATCH 158/222] dw-hdmi-audio: add audio driver Russell King
2014-04-25 11:46 ` [PATCH 159/222] dw-hdmi-audio: better hardware position tracking Russell King
2014-04-25 11:46 ` [PATCH 160/222] dw-hdmi-audio: parse ELD from HDMI driver Russell King
2014-04-25 11:48 ` [PATCH 161/222] dw-hdmi-audio: try to fix burbling audio Russell King
2014-04-25 11:48 ` [PATCH 162/222] dw-hdmi-audio: try implementing ERR005174 " Russell King
2014-04-25 11:48 ` [PATCH 163/222] dw-hdmi-audio: another attempt at fixing burbling Russell King
2014-04-25 11:48 ` [PATCH 164/222] dw-hdmi-audio: basic suspend/resume support Russell King
2014-04-25 11:48 ` [PATCH 165/222] cec: add generic HDMI CEC driver Russell King
2014-04-25 11:48 ` [PATCH 166/222] imx-drm: dw-hdmi-cec: add " Russell King
2014-04-25 11:48 ` [PATCH 167/222] ARM: imx: add HDMI support for SolidRun HummingBoard and Cubox-i Russell King
2014-04-25 11:48 ` [PATCH 168/222] ARM: imx: enable HDMI DRM support for imx_v6_v7_defconfig Russell King
2014-04-25 11:49 ` [PATCH 169/222] drm/i915: don't disable disconnected outputs Russell King
2014-04-25 11:49 ` [PATCH 170/222] drm: add generic ddc connector Russell King
2014-04-25 11:49 ` [PATCH 171/222] ARM: l2c: trial at enabling some Cortex-A9 optimisations Russell King
2014-04-25 11:49 ` [PATCH 172/222] ARM: l2c: move L2 cache register saving to a more sensible location Russell King
2014-04-25 11:50 ` [PATCH 173/222] ARM: l2c: always enable low power modes Russell King
2014-04-25 11:50 ` [PATCH 174/222] ARM: l2c: imx: remove direct write to power control register Russell King
2014-04-25 11:50 ` [PATCH 175/222] ARM: l2c: omap2: avoid reading directly from the L2 registers in platform code Russell King
2014-04-25 11:50 ` [PATCH 176/222] ARM: l2c: provide common PL310 early resume code Russell King
2014-04-25 11:50 ` [PATCH 177/222] ARM: l2c: exynos: convert to common l2c310 early resume functionality Russell King
2014-04-25 11:50 ` [PATCH 178/222] ARM: l2c: tegra: " Russell King
2014-04-25 11:50 ` [PATCH 179/222] ARM: l2c: imx: " Russell King
2014-04-25 11:50 ` [PATCH 180/222] ARM: l2c: always enable non-secure access to lockdown registers Russell King
2014-04-25 11:55 ` [PATCH 181/222] ARM: l2c: omap2+: get rid of redundant cache replacement policy setting Russell King
2014-04-25 11:55 ` [PATCH 182/222] ARM: l2c: omap2+: get rid of init call Russell King
2014-04-25 11:55 ` [PATCH 183/222] ARM: l2c: AM43x: add L2 cache support Russell King
2014-04-25 11:55 ` [PATCH 184/222] ARM: l2c: permit flush_all() on large flush_range() XXX Needs more thought XXX Russell King
2014-04-25 11:55 ` [PATCH 185/222] mmc: sdio_irq: rework sdio irq handling Russell King
2014-04-25 11:55 ` [PATCH 186/222] mmc: sdhci: clean up interrupt handling Russell King
2014-04-25 11:55 ` [PATCH 187/222] mmc: sdhci: clean up sdio interrupt enable handling Russell King
2014-04-25 11:55 ` [PATCH 188/222] mmc: sdhci: convert to new SDIO IRQ handling Russell King
2014-04-25 11:55 ` [PATCH 189/222] mmc: sdhci: push card_tasklet into threaded irq handler Russell King
2014-04-25 11:55 ` [PATCH 190/222] mmc: sdhci: allow sdio interrupts while sdhci runtime suspended Russell King
2014-04-25 11:56 ` [PATCH 191/222] mmc: sdhci: more efficient interrupt enable register handling Russell King
2014-04-25 11:57 ` [PATCH 192/222] mmc: sdhci: plug hole in disabling card detection interrupts Russell King
2014-04-25 11:57 ` [PATCH 193/222] mmc: sdhci: convert generic bus width setup to library function Russell King
2014-04-25 11:57 ` [PATCH 194/222] mmc: sdhci: convert reset into a " Russell King
2014-04-25 11:57 ` [PATCH 195/222] mmc: sdhci: move FSL ESDHC reset handling quirk into esdhc code Russell King
2014-04-25 11:58 ` [PATCH 196/222] mmc: sdhci: avoid sync'ing the SG if there's no misalignment Russell King
2014-04-25 11:58 ` [PATCH 197/222] mmc: sdhci: convert ADMA descriptors to a coherent allocation Russell King
2014-04-25 11:58 ` [PATCH 198/222] mmc: sdhci: clean up sdhci_update_clock()/sdhci_set_clock() Russell King
2014-04-25 11:58 ` [PATCH 199/222] mmc: sdhci: move setting host->clock into sdhci_do_set_ios() Russell King
2014-04-25 11:58 ` [PATCH 200/222] mmc: sdhci: move setting mmc->actual_clock into set_clock handlers Russell King
2014-04-25 11:58 ` [PATCH 201/222] mmc: sdhci: convert sdhci_set_clock() into a library function Russell King
2014-04-25 11:59 ` [PATCH 202/222] mmc: sdhci-esdhc-imx: avoid DMA to kernel stack Russell King
2014-04-25 11:59 ` [PATCH 203/222] mmc: sdhci-esdhc-imx: comment runtime_pm_get_sync() in esdhc_prepare_tuning() Russell King
2014-04-25 11:59 ` [PATCH 204/222] mmc: sdhci-esdhc-imx: fix lockdep splat upon tuning Russell King
2014-04-25 11:59 ` [PATCH 205/222] mmc: sdhci: hack up driver to make it more compliant with UHS-1 Russell King
2014-04-25 11:59 ` [PATCH 206/222] mmc: sdhci: set_uhs_signaling() need not return a value Russell King
2014-04-25 11:59 ` [PATCH 207/222] mmc: sdhci: convert sdhci_set_uhs_signaling() into a library function Russell King
2014-04-25 11:59 ` [PATCH 208/222] mmc: sdhci: cache timing information locally Russell King
2014-04-25 11:59 ` [PATCH 209/222] mmc: sdhci: clean up sdhci_execute_tuning() decision Russell King
2014-04-25 11:59 ` [PATCH 210/222] mmc: sdhci-esdhc-imx: remove emulation of uhs_mode Russell King
2014-04-25 11:59 ` [PATCH 211/222] mmc: sdhci-of-esdhc: remove platform_suspend/platform_resume callbacks Russell King
2014-04-25 11:59 ` [PATCH 212/222] mmc: sdhci: " Russell King
2014-04-25 11:59 ` [PATCH 213/222] mmc: sdhci-tegra: get rid of special PRESENT_STATE register handling Russell King
2014-04-25 12:00 ` [PATCH 214/222] mmc: sdhci: move regulator handling into sdhci_set_power() Russell King
2014-04-25 12:00 ` [PATCH 215/222] mmc: sdhci: move remaining power " Russell King
2014-04-25 12:00 ` [PATCH 216/222] mmc: sdhci: track whether preset mode is currently enabled in hardware Russell King
2014-04-25 12:00 ` [PATCH 217/222] mmc: sdhci: fix SDHCI dependencies Russell King
2014-04-25 12:00 ` [PATCH 218/222] mmc: add support for power-on sequencing through DT Russell King
2014-04-25 12:00 ` [PATCH 219/222] mmc: dw_mmc: call mmc_of_parse to fill in common options Russell King
2014-04-25 12:00 ` [PATCH 220/222] mmc: fix power-on sequencing for esdhc-imx driver Russell King
2014-04-25 12:00 ` [PATCH 221/222] ARM: cubox-i: add support for SD UHS-1 cards Russell King
2014-04-25 12:00 ` [PATCH 222/222] ARM: cubox-i: add support for Wifi/BT Russell King
2014-04-25 13:50 ` [PATCH 000/222] The *Full* Cubox-i series Thierry Reding
2014-04-25 14:15 ` Russell King - ARM Linux
2014-04-25 14:22 ` Thierry Reding
2014-04-25 14:26 ` Russell King - ARM Linux
2014-04-25 19:50 ` Kevin Hilman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=E1WdePL-0007GR-AX@rmk-PC.arm.linux.org.uk \
--to=rmk+kernel@arm.linux.org.uk \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).