linux/arch/mips/include/asm
James Hogan 0510870952 MIPS: KVM: Add KScratch registers
Allow up to 6 KVM guest KScratch registers to be enabled and accessed
via the KVM guest register API and from the guest itself (the fallback
reading and writing of commpage registers is sufficient for KScratch
registers to work as expected).

User mode can expose the registers by setting the appropriate bits of
the guest Config4.KScrExist field. KScratch registers that aren't usable
won't be writeable via the KVM Ioctl API.

Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Radim Krčmář <rkrcmar@redhat.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: linux-mips@linux-mips.org
Cc: kvm@vger.kernel.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2016-06-15 23:58:36 +02:00
..
dec
emma
fw MIPS: Malta: Remove fw_memblock_t abstraction 2015-11-11 08:35:45 +01:00
ip32
lasat
mach-ar7 MIPS: Remove all the uses of custom gpio.h 2015-09-03 12:08:02 +02:00
mach-ath25 MIPS: Remove all the uses of custom gpio.h 2015-09-03 12:08:02 +02:00
mach-ath79 irqchip/ath79-cpu: Move the CPU IRQ driver from arch/mips/ath79/ 2016-02-17 13:47:19 +00:00
mach-au1x00 MIPS: Spelling fix lets -> let's 2016-05-28 12:35:09 +02:00
mach-bcm47xx MIPS: BCM47xx: Fetch board info directly in callback function 2015-11-11 08:36:57 +01:00
mach-bcm63xx MIPS: BCM63xx: Fix typo 2016-05-28 12:35:06 +02:00
mach-bmips MIPS: BMIPS: Add BCM6358 support 2016-05-13 14:02:09 +02:00
mach-cavium-octeon MIPS: Clean up RDHWR handling 2016-06-15 23:58:25 +02:00
mach-cobalt
mach-db1x00
mach-dec MIPS: DEC: Update CPU overrides 2015-06-21 21:52:44 +02:00
mach-emma2rh
mach-generic MIPS: Fix misspellings in comments. 2016-04-03 12:32:09 +02:00
mach-ip22
mach-ip27 MIPS: IP27: Fix typo 2016-05-28 12:35:07 +02:00
mach-ip28
mach-ip32 MIPS: IP32: Fix typo 2016-05-28 12:35:07 +02:00
mach-jazz
mach-jz4740 MTD updates for v4.7: 2016-05-24 11:00:20 -07:00
mach-lantiq MIPS: Spelling fix lets -> let's 2016-05-28 12:35:09 +02:00
mach-lasat
mach-loongson32 MIPS: Loongson1B: Some updates/fixes for LS1B 2016-05-13 14:02:05 +02:00
mach-loongson64 MIPS: Loongson64: Fix typo 2016-05-28 12:35:07 +02:00
mach-malta MIPS: Add definitions of SegCtl registers and use them 2016-05-28 12:35:04 +02:00
mach-netlogic
mach-paravirt
mach-pic32 MIPS: Add support for PIC32MZDA platform 2016-01-24 02:53:28 +01:00
mach-pistachio MIPS: Remove all the uses of custom gpio.h 2015-09-03 12:08:02 +02:00
mach-pmcs-msp71xx
mach-pnx833x
mach-ralink mips: mt7620: fallback to SDRAM when syscfg0 does not have a valid value for the memory type 2016-05-13 15:39:43 +02:00
mach-rc32434 MIPS: Remove all the uses of custom gpio.h 2015-09-03 12:08:02 +02:00
mach-rm
mach-sead3
mach-sibyte MIPS: SB1: Remove support for Pass 1 parts. 2015-07-14 21:47:34 +02:00
mach-tx39xx
mach-tx49xx
mach-vr41xx
mach-xilfpga MIPS: xilfpga: Add mipsfpga platform code 2015-11-11 08:38:44 +01:00
mips-boards
netlogic genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
octeon MIPS: Cavium: Fix typo 2016-05-28 12:35:07 +02:00
pci MIPS: Fix misspellings in comments. 2016-04-03 12:32:09 +02:00
sgi MIPS: IP22/IP28: Fix typo 2016-05-28 12:35:08 +02:00
sibyte MIPS: BCM1480: bcm1480_regs.h: strip redundant comments 2016-05-13 14:02:13 +02:00
sn MIPS: Fix misspellings in comments. 2016-04-03 12:32:09 +02:00
txx9
vr41xx
xtalk MIPS: Xtalk: Update xwidget.h with known Xtalk device numbers 2015-06-21 21:54:21 +02:00
abi.h MIPS: Initial implementation of a VDSO 2015-11-11 08:36:36 +01:00
addrspace.h
amon.h
arch_hweight.h
asm-eva.h
asm-offsets.h
asm.h
asmmacro-32.h
asmmacro-64.h
asmmacro.h MIPS: Fix little endian microMIPS MSA encodings 2016-05-28 12:35:10 +02:00
atomic.h Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2015-11-15 09:10:53 -08:00
barrier.h mips: define __smp_xxx 2016-01-12 20:46:56 +02:00
bcache.h MIPS: Introduce API for enabling & disabling L2 prefetch 2015-10-26 09:49:41 +01:00
bitops.h MIPS: Move definitions for 32/64-bit agonstic inline assembler to new file. 2016-05-09 12:00:05 +02:00
bitrev.h MIPS: Implement __arch_bitrev* using bitswap for MIPSr6 2016-05-13 14:02:17 +02:00
bmips-spaces.h MIPS: BMIPS: Define BMIPS_FIXADDR_TOP in asm/bmips-spaces.h 2015-06-21 21:53:30 +02:00
bmips.h MIPS: BMIPS: Add early CPU initialization code 2016-05-13 14:01:55 +02:00
bootinfo.h MIPS: Introduce plat_get_fdt a platform API to retrieve the FDT 2016-05-13 14:02:03 +02:00
branch.h
break.h
bug.h
bugs.h
cache.h
cacheflush.h MIPS: Sync icache & dcache in set_pte_at 2016-05-13 14:01:58 +02:00
cacheops.h MIPS: Loongson: Add Loongson-3A R2 basic support 2016-05-13 14:02:14 +02:00
cdmm.h MIPS: CDMM: Add builtin_mips_cdmm_driver() macro 2015-11-05 11:15:41 +01:00
cevt-r4k.h MIPS: cevt-r4k: Migrate to new 'set-state' interface 2015-09-03 12:07:52 +02:00
checksum.h ipv6: Pass proto to csum_ipv6_magic as __u8 instead of unsigned short 2016-03-13 23:55:13 -04:00
clock.h
clocksource.h MIPS: VDSO: Add implementations of gettimeofday() and clock_gettime() 2015-11-11 08:36:41 +01:00
cmp.h
cmpxchg.h arch: Remove __ARCH_HAVE_CMPXCHG 2015-05-13 10:55:42 +02:00
compat-signal.h
compat.h MIPS: Clean up compat_siginfo_t 2015-11-12 11:35:47 +01:00
compiler.h
cop2.h
cpu-features.h lib/GCD.c: use binary GCD algorithm instead of Euclidean 2016-05-20 17:58:30 -07:00
cpu-info.h MIPS: Add probing & defs for VZ & guest features 2016-05-13 15:30:25 +02:00
cpu-type.h MIPS: Add M6250 cases to CPU switch statements 2016-05-13 14:01:53 +02:00
cpu.h MIPS: Add probing & defs for VZ & guest features 2016-05-13 15:30:25 +02:00
debug.h MIPS: Declare mips_debugfs_dir in a header 2015-10-26 09:49:42 +01:00
delay.h
device.h
div64.h
dma-coherence.h
dma-mapping.h dma-mapping: always provide the dma_map_ops based implementation 2016-01-20 17:09:18 -08:00
dma.h
ds1287.h
dsp.h
edac.h EDAC: Cleanup atomic_scrub mess 2015-05-28 15:31:53 +02:00
elf.h MIPS: ELF: Unify ABI classification macros 2016-05-13 15:30:25 +02:00
errno.h
eva.h
exec.h
fb.h
fixmap.h
floppy.h
fpregdef.h
fpu.h MIPS: Fix FPU disable with preemption 2016-02-01 23:36:38 +01:00
fpu_emulator.h MIPS: math-emu: Make microMIPS branch delay slot emulation work 2016-01-24 01:35:46 +01:00
ftrace.h
futex.h
gio_device.h
gt64120.h
hardirq.h
hazards.h MIPS: hazards.h: Fix typo 2016-05-28 12:35:06 +02:00
highmem.h MIPS: highmem: Turn flush_cache_kmaps into a no-op. 2016-05-13 14:01:38 +02:00
hpet.h
hugetlb.h mm/hugetlb: remove arch_prepare/release_hugepage from arch headers 2015-06-25 17:00:35 -07:00
hw_irq.h
i8259.h MIPS: i8259: DT support 2015-06-21 21:54:29 +02:00
ide.h
idle.h
inst.h
io.h MIPS: Loongson-3: Introduce CONFIG_LOONGSON3_ENHANCEMENT 2016-05-13 14:02:15 +02:00
irq.h MIPS: Remove "weak" from get_c0_fdc_int() declaration 2015-09-03 12:07:38 +02:00
irq_cpu.h
irq_gt641xx.h
irq_regs.h MIPS: Select CONFIG_HANDLE_DOMAIN_IRQ and make it work. 2016-05-13 14:01:40 +02:00
irqflags.h MIPS: Loongson-3: Introduce CONFIG_LOONGSON3_ENHANCEMENT 2016-05-13 14:02:15 +02:00
isadep.h
jazz.h
jazzdma.h
jump_label.h locking/static_keys: Add a new static_key interface 2015-08-03 11:34:15 +02:00
Kbuild MIPS: Use generic clkdev.h header 2016-05-13 14:01:58 +02:00
kdebug.h MIPS: Add uprobes support. 2015-09-03 12:08:05 +02:00
kexec.h
kgdb.h MIPS: Get rid of 'kgdb_early_setup' cruft. 2015-06-21 21:54:10 +02:00
kmap_types.h
kprobes.h
kvm_host.h MIPS: KVM: Add KScratch registers 2016-06-15 23:58:36 +02:00
kvm_para.h
linkage.h MIPS: Remove "__weak" definition from arch-specific linkage.h 2015-09-03 12:07:39 +02:00
llsc.h MIPS: Move definitions for 32/64-bit agonstic inline assembler to new file. 2016-05-09 12:00:05 +02:00
local.h
m48t37.h
maar.h MIPS: Initialise MAARs on secondary CPUs 2015-09-27 14:15:26 +02:00
mc146818-time.h
mc146818rtc.h
mips-cm.h MIPS: CM: Fix compilation error when !MIPS_CM 2016-05-13 23:04:53 +02:00
mips-cpc.h MIPS: CPC: Add start, stop and running CM3 CPC registers 2016-05-13 14:01:48 +02:00
mips-r2-to-r6-emul.h MIPS: traps: Correct the SIGTRAP debug ABI in do_watch' and do_trap_or_bp' 2016-04-03 12:32:09 +02:00
mips_machine.h
mips_mt.h MIPS: MT: Fix typo 2016-05-28 12:35:07 +02:00
mipsmtregs.h
mipsprom.h
mipsregs.h MIPS: Clean up RDHWR handling 2016-06-15 23:58:25 +02:00
mmu.h
mmu_context.h MIPS: Retrieve ASID masks using function accepting struct cpuinfo_mips 2016-05-13 14:02:20 +02:00
mmzone.h
module.h
msa.h MIPS: Fix little endian microMIPS MSA encodings 2016-05-28 12:35:10 +02:00
msc01_ic.h
nile4.h
paccess.h
page.h Revert "MIPS: Fix PAGE_MASK definition" 2016-01-23 00:28:57 +01:00
pci.h MIPS: make PCI_DMA_BUS_IS_PHYS=1 constant 2016-05-13 14:02:17 +02:00
perf_event.h
pgalloc.h
pgtable-32.h MIPS: mm: Fix MIPS32 36b physical addressing (alchemy, netlogic) 2016-05-13 15:30:25 +02:00
pgtable-64.h MIPS64: Support of at least 48 bits of SEGBITS 2016-05-13 14:02:16 +02:00
pgtable-bits.h MIPS: Allow RIXI to be used on non-R2 or R6 cores 2016-05-13 15:30:25 +02:00
pgtable.h Merge branch 'akpm' (patches from Andrew) 2016-05-19 20:00:06 -07:00
pm-cps.h
pm.h
pmon.h
prefetch.h
processor.h MIPS64: Support of at least 48 bits of SEGBITS 2016-05-13 14:02:16 +02:00
prom.h MIPS: prepare for user enabling of CONFIG_OF 2015-06-21 21:54:14 +02:00
ptrace.h MIPS: Add uprobes support. 2015-09-03 12:08:05 +02:00
r4k-timer.h
r4kcache.h
reboot.h
reg.h
regdef.h
rtlx.h
seccomp.h MIPS: seccomp: Support compat with both O32 and N32 2016-05-13 14:02:01 +02:00
setup.h MIPS: KVM: Don't hardcode restored HWREna 2016-06-15 23:58:31 +02:00
sgialib.h
sgiarcs.h MIPS: Fix misspellings in comments. 2016-04-03 12:32:09 +02:00
shmparam.h
sigcontext.h
signal.h MIPS64: signal: Fix o32 sigaction syscall 2016-05-13 14:02:16 +02:00
sim.h
smp-cps.h MIPS: smp-cps: Pull boot config retrieval out of mips_cps_boot_vpes 2016-05-13 14:01:50 +02:00
smp-ops.h MIPS: Make smp CMP, CPS and MT use the new generic IPI functions 2016-02-25 10:56:58 +01:00
smp.h MIPS: SMP: Don't increment irq_count multiple times for call function IPIs 2015-08-03 09:25:12 +02:00
sni.h
socket.h
sparsemem.h
spinlock.h MIPS: Select CONFIG_ARCH_USE_CMPXCHG_LOCKREF for MIPS64 2015-09-03 12:08:01 +02:00
spinlock_types.h
spram.h
stackframe.h MIPS: Fix FPU disable with preemption 2016-02-01 23:36:38 +01:00
stackprotector.h
stacktrace.h
string.h
switch_to.h MIPS: Fix watchpoint restoration 2016-05-09 12:00:02 +02:00
syscall.h MIPS: Fix buffer overflow in syscall_get_arguments() 2016-02-01 23:27:08 +01:00
termios.h
thread_info.h MIPS: Add uprobes support. 2015-09-03 12:08:05 +02:00
time.h MIPS: Remove "weak" from get_c0_compare_int() declaration 2015-09-03 12:07:38 +02:00
timex.h
tlb.h
tlbdebug.h MIPS: Refactor dumping of TLB registers for r3k/r4k 2015-09-03 12:07:45 +02:00
tlbflush.h
tlbmisc.h
topology.h sched/topology: Rename topology_thread_cpumask() to topology_sibling_cpumask() 2015-05-27 15:22:15 +02:00
traps.h
txx9irq.h MIPS/IRQCHIP: Move irq_chip from arch/mips to drivers/irqchip. 2015-06-21 21:52:50 +02:00
txx9pio.h
txx9tmr.h
types.h
uaccess.h MIPS: Fix misspellings in comments. 2016-04-03 12:32:09 +02:00
uasm.h MIPS: Loongson-3: Fast TLB refill handler 2016-05-13 14:02:15 +02:00
unaligned.h
unistd.h
uprobes.h MIPS: Add uprobes support. 2015-09-03 12:08:05 +02:00
vdso.h MIPS: VDSO: Add implementations of gettimeofday() and clock_gettime() 2015-11-11 08:36:41 +01:00
vga.h
vpe.h MIPS: MT: Remove "weak" from vpe_run() declaration 2015-08-26 15:23:40 +02:00
war.h
watch.h MIPS: Fix watchpoint restoration 2016-05-09 12:00:02 +02:00
wbflush.h