diff options
Diffstat (limited to 'arch/blackfin/mach-common/cache-c.c')
| -rw-r--r-- | arch/blackfin/mach-common/cache-c.c | 11 | 
1 files changed, 10 insertions, 1 deletions
diff --git a/arch/blackfin/mach-common/cache-c.c b/arch/blackfin/mach-common/cache-c.c index 0e1e451fd7d..f4adedc9289 100644 --- a/arch/blackfin/mach-common/cache-c.c +++ b/arch/blackfin/mach-common/cache-c.c @@ -6,7 +6,6 @@   * Licensed under the GPL-2 or later.   */ -#include <linux/init.h>  #include <asm/blackfin.h>  #include <asm/cplbinit.h> @@ -42,6 +41,16 @@ bfin_cache_init(struct cplb_entry *cplb_tbl, unsigned long cplb_addr,                  unsigned long mem_mask)  {  	int i; +#ifdef CONFIG_L1_PARITY_CHECK +	u32 ctrl; + +	if (cplb_addr == DCPLB_ADDR0) { +		ctrl = bfin_read32(mem_control) | (1 << RDCHK); +		CSYNC(); +		bfin_write32(mem_control, ctrl); +		SSYNC(); +	} +#endif  	for (i = 0; i < MAX_CPLBS; i++) {  		bfin_write32(cplb_addr + i * 4, cplb_tbl[i].addr);  | 
