This patchset is prepared for the next 3.19 release for Linux/MIPS. In this series we promote Loongson-3's ISA level to MIPS64R1 since it is not fully compatible with MIPS64R2. Multi-node DMA and coherent cache features are both added here. LEFI firmware interface is improved to make the kernel more generic (machtypes can be dropped). Besides, we add some basic platform drivers (GPIO, CPU Hwmon, ACPI init, oprofile, HPET and CPUFreq) for Loongson-3. V1 -> V2: 1, Add a patch to fix Loongson's CCA setting. 2, Rework the third patch. 3, Rebase the code for 3.19. V2 -> V3: 1, Remove patches which have merged in upstream. 2, Moving GPIO driver from arch/mips to drivers/gpio directory. 3, Optimize cacheflush by moving cpu_has_coherent_cache checking from local version to global version. Huacai Chen(5): MIPS: Loongson: Introduce and use cpu_has_coherent_cache feature. MIPS: Loongson: Add Loongson-3A/3B GPIO support. MIPS: Loongson-3: Add CPU Hwmon platform driver. MIPS: Loongson-3: Add chipset ACPI platform driver. MIPS: Loongson: Make CPUFreq usable for Loongson-3. Signed-off-by: Huacai Chen <chenhc@xxxxxxxxxx> Signed-off-by: Hongliang Tao <taohl@xxxxxxxxxx> --- arch/mips/Kconfig | 4 + arch/mips/configs/lemote2f_defconfig | 1 + arch/mips/configs/loongson3_defconfig | 1 + arch/mips/include/asm/cpu-features.h | 3 + .../asm/mach-loongson/cpu-feature-overrides.h | 1 + arch/mips/include/asm/mach-loongson/loongson.h | 5 + arch/mips/kernel/smp.c | 3 +- arch/mips/loongson/Kconfig | 1 + arch/mips/loongson/common/Makefile | 1 - arch/mips/loongson/common/env.c | 9 + arch/mips/loongson/common/gpio.c | 139 ----------- arch/mips/loongson/common/pci.c | 6 + arch/mips/loongson/common/platform.c | 13 +- arch/mips/loongson/loongson-3/Makefile | 2 +- arch/mips/loongson/loongson-3/clock.c | 191 ++++++++++++++++ arch/mips/mm/c-r4k.c | 21 ++ drivers/cpufreq/Kconfig | 14 ++ drivers/cpufreq/Makefile | 1 + drivers/cpufreq/loongson3_cpufreq.c | 240 ++++++++++++++++++++ drivers/gpio/Kconfig | 6 + drivers/gpio/Makefile | 1 + drivers/gpio/gpio-loongson.c | 148 ++++++++++++ drivers/platform/Kconfig | 3 + drivers/platform/Makefile | 1 + drivers/platform/mips/Kconfig | 26 ++ drivers/platform/mips/Makefile | 2 + drivers/platform/mips/acpi_init.c | 131 +++++++++++ drivers/platform/mips/cpu_hwmon.c | 206 +++++++++++++++++ 28 files changed, 1035 insertions(+), 145 deletions(-) delete mode 100644 arch/mips/loongson/common/gpio.c create mode 100644 arch/mips/loongson/loongson-3/clock.c create mode 100644 drivers/cpufreq/loongson3_cpufreq.c create mode 100644 drivers/gpio/gpio-loongson.c create mode 100644 drivers/platform/mips/Kconfig create mode 100644 drivers/platform/mips/Makefile create mode 100644 drivers/platform/mips/acpi_init.c create mode 100644 drivers/platform/mips/cpu_hwmon.c -- 1.7.7.3