linux/arch/powerpc/include/asm
Paul Mackerras 5975a2e095 KVM: PPC: Book3S: Add API for in-kernel XICS emulation
This adds the API for userspace to instantiate an XICS device in a VM
and connect VCPUs to it.  The API consists of a new device type for
the KVM_CREATE_DEVICE ioctl, a new capability KVM_CAP_IRQ_XICS, which
functions similarly to KVM_CAP_IRQ_MPIC, and the KVM_IRQ_LINE ioctl,
which is used to assert and deassert interrupt inputs of the XICS.

The XICS device has one attribute group, KVM_DEV_XICS_GRP_SOURCES.
Each attribute within this group corresponds to the state of one
interrupt source.  The attribute number is the same as the interrupt
source number.

This does not support irq routing or irqfd yet.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Acked-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Alexander Graf <agraf@suse.de>
2013-05-02 15:28:36 +02:00
..
8xx_immap.h powerpc: Fix multicast problem in fs_enet driver 2011-04-21 16:59:30 -07:00
Kbuild Merge tag 'kvm-3.8-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm 2012-12-13 15:31:08 -08:00
agp.h
asm-compat.h powerpc: Change mtcrf to use real register names 2012-07-10 19:18:11 +10:00
asm-offsets.h
async_tx.h
atomic.h atomic: implement generic atomic_dec_if_positive() 2012-10-09 16:22:46 +09:00
backlight.h
barrier.h Disintegrate asm/system.h for PowerPC 2012-03-28 18:30:02 +01:00
bitops.h powerpc: Remove unused BITOP_LE_SWIZZLE macro 2013-03-05 16:56:28 +11:00
bootx.h UAPI: (Scripted) Disintegrate arch/powerpc/include/asm 2012-10-09 09:47:26 +01:00
btext.h
bug.h Disintegrate asm/system.h for PowerPC 2012-03-28 18:30:02 +01:00
bugs.h
cache.h Disintegrate asm/system.h for PowerPC 2012-03-28 18:30:02 +01:00
cacheflush.h powerpc/85xx: add HOTPLUG_CPU support 2012-09-12 14:57:08 -05:00
cell-pmu.h
cell-regs.h
checksum.h powerpc: Add 64bit csum_and_copy_to_user 2010-09-02 14:07:30 +10:00
clk_interface.h
cmpxchg.h Disintegrate asm/system.h for PowerPC 2012-03-28 18:30:02 +01:00
code-patching.h powerpc: Have patch_instruction detect faults 2012-07-03 14:14:38 +10:00
compat.h compat: move compat_siginfo_t definition to asm/compat.h 2012-10-06 03:05:16 +09:00
cpm.h Fix common misspellings 2011-03-31 11:26:23 -03:00
cpm1.h Fix common misspellings 2011-03-31 11:26:23 -03:00
cpm2.h
cputable.h powerpc: Add transactional memory to POWER8 cpu features 2013-02-15 17:02:24 +11:00
cputhreads.h powerpc: Fixing a cputhread code documentation 2012-05-22 14:37:00 +10:00
cputime.h cputime: Generic on-demand virtual cputime accounting 2013-01-27 19:23:27 +01:00
current.h
dbdma.h
dbell.h powerpc: Select either privileged or hypervisor doorbell when sending 2013-01-10 15:09:06 +11:00
dcr-generic.h
dcr-mmio.h
dcr-native.h
dcr-regs.h
dcr.h
debug.h powerpc: Rename set_break to avoid naming conflict 2013-01-16 05:25:47 +11:00
delay.h
device.h powerpc: IOMMU fault injection 2012-07-10 19:18:59 +10:00
disassemble.h
div64.h
dma-mapping.h powerpc: dma_debug: add debug_dma_mapping_error support 2012-11-28 15:28:59 +01:00
dma.h Disintegrate asm/system.h for PowerPC 2012-03-28 18:30:02 +01:00
edac.h
eeh.h powerpc/eeh: Fix crash when adding a device in a slot with DDW 2013-01-10 17:01:58 +11:00
eeh_event.h powerpc/eeh: Handle EEH error based on PE 2012-09-10 09:35:43 +10:00
ehv_pic.h irq_domain/powerpc: Use common irq_domain structure instead of irq_host 2012-02-14 14:06:50 -07:00
elf.h default SET_PERSONALITY() in linux/elf.h 2013-02-26 02:46:08 -05:00
emergency-restart.h
emulated_ops.h atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
epapr_hcalls.h PPC: ePAPR: Convert hcall header to uapi (round 2) 2012-10-31 13:45:32 +01:00
exception-64e.h powerpc/booke64: Use SPRG0/3 scratch for bolted TLB miss & crit int 2012-09-05 15:35:52 +10:00
exception-64s.h powerpc/kvm/book3s_hv: Preserve guest CFAR register value 2013-02-15 16:54:33 +11:00
exec.h Disintegrate asm/system.h for PowerPC 2012-03-28 18:30:02 +01:00
fadump.h fadump: Invalidate registration and release reserved memory for general use. 2012-02-23 10:50:02 +11:00
fb.h
feature-fixups.h powerpc: Use new CPU feature bit to select 2.06 tlbie 2011-05-04 15:19:26 +10:00
firmware.h powerpc/pseries: Cleanup best_energy_hcall detection 2013-01-10 15:08:37 +11:00
fixmap.h
floppy.h powerpc/irq: Remove IRQF_DISABLED 2011-11-08 14:51:46 +11:00
fs_pd.h
fsl_85xx_cache_sram.h powerpc/85xx: add cache-sram support 2010-10-14 00:54:38 -05:00
fsl_gtm.h powerpc: Fix typos in Freescale copyright claims 2012-11-15 13:00:58 +11:00
fsl_guts.h powerpc/iommu/fsl: Add PAMU bypass enable register to ccsr_guts struct 2012-11-25 07:19:39 -06:00
fsl_hcalls.h PPC: Don't use hardcoded opcode for ePAPR hcall invocation 2012-10-05 23:38:38 +02:00
fsl_ifc.h powerpc/mpc85xx: Add new ext fields to Integrated FLash Controller 2012-09-12 14:57:10 -05:00
fsl_lbc.h powerpc/85xx: Add lbc suspend support for PM 2011-11-24 02:01:40 -06:00
ftrace.h powerpc/ftrace: Implement raw syscall tracepoints on PowerPC 2011-05-26 13:38:57 +10:00
futex.h powerpc: Fix atomic_xxx_return barrier semantics 2011-11-17 16:26:07 +11:00
gpio.h gpiolib/arches: Centralise bolierplate asm/gpio.h 2012-05-11 18:00:14 -06:00
grackle.h
hardirq.h
heathrow.h
highmem.h highmem: kill all __kmap_atomic() 2012-03-20 21:48:30 +08:00
hugetlb.h mm: hugetlb: add arch hook for clearing page flags before entering pool 2012-10-09 16:22:24 +09:00
hvcall.h KVM: PPC: Book3S: Add infrastructure to implement kernel-side RTAS calls 2013-04-26 20:27:29 +02:00
hvconsole.h
hvcserver.h
hvsi.h powerpc/hvsi: Fix conflict with old HVSI driver 2011-07-01 13:10:21 +10:00
hw_breakpoint.h powerpc: Change hardware breakpoint to allow longer ranges 2013-01-29 11:35:08 +11:00
hw_irq.h KVM updates for the 3.6 merge window 2012-07-24 12:01:20 -07:00
hydra.h Update broken web addresses in arch directory. 2010-10-18 11:03:21 +02:00
i8259.h irq_domain/powerpc: Use common irq_domain structure instead of irq_host 2012-02-14 14:06:50 -07:00
ibmebus.h
ide.h
immap_cpm2.h
immap_qe.h powerpc: Fix typos in Freescale copyright claims 2012-11-15 13:00:58 +11:00
io-defs.h
io-workarounds.h POWERPC: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
io.h powerpc: Disable /dev/port interface on systems without an ISA bridge 2012-07-11 18:22:32 +10:00
io_event_irq.h powerpc/pseries: Add support for IO event interrupts 2011-05-06 13:19:01 +10:00
iommu.h powerpc/iommu: Implement IOMMU pools to improve multiqueue adapter performance 2012-07-03 14:14:48 +10:00
ipic.h
irq.h powerpc/irqdomain: Fix broken NR_IRQ references 2012-04-30 10:45:26 +10:00
irq_regs.h
irqflags.h powerpc: Rework lazy-interrupt handling 2012-03-09 13:25:06 +11:00
jump_label.h static keys: Introduce 'struct static_key', static_key_true()/false() and static_key_slow_[inc|dec]() 2012-02-24 10:05:59 +01:00
kdebug.h
kdump.h powerpc: Rename mapping based RELOCATABLE to DYNAMIC_MEMSTART for BookE 2011-12-20 10:20:19 -05:00
kexec.h powerpc: Cleanup crash/kexec code 2011-12-08 14:02:23 +11:00
keylargo.h Typos: change aditional to additional. 2012-02-21 11:40:36 +01:00
kgdb.h kgdb,ppc: Individual register get/set for ppc 2010-10-29 13:14:42 -05:00
kmap_types.h powerpc: remove km_type definitions 2012-07-24 15:27:29 +08:00
kprobes.h powerpc/kprobes: Rename opcode_t in probes.h to ppc_opcode_t 2012-09-07 09:48:50 +10:00
kvm_44x.h KVM: PPC: booke: add sregs support 2011-05-22 08:47:53 -04:00
kvm_asm.h KVM: PPC: Book3s HV: Don't access runnable threads list without vcore lock 2012-10-30 10:54:55 +01:00
kvm_book3s.h KVM: PPC: Book3S: Add kernel emulation for the XICS interrupt controller 2013-04-26 20:27:30 +02:00
kvm_book3s_32.h powerpc: Build fix for powerpc KVM 2012-10-18 10:37:52 +11:00
kvm_book3s_64.h KVM: PPC: Book3S HV: Make HPT reading code notice R/C bit changes 2013-04-26 20:27:12 +02:00
kvm_book3s_asm.h KVM: PPC: Book3S HV: Speed up wakeups of CPUs on HV KVM 2013-04-26 20:27:31 +02:00
kvm_booke.h Added ONE_REG interface for debug instruction 2013-04-17 15:21:14 +02:00
kvm_booke_hv_asm.h KVM: PPC: bookehv64: Add support for interrupt handling 2012-12-06 01:34:11 +01:00
kvm_fpu.h powerpc: Remove fpscr use from [kvm_]cvt_{fd,df} 2010-09-02 14:07:32 +10:00
kvm_host.h KVM: PPC: Book3S: Add kernel emulation for the XICS interrupt controller 2013-04-26 20:27:30 +02:00
kvm_para.h Merge remote-tracking branch 'master' into queue 2012-10-29 19:15:32 -02:00
kvm_ppc.h KVM: PPC: Book3S: Add API for in-kernel XICS emulation 2013-05-02 15:28:36 +02:00
libata-portmap.h
local.h atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
local64.h arch: Implement local64_t 2010-06-09 11:12:36 +02:00
lppaca.h cputime: Generic on-demand virtual cputime accounting 2013-01-27 19:23:27 +01:00
lv1call.h powerpc/ps3: Correct lv1 repository routine names 2012-04-24 15:34:16 -07:00
machdep.h powerpc: Add the DAWR support to the set_break() 2013-01-10 17:01:47 +11:00
macio.h treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
mc146818rtc.h
mediabay.h
mman.h UAPI: (Scripted) Disintegrate arch/powerpc/include/asm 2012-10-09 09:47:26 +01:00
mmu-8xx.h
mmu-40x.h
mmu-44x.h powerpc/47x: Base ppc476 support 2010-05-05 09:11:10 -04:00
mmu-book3e.h KVM: PPC: booke: Extend MAS2 EPN mask for 64-bit 2012-12-06 01:34:15 +01:00
mmu-hash32.h
mmu-hash64.h powerpc: Rename USER_ESID_BITS* to ESID_BITS* 2013-03-17 12:45:44 +11:00
mmu.h powerpc: POWER8 cputable entry 2012-11-15 13:00:45 +11:00
mmu_context.h powerpc: Add Initiate Coprocessor Store Word (icswx) support 2011-05-04 15:19:26 +10:00
mmzone.h Fix node_start/end_pfn() definition for mm/page_cgroup.c 2011-06-27 14:13:09 -07:00
module.h Make most arch asm/module.h files use asm-generic/module.h 2012-09-28 14:31:03 +09:30
mpc5xxx.h
mpc6xx.h
mpc8xx.h
mpc52xx.h powerpc/mpc52xx_lpbfifo: optionally defer fifo transfer start 2012-09-14 10:15:35 +02:00
mpc52xx_psc.h powerpc/5200: add mpc5200_psc_ac97_gpio_reset 2010-08-06 20:49:18 -06:00
mpc5121.h powerpc/mpc512x: fix sparce warnings for non static symbols 2013-02-05 07:40:35 +00:00
mpc8260.h
mpic.h powerpc/mpic: FSL MPIC error interrupt support. 2012-09-12 14:57:10 -05:00
mpic_msgr.h powerpc/mpic_msgr: Add missing includes 2012-08-24 20:26:04 +10:00
msi_bitmap.h
mutex.h
nvram.h UAPI: (Scripted) Disintegrate arch/powerpc/include/asm 2012-10-09 09:47:26 +01:00
ohare.h
opal.h powerpc/powernv: Update OPAL interfaces 2011-12-07 18:02:02 +11:00
oprofile_impl.h treewide: fix typo of "suport" in various comments and Kconfig 2012-11-19 14:16:09 +01:00
paca.h powerpc: Add transactional memory paca scratch register to show_regs 2013-02-15 16:58:51 +11:00
page.h powerpc: Define virtual-physical translations for RELOCATABLE 2011-12-20 10:21:34 -05:00
page_32.h dma-mapping: rename ARCH_KMALLOC_MINALIGN to ARCH_DMA_MINALIGN 2010-08-11 08:59:21 -07:00
page_64.h powerpc/mm: Make some of the PGTABLE_RANGE dependency explicit 2012-09-17 16:31:53 +10:00
parport.h POWERPC: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
pasemi_dma.h Fix common misspellings 2011-03-31 11:26:23 -03:00
pci-bridge.h powerpc/eeh: Fix crash on converting OF node to edev 2012-09-18 15:32:51 +10:00
pci.h powerpc/PCI: compute I/O space bus-to-resource offset consistently 2012-03-20 10:41:44 -07:00
percpu.h powerpc: Optimise per cpu accesses on 64bit 2010-07-09 11:28:30 +10:00
perf_event.h powerpc/perf: Move code to select SIAR or pt_regs into perf_read_regs 2012-07-10 19:18:41 +10:00
perf_event_fsl_emb.h
perf_event_server.h Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2013-02-23 17:09:55 -08:00
pgalloc-32.h
pgalloc-64.h powerpc/mm: Track backing pages allocated by vmemmap_populate() 2010-05-06 16:49:27 +10:00
pgalloc.h mm, powerpc: move the RCU page-table freeing into generic code 2011-05-25 08:39:16 -07:00
pgtable-ppc32.h mm: remove pte_*map_nested() 2010-10-26 16:52:08 -07:00
pgtable-ppc64-4k.h powerpc/mm: Add 64TB support 2012-09-17 16:31:51 +10:00
pgtable-ppc64-64k.h powerpc/mm: Add 64TB support 2012-09-17 16:31:51 +10:00
pgtable-ppc64.h powerpc/mm: Make some of the PGTABLE_RANGE dependency explicit 2012-09-17 16:31:53 +10:00
pgtable.h powerpc/mm: Make some of the PGTABLE_RANGE dependency explicit 2012-09-17 16:31:53 +10:00
pmac_feature.h Fix common misspellings 2011-03-31 11:26:23 -03:00
pmac_low_i2c.h
pmac_pfunc.h
pmc.h
pmi.h
ppc-opcode.h powerpc: Add new instructions for transactional memory 2013-02-15 16:58:49 +11:00
ppc-pci.h powerpc/eeh: Cleanup on EEH PCI address cache 2012-09-10 09:59:00 +10:00
ppc4xx.h
ppc4xx_ocm.h powerpc/44x: Support OCM(On Chip Memory) for APM821xx SoC and Bluestone board 2013-01-10 15:08:37 +11:00
ppc_asm.h Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2013-02-23 17:09:55 -08:00
probes.h powerpc/kprobes: Rename opcode_t in probes.h to ppc_opcode_t 2012-09-07 09:48:50 +10:00
processor.h powerpc: New macros for transactional memory support 2013-02-15 16:58:50 +11:00
prom.h powerpc+of: Move of_drconf_cell struct definition to asm/prom.h 2012-11-15 09:43:55 +11:00
ps3.h powerpc/ps3: Add macro PS3_VERBOSE_RESULT 2013-02-15 16:54:39 +11:00
ps3av.h
ps3gpu.h
ps3stor.h
pte-8xx.h
pte-40x.h
pte-44x.h
pte-book3e.h powerpc: Hugetlb for BookE 2011-09-20 09:19:40 +10:00
pte-common.h powerpc: Don't write protect kernel text with CONFIG_DYNAMIC_FTRACE enabled 2011-04-18 13:08:21 +10:00
pte-fsl-booke.h
pte-hash32.h
pte-hash64-4k.h
pte-hash64-64k.h Fix misspellings of "whether" in comments. 2012-11-19 14:31:35 +01:00
pte-hash64.h
ptrace.h Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2012-10-13 11:21:15 +09:00
qe.h powerpc: Fix typos in Freescale copyright claims 2012-11-15 13:00:58 +11:00
qe_ic.h powerpc: Fix typos in Freescale copyright claims 2012-11-15 13:00:58 +11:00
reg.h KVM: PPC: Book3S HV: Improve real-mode handling of external interrupts 2013-04-26 20:27:32 +02:00
reg_8xx.h
reg_a2.h powerpc: Add early debug for WSP platforms 2011-05-06 13:32:41 +10:00
reg_booke.h booke: Added DBCR4 SPR number 2013-02-13 12:56:42 +01:00
reg_fsl_emb.h
rheap.h
rio.h powerpc/fsl_rio: Fix compile error when CONFIG_FSL_RIO not set 2011-06-02 15:29:08 -05:00
rtas.h powerpc+of: Remove the pSeries_reconfig.h file 2012-11-15 12:56:55 +11:00
rtc.h
runlatch.h Disintegrate asm/system.h for PowerPC 2012-03-28 18:30:02 +01:00
scatterlist.h remove needless ISA_DMA_THRESHOLD 2010-08-07 18:15:50 +02:00
scom.h powerpc: Add SCOM infrastructure 2011-04-20 17:01:19 +10:00
sections.h powerpc: Relocate prom_init.c on 64bit 2013-01-10 17:00:25 +11:00
serial.h
setjmp.h
setup.h powerpc: Remove stale function prototypes from setup.h 2012-11-15 13:00:54 +11:00
sfp-machine.h Revert "endian: #define __BYTE_ORDER" 2010-05-26 08:30:15 -07:00
shmparam.h
signal.h consolidate kernel-side struct sigaction declarations 2013-02-03 15:09:22 -05:00
smp.h POWERPC: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
smu.h Fix misspellings of "whether" in comments. 2012-11-19 14:31:35 +01:00
sparsemem.h powerpc/mm: Add 64TB support 2012-09-17 16:31:51 +10:00
spinlock.h powerpc: Avoid debug_smp_processor_id() check in SHARED_PROCESSOR 2013-01-29 11:35:06 +11:00
spinlock_types.h
spu.h Merge branch 'for-linus2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2012-01-08 12:19:57 -08:00
spu_csa.h
spu_info.h UAPI: (Scripted) Disintegrate arch/powerpc/include/asm 2012-10-09 09:47:26 +01:00
spu_priv1.h Fix common misspellings 2011-03-31 11:26:23 -03:00
sstep.h
string.h
swab.h UAPI: (Scripted) Disintegrate arch/powerpc/include/asm 2012-10-09 09:47:26 +01:00
swiotlb.h powerpc/swiotlb: Enable at early stage and disable if not necessary 2012-09-12 14:57:09 -05:00
switch_to.h Merge branch 'next' of git://git.kernel.org/pub/scm/virt/kvm/kvm 2012-05-24 16:17:30 -07:00
synch.h powerpc: Fix atomic_xxx_return barrier semantics 2011-11-17 16:26:07 +11:00
syscall.h powerpc/ftrace: Implement raw syscall tracepoints on PowerPC 2011-05-26 13:38:57 +10:00
syscalls.h powerpc: trim the crap from syscalls.h 2013-02-03 18:16:11 -05:00
systbl.h powerpc: Wireup the kcmp syscall to sys_ni 2013-03-05 16:56:29 +11:00
tce.h powerpc/powernv: Add TCE SW invalidation support 2011-11-25 14:32:57 +11:00
termios.h UAPI: (Scripted) Disintegrate arch/powerpc/include/asm 2012-10-09 09:47:26 +01:00
thread_info.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal 2012-10-12 10:49:08 +09:00
time.h cputime: Consolidate vtime handling on context switch 2012-08-20 13:05:28 +02:00
timex.h
tlb.h mm, powerpc: move the RCU page-table freeing into generic code 2011-05-25 08:39:16 -07:00
tlbflush.h powerpc/mm: Make some of the PGTABLE_RANGE dependency explicit 2012-09-17 16:31:53 +10:00
tm.h powerpc: Add helper functions for transactional memory context switching 2013-02-15 16:58:52 +11:00
topology.h sched/numa: Rewrite the CONFIG_NUMA sched domain support 2012-05-09 15:00:55 +02:00
trace.h powerpc: tracing: Avoid tracepoint duplication with DECLARE_EVENT_CLASS 2012-07-03 14:14:41 +10:00
tsi108.h
tsi108_irq.h
tsi108_pci.h
types.h UAPI: (Scripted) Disintegrate arch/powerpc/include/asm 2012-10-09 09:47:26 +01:00
uaccess.h powerpc: Remove unused __get_user64() and __put_user64() 2012-09-18 15:32:36 +10:00
ucc.h powerpc: Fix typos in Freescale copyright claims 2012-11-15 13:00:58 +11:00
ucc_fast.h powerpc: Fix typos in Freescale copyright claims 2012-11-15 13:00:58 +11:00
ucc_slow.h powerpc: Fix typos in Freescale copyright claims 2012-11-15 13:00:58 +11:00
udbg.h powerpc/udbg: Remove unused udbg_read() 2012-11-15 12:59:33 +11:00
uic.h
unaligned.h
uninorth.h Revert wrong fixes for common misspellings 2011-04-26 23:31:11 -07:00
unistd.h powerpc: Wireup the kcmp syscall to sys_ni 2013-03-05 16:56:29 +11:00
uprobes.h powerpc/kprobes: Rename opcode_t in probes.h to ppc_opcode_t 2012-09-07 09:48:50 +10:00
user.h
vdso.h powerpc: Add VDSO version of getcpu 2012-07-11 14:18:40 +10:00
vdso_datapage.h Fix common misspellings 2011-03-31 11:26:23 -03:00
vga.h
vio.h POWERPC: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
word-at-a-time.h powerpc: Use the new generic strncpy_from_user() and strnlen_user() 2012-05-27 21:00:07 -07:00
wsp.h powerpc: Add WSP platform 2011-05-06 13:32:35 +10:00
xics.h irq_domain/powerpc: Use common irq_domain structure instead of irq_host 2012-02-14 14:06:50 -07:00
xilinx_intc.h
xilinx_pci.h
xmon.h
xor.h