Commit 576e02bb authored by Christophe Leroy's avatar Christophe Leroy Committed by Michael Ellerman
Browse files

powerpc/8xx: Simplify INVALIDATE_ADJACENT_PAGES_CPU15



We now have r11 available as a scratch register so
INVALIDATE_ADJACENT_PAGES_CPU15() can be simplified.

Signed-off-by: default avatarChristophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/bdafd651b4ac3a851fd09249f5f3699c50da29f2.1606231483.git.christophe.leroy@csgroup.eu
parent bccc5898
Loading
Loading
Loading
Loading
+7 −8
Original line number Diff line number Diff line
@@ -180,14 +180,13 @@ SystemCall:
 */

#ifdef CONFIG_8xx_CPU15
#define INVALIDATE_ADJACENT_PAGES_CPU15(addr)	\
	addi	addr, addr, PAGE_SIZE;	\
	tlbie	addr;			\
	addi	addr, addr, -(PAGE_SIZE << 1);	\
	tlbie	addr;			\
	addi	addr, addr, PAGE_SIZE
#define INVALIDATE_ADJACENT_PAGES_CPU15(addr, tmp)	\
	addi	tmp, addr, PAGE_SIZE;	\
	tlbie	tmp;			\
	addi	tmp, addr, -PAGE_SIZE;	\
	tlbie	tmp
#else
#define INVALIDATE_ADJACENT_PAGES_CPU15(addr)
#define INVALIDATE_ADJACENT_PAGES_CPU15(addr, tmp)
#endif

InstructionTLBMiss:
@@ -198,7 +197,7 @@ InstructionTLBMiss:
	 * kernel page tables.
	 */
	mfspr	r10, SPRN_SRR0	/* Get effective address of fault */
	INVALIDATE_ADJACENT_PAGES_CPU15(r10)
	INVALIDATE_ADJACENT_PAGES_CPU15(r10, r11)
	mtspr	SPRN_MD_EPN, r10
#ifdef CONFIG_MODULES
	mfcr	r11