powerpc/64: Avoid isync in flush_dcache_range()
As per ISA an isync is only needed on instruction cache block invalidate. Remove the same from dcache invalidate. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20200320103242.229223-1-aneesh.kumar@linux.ibm.com
This commit is contained in:
committed by
Michael Ellerman
parent
968339fad4
commit
233ba54618
@@ -65,17 +65,13 @@ static inline void flush_dcache_range(unsigned long start, unsigned long stop)
|
|||||||
unsigned long size = stop - (unsigned long)addr + (bytes - 1);
|
unsigned long size = stop - (unsigned long)addr + (bytes - 1);
|
||||||
unsigned long i;
|
unsigned long i;
|
||||||
|
|
||||||
if (IS_ENABLED(CONFIG_PPC64)) {
|
if (IS_ENABLED(CONFIG_PPC64))
|
||||||
mb(); /* sync */
|
mb(); /* sync */
|
||||||
isync();
|
|
||||||
}
|
|
||||||
|
|
||||||
for (i = 0; i < size >> shift; i++, addr += bytes)
|
for (i = 0; i < size >> shift; i++, addr += bytes)
|
||||||
dcbf(addr);
|
dcbf(addr);
|
||||||
mb(); /* sync */
|
mb(); /* sync */
|
||||||
|
|
||||||
if (IS_ENABLED(CONFIG_PPC64))
|
|
||||||
isync();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
Reference in New Issue
Block a user