[PATCH V2 0/4] csky: Use generic asid function from arm

From: guoren
Date: Fri Jun 21 2019 - 05:42:06 EST


From: Guo Ren <ren_guo@xxxxxxxxx>

For C-SKY the first implementation is from mips and it's not implemented
well for SMP in performance. Arm's asid allocator is right for us and
we've tested it in our all CPUs:610/807/810/860 and it really reduce the
tlb flush. We'll continue stress testing before merge into master.

Changes for V2:
- Add back set/clear cpu_mm.
- Update commit message to explain asid allocator.

Guo Ren (4):
csky: Revert mmu ASID mechanism
csky: Add new asid lib code from arm
csky: Use generic asid algorithm to implement switch_mm
csky: Improve tlb operation with help of asid

arch/arm64/lib/asid.c | 9 +-
arch/csky/abiv1/inc/abi/ckmmu.h | 6 +
arch/csky/abiv2/inc/abi/ckmmu.h | 10 ++
arch/csky/include/asm/asid.h | 78 ++++++++++++
arch/csky/include/asm/mmu.h | 2 +-
arch/csky/include/asm/mmu_context.h | 114 ++---------------
arch/csky/include/asm/pgtable.h | 2 -
arch/csky/kernel/smp.c | 2 -
arch/csky/mm/Makefile | 2 +
arch/csky/mm/asid.c | 188 ++++++++++++++++++++++++++++
arch/csky/mm/context.c | 46 +++++++
arch/csky/mm/init.c | 2 -
arch/csky/mm/tlb.c | 238 ++++++++++++++----------------------
13 files changed, 444 insertions(+), 255 deletions(-)
create mode 100644 arch/csky/include/asm/asid.h
create mode 100644 arch/csky/mm/asid.c
create mode 100644 arch/csky/mm/context.c

--
2.7.4