All of lore.kernel.org
 help / color / mirror / Atom feed
* Question on flush_pfn_alias function.
@ 2014-01-14 13:42 이정승
  0 siblings, 0 replies; only message in thread
From: 이정승 @ 2014-01-14 13:42 UTC (permalink / raw)
  To: linux-arm-kernel

Dear Catalin,

I found below function and that clean and invalidate data cache range with
"mcrr"
The end address is end of page - L1_CACHE_BYTES (e.g. 32 , 64)

+static void flush_pfn_alias(unsigned long pfn, unsigned long vaddr)
+{
+	unsigned long to = ALIAS_FLUSH_START + (CACHE_COLOUR(vaddr) <<
PAGE_SHIFT);
+
+	set_pte(TOP_PTE(to), pfn_pte(pfn, PAGE_KERNEL));
+	flush_tlb_kernel_page(to);
+
+	asm(	"mcrr	p15, 0, %1, %0, c14\n"
+	"	mcrr	p15, 0, %1, %0, c5\n"
+	    :
+	    : "r" (to), "r" (to + PAGE_SIZE - L1_CACHE_BYTES)
+	    : "cc");
+}

However, follow the mail and current setting in vanilla kernel, 
L1_CACHE_BYTES of Cortex A9 will be 64 not 32.
http://lists.infradead.org/pipermail/linux-arm-kernel/2013-July/183316.html
I think that could be problem.

What is your opinion?

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2014-01-14 13:42 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-14 13:42 Question on flush_pfn_alias function 이정승

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.