This patchset is is prepared for the next 4.6 release for Linux/MIPS. It adds Loongson-3A R2 (Loongson-3A2000) support and fixes a potential bug related to FTLB. Loongson-3 CPU family: Code-name Brand-name PRId Loongson-3A R1 Loongson-3A1000 0x6305 Loongson-3A R2 Loongson-3A2000 0x6308 Loongson-3B R1 Loongson-3B1000 0x6306 Loongson-3B R2 Loongson-3B1500 0x6307 Features of R2 revision of Loongson-3A: 1, Primary cache includes I-Cache, D-Cache and V-Cache (Victim Cache). 2, I-Cache, D-Cache and V-Cache are 16-way set-associative, linesize is 64 Bytes. 3, 64 entries of VTLB (classic TLB), 1024 entries of FTLB (8-way set-associative). 4, Support DSP/DSPv2 instructions, UserLocal register and Read-Inhibit/Execute-Inhibit. V1 -> V2: 1, Probe MIPS_CPU_PREFETCH by PRId. 2, Use PRID_REV_MASK instead of hardcode. 3, Update commit messages to avoid confusion. Huacai Chen(6): MIPS: Loongson: Add Loongson-3A R2 basic support. MIPS: Loongson: Invalidate special TLBs when needed. MIPS: Loongson-3: Fast TLB refill handler. MIPS: tlbex: Fix bugs in tlbchange handler. MIPS: Loongson: Introduce and use cpu_has_coherent_cache feature. MIPS: Loongson-3: Introduce CONFIG_LOONGSON3_ENHANCEMENT. Signed-off-by: Huacai Chen <chenhc@xxxxxxxxxx> --- arch/mips/Kconfig | 19 +++ arch/mips/include/asm/cacheops.h | 6 + arch/mips/include/asm/cpu-features.h | 6 + arch/mips/include/asm/cpu-info.h | 1 + arch/mips/include/asm/cpu.h | 6 +- arch/mips/include/asm/hazards.h | 7 +- arch/mips/include/asm/io.h | 10 +- arch/mips/include/asm/irqflags.h | 5 + .../asm/mach-loongson64/cpu-feature-overrides.h | 13 +- .../asm/mach-loongson64/kernel-entry-init.h | 18 ++- arch/mips/include/asm/mipsregs.h | 8 ++ arch/mips/include/asm/pgtable-bits.h | 8 +- arch/mips/include/asm/pgtable.h | 4 +- arch/mips/include/asm/uasm.h | 3 +- arch/mips/include/uapi/asm/inst.h | 10 ++ arch/mips/kernel/cpu-probe.c | 40 +++++- arch/mips/kernel/idle.c | 5 + arch/mips/kernel/traps.c | 3 +- arch/mips/loongson64/common/env.c | 7 +- arch/mips/loongson64/loongson-3/smp.c | 106 ++++++++++++-- arch/mips/mm/c-r4k.c | 51 +++++++ arch/mips/mm/page.c | 9 ++ arch/mips/mm/tlb-r4k.c | 27 ++-- arch/mips/mm/tlbex.c | 157 ++++++++++++++++++++- arch/mips/mm/uasm-mips.c | 2 + arch/mips/mm/uasm.c | 3 + drivers/platform/mips/cpu_hwmon.c | 4 +- 27 files changed, 478 insertions(+), 60 deletions(-) -- 2.4.6