From df4d5ceb17f967f0410d525ce4db5be21a8dc4bc Mon Sep 17 00:00:00 2001 From: Vitja Makarov Date: Mon, 13 Oct 2008 15:23:56 +0800 Subject: [PATCH] --- yaml --- r: 113789 b: refs/heads/master c: 58c35bd31f8b577e03d904c214b55b3d91369a85 h: refs/heads/master i: 113787: 4a5d3ce612060f3ed619f398212ac9ec105e1040 v: v3 --- [refs] | 2 +- trunk/arch/blackfin/include/asm/cplbinit.h | 14 ++++++++++++++ trunk/arch/blackfin/kernel/setup.c | 1 + 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index de9f032e2694..1f9a18ed60a0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3094c981f2d567f0a442687ced24a5340aa10b6c +refs/heads/master: 58c35bd31f8b577e03d904c214b55b3d91369a85 diff --git a/trunk/arch/blackfin/include/asm/cplbinit.h b/trunk/arch/blackfin/include/asm/cplbinit.h index 9d23cd1ff7d9..d179b747ff03 100644 --- a/trunk/arch/blackfin/include/asm/cplbinit.h +++ b/trunk/arch/blackfin/include/asm/cplbinit.h @@ -92,4 +92,18 @@ extern unsigned long reserved_mem_icache_on; extern void generate_cplb_tables(void); +static inline int bfin_addr_dcachable(unsigned long addr) +{ +#ifdef CONFIG_BFIN_DCACHE + if (addr < (_ramend - DMA_UNCACHED_REGION)) + return 1; +#endif + + if (reserved_mem_dcache_on && + addr >= _ramend && addr < physical_mem_end) + return 1; + + return 0; +} + #endif diff --git a/trunk/arch/blackfin/kernel/setup.c b/trunk/arch/blackfin/kernel/setup.c index 7054594831c5..7f35d1046cd8 100644 --- a/trunk/arch/blackfin/kernel/setup.c +++ b/trunk/arch/blackfin/kernel/setup.c @@ -42,6 +42,7 @@ EXPORT_SYMBOL(memory_start); EXPORT_SYMBOL(memory_end); EXPORT_SYMBOL(physical_mem_end); EXPORT_SYMBOL(_ramend); +EXPORT_SYMBOL(reserved_mem_dcache_on); #ifdef CONFIG_MTD_UCLINUX unsigned long memory_mtd_end, memory_mtd_start, mtd_size;