linux/arch/mips
Matt Redfearn 929d4f51e6 MIPS: pm-cps: Add MIPSr6 CPU support
This patch adds support for CPUs implementing the MIPSr6 ISA to the CPS
power management code. Three changes are necessary:

1. In MIPSr6, coupled coherence is necessary when CPUS implement multiple
   Virtual Processors (VPs).

2. MIPSr6 virtual processors are more like real cores and cannot yield
   to other VPs on the same core, so drop the MT ASE yield instruction.

3. To halt a MIPSr6 VP, the CPC VP_STOP register is used rather than the
   MT ASE TCHalt CP0 register.

Signed-off-by: Matt Redfearn <matt.redfearn@imgtec.com>
Reviewed-by: Paul Burton <paul.burton@imgtec.com>
Cc: Adam Buchbinder <adam.buchbinder@gmail.com>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/14225/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2016-10-04 16:13:57 +02:00
..
alchemy Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2016-05-19 10:02:26 -07:00
ar7 MIPS: ar7: use gpiochip data pointer 2016-02-19 09:51:43 +01:00
ath25 genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
ath79 MIPS: ath79: Fix test for error return of clk_register_fixed_factor(). 2016-09-13 14:13:26 +02:00
bcm47xx MIPS: BCM47xx: Make serial explicitly non-modular 2016-10-04 16:13:57 +02:00
bcm63xx MIPS: BCM63xx: Let clk_disable() return immediately if clk is NULL 2016-10-04 16:13:57 +02:00
bmips MIPS: BMIPS: Add device tree example for BCM6362 2016-10-04 16:13:57 +02:00
boot MIPS: Octeon: Add DTS for D-Link DSR-500N. 2016-10-04 16:13:57 +02:00
cavium-octeon MIPS: Octeon: Delete unused cvmx-mdio.h 2016-10-04 16:13:57 +02:00
cobalt MIPS: Cobalt: Fix typo 2016-08-03 08:16:30 +02:00
configs MIPS: pistachio: Remove ANDROID_TIMED_OUTPUT from defconfig. 2016-10-04 16:13:57 +02:00
dec MIPS: DEC: Avoid la pseudo-instruction in delay slots 2016-09-29 18:59:49 +02:00
emma
fw MIPS: Fix misspellings in comments. 2016-04-03 12:32:09 +02:00
include MIPS: pm-cps: Add MIPSr6 CPU support 2016-10-04 16:13:57 +02:00
jazz MIPS: Jazz: Migrate to new 'set-state' interface 2015-09-03 12:07:50 +02:00
jz4740 tree-wide: replace config_enabled() with IS_ENABLED() 2016-08-04 08:50:07 -04:00
kernel MIPS: pm-cps: Add MIPSr6 CPU support 2016-10-04 16:13:57 +02:00
kvm MIPS: KVM: Check for pfn noslot case 2016-08-19 17:22:26 +02:00
lantiq MIPS: Lantiq: Make xrx200_phy_fw explicitly non-modular 2016-10-04 16:13:57 +02:00
lasat MIPS: Lasat: A couple off by one bugs in picvue_proc.c 2016-05-28 12:35:06 +02:00
lib MIPS: lib: Mark intrinsics notrace 2016-05-28 12:35:11 +02:00
loongson32 MIPS: Add RTC support for Loongson1C board 2016-10-04 16:13:57 +02:00
loongson64 Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2016-08-06 09:13:11 -04:00
math-emu MIPS: Fix delay slot emulation count in debugfs 2016-09-25 01:59:16 +02:00
mm MIPS: Migrate exception table users off module.h and onto extable.h 2016-10-04 16:13:57 +02:00
mti-malta MIPS: Squash lines for simple wrapper functions 2016-10-04 16:13:57 +02:00
mti-sead3 mips: Remove unnecessary of_platform_populate with default match table 2016-06-23 15:00:29 -05:00
net Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2016-08-06 09:13:11 -04:00
netlogic dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
oprofile MIPS/Loongson-3: Convert oprofile to hotplug state machine 2016-07-15 10:40:29 +02:00
paravirt MIPS: SMP: Don't increment irq_count multiple times for call function IPIs 2015-08-03 09:25:12 +02:00
pci MIPS: Octeon: Fix PCI interrupt routing on D-Link DSR-500N. 2016-10-04 16:13:57 +02:00
pic32 Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2016-08-06 09:13:11 -04:00
pistachio Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2016-08-06 09:13:11 -04:00
pmcs-msp71xx MIPS: MSP71xx: Use __flush_cache_all instead of flush_cache_all. 2016-05-13 14:01:38 +02:00
pnx833x MIPS: Squash lines for simple wrapper functions 2016-10-04 16:13:57 +02:00
power MIPS: Hibernate: flush TLB entries earlier 2015-04-10 15:41:52 +02:00
ralink MIPS: ralink: Make timer explicitly non-modular 2016-10-04 16:13:57 +02:00
rb532 MIPS: rb532: use gpiochip data pointer 2016-02-19 09:51:44 +01:00
sgi-ip22 rtc: ds1286: move header to linux/rtc 2016-07-08 16:23:11 +02:00
sgi-ip27 MIPS: Spelling fix lets -> let's 2016-05-28 12:35:09 +02:00
sgi-ip32 MIPS: IP32: Fix build errors in reset code in DS1685 platform hook. 2015-05-13 00:01:41 +02:00
sibyte MIPS: Sibyte: Fix Kconfig dependencies of SIBYTE_BUS_WATCHER 2016-05-09 12:00:03 +02:00
sni char/genrtc: remove asm-generic/rtc.h from mips 2016-06-04 00:23:36 +02:00
txx9 MIPS: PCI: Reduce stack frame usage 2016-10-04 16:13:57 +02:00
vdso MIPS: Build microMIPS VDSO for microMIPS kernels 2016-05-28 12:35:12 +02:00
vr41xx MIPS: VR41xx: Fix typo 2016-05-28 12:35:09 +02:00
xilfpga mips: Remove unnecessary of_platform_populate with default match table 2016-06-23 15:00:29 -05:00
Kbuild MIPS: Initial implementation of a VDSO 2015-11-11 08:36:36 +01:00
Kbuild.platforms MIPS: Add support for PIC32MZDA platform 2016-01-24 02:53:28 +01:00
Kconfig MIPS: Loongson1C: Add board support 2016-10-04 16:13:57 +02:00
Kconfig.debug MIPS: Remove compact branch policy Kconfig entries 2016-09-13 14:14:50 +02:00
Makefile MIPS: Remove compact branch policy Kconfig entries 2016-09-13 14:14:50 +02:00