linux-headers: update
Update against Linux v4.12-rc1. Also include the new vfio_ccw.h header. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
This commit is contained in:
parent
f881bbdf72
commit
74c98e20a6
20 changed files with 151 additions and 16 deletions
|
|
@ -702,6 +702,10 @@ struct kvm_ppc_resize_hpt {
|
|||
#define KVM_VM_PPC_HV 1
|
||||
#define KVM_VM_PPC_PR 2
|
||||
|
||||
/* on MIPS, 0 forces trap & emulate, 1 forces VZ ASE */
|
||||
#define KVM_VM_MIPS_TE 0
|
||||
#define KVM_VM_MIPS_VZ 1
|
||||
|
||||
#define KVM_S390_SIE_PAGE_OFFSET 1
|
||||
|
||||
/*
|
||||
|
|
@ -883,6 +887,14 @@ struct kvm_ppc_resize_hpt {
|
|||
#define KVM_CAP_PPC_MMU_RADIX 134
|
||||
#define KVM_CAP_PPC_MMU_HASH_V3 135
|
||||
#define KVM_CAP_IMMEDIATE_EXIT 136
|
||||
#define KVM_CAP_MIPS_VZ 137
|
||||
#define KVM_CAP_MIPS_TE 138
|
||||
#define KVM_CAP_MIPS_64BIT 139
|
||||
#define KVM_CAP_S390_GS 140
|
||||
#define KVM_CAP_S390_AIS 141
|
||||
#define KVM_CAP_SPAPR_TCE_VFIO 142
|
||||
#define KVM_CAP_X86_GUEST_MWAIT 143
|
||||
#define KVM_CAP_ARM_USER_IRQ 144
|
||||
|
||||
#ifdef KVM_CAP_IRQ_ROUTING
|
||||
|
||||
|
|
@ -1087,6 +1099,7 @@ struct kvm_device_attr {
|
|||
#define KVM_DEV_VFIO_GROUP 1
|
||||
#define KVM_DEV_VFIO_GROUP_ADD 1
|
||||
#define KVM_DEV_VFIO_GROUP_DEL 2
|
||||
#define KVM_DEV_VFIO_GROUP_SET_SPAPR_TCE 3
|
||||
|
||||
enum kvm_device_type {
|
||||
KVM_DEV_TYPE_FSL_MPIC_20 = 1,
|
||||
|
|
@ -1108,6 +1121,11 @@ enum kvm_device_type {
|
|||
KVM_DEV_TYPE_MAX,
|
||||
};
|
||||
|
||||
struct kvm_vfio_spapr_tce {
|
||||
__s32 groupfd;
|
||||
__s32 tablefd;
|
||||
};
|
||||
|
||||
/*
|
||||
* ioctls for VM fds
|
||||
*/
|
||||
|
|
@ -1354,4 +1372,11 @@ struct kvm_assigned_msix_entry {
|
|||
#define KVM_X2APIC_API_USE_32BIT_IDS (1ULL << 0)
|
||||
#define KVM_X2APIC_API_DISABLE_BROADCAST_QUIRK (1ULL << 1)
|
||||
|
||||
/* Available with KVM_CAP_ARM_USER_IRQ */
|
||||
|
||||
/* Bits for run->s.regs.device_irq_level */
|
||||
#define KVM_ARM_DEV_EL1_VTIMER (1 << 0)
|
||||
#define KVM_ARM_DEV_EL1_PTIMER (1 << 1)
|
||||
#define KVM_ARM_DEV_PMU (1 << 2)
|
||||
|
||||
#endif /* __LINUX_KVM_H */
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@
|
|||
#define UFFD_API ((__u64)0xAA)
|
||||
#define UFFD_API_FEATURES (UFFD_FEATURE_EVENT_FORK | \
|
||||
UFFD_FEATURE_EVENT_REMAP | \
|
||||
UFFD_FEATURE_EVENT_MADVDONTNEED | \
|
||||
UFFD_FEATURE_EVENT_REMOVE | \
|
||||
UFFD_FEATURE_EVENT_UNMAP | \
|
||||
UFFD_FEATURE_MISSING_HUGETLBFS | \
|
||||
UFFD_FEATURE_MISSING_SHMEM)
|
||||
#define UFFD_API_IOCTLS \
|
||||
|
|
@ -92,7 +93,7 @@ struct uffd_msg {
|
|||
struct {
|
||||
__u64 start;
|
||||
__u64 end;
|
||||
} madv_dn;
|
||||
} remove;
|
||||
|
||||
struct {
|
||||
/* unused reserved fields */
|
||||
|
|
@ -109,7 +110,8 @@ struct uffd_msg {
|
|||
#define UFFD_EVENT_PAGEFAULT 0x12
|
||||
#define UFFD_EVENT_FORK 0x13
|
||||
#define UFFD_EVENT_REMAP 0x14
|
||||
#define UFFD_EVENT_MADVDONTNEED 0x15
|
||||
#define UFFD_EVENT_REMOVE 0x15
|
||||
#define UFFD_EVENT_UNMAP 0x16
|
||||
|
||||
/* flags for UFFD_EVENT_PAGEFAULT */
|
||||
#define UFFD_PAGEFAULT_FLAG_WRITE (1<<0) /* If this was a write fault */
|
||||
|
|
@ -155,9 +157,10 @@ struct uffdio_api {
|
|||
#define UFFD_FEATURE_PAGEFAULT_FLAG_WP (1<<0)
|
||||
#define UFFD_FEATURE_EVENT_FORK (1<<1)
|
||||
#define UFFD_FEATURE_EVENT_REMAP (1<<2)
|
||||
#define UFFD_FEATURE_EVENT_MADVDONTNEED (1<<3)
|
||||
#define UFFD_FEATURE_EVENT_REMOVE (1<<3)
|
||||
#define UFFD_FEATURE_MISSING_HUGETLBFS (1<<4)
|
||||
#define UFFD_FEATURE_MISSING_SHMEM (1<<5)
|
||||
#define UFFD_FEATURE_EVENT_UNMAP (1<<6)
|
||||
__u64 features;
|
||||
|
||||
__u64 ioctls;
|
||||
|
|
|
|||
|
|
@ -198,6 +198,7 @@ struct vfio_device_info {
|
|||
#define VFIO_DEVICE_FLAGS_PCI (1 << 1) /* vfio-pci device */
|
||||
#define VFIO_DEVICE_FLAGS_PLATFORM (1 << 2) /* vfio-platform device */
|
||||
#define VFIO_DEVICE_FLAGS_AMBA (1 << 3) /* vfio-amba device */
|
||||
#define VFIO_DEVICE_FLAGS_CCW (1 << 4) /* vfio-ccw device */
|
||||
__u32 num_regions; /* Max region index + 1 */
|
||||
__u32 num_irqs; /* Max IRQ index + 1 */
|
||||
};
|
||||
|
|
@ -212,6 +213,7 @@ struct vfio_device_info {
|
|||
#define VFIO_DEVICE_API_PCI_STRING "vfio-pci"
|
||||
#define VFIO_DEVICE_API_PLATFORM_STRING "vfio-platform"
|
||||
#define VFIO_DEVICE_API_AMBA_STRING "vfio-amba"
|
||||
#define VFIO_DEVICE_API_CCW_STRING "vfio-ccw"
|
||||
|
||||
/**
|
||||
* VFIO_DEVICE_GET_REGION_INFO - _IOWR(VFIO_TYPE, VFIO_BASE + 8,
|
||||
|
|
@ -446,6 +448,22 @@ enum {
|
|||
VFIO_PCI_NUM_IRQS
|
||||
};
|
||||
|
||||
/*
|
||||
* The vfio-ccw bus driver makes use of the following fixed region and
|
||||
* IRQ index mapping. Unimplemented regions return a size of zero.
|
||||
* Unimplemented IRQ types return a count of zero.
|
||||
*/
|
||||
|
||||
enum {
|
||||
VFIO_CCW_CONFIG_REGION_INDEX,
|
||||
VFIO_CCW_NUM_REGIONS
|
||||
};
|
||||
|
||||
enum {
|
||||
VFIO_CCW_IO_IRQ_INDEX,
|
||||
VFIO_CCW_NUM_IRQS
|
||||
};
|
||||
|
||||
/**
|
||||
* VFIO_DEVICE_GET_PCI_HOT_RESET_INFO - _IORW(VFIO_TYPE, VFIO_BASE + 12,
|
||||
* struct vfio_pci_hot_reset_info)
|
||||
|
|
|
|||
24
linux-headers/linux/vfio_ccw.h
Normal file
24
linux-headers/linux/vfio_ccw.h
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
/*
|
||||
* Interfaces for vfio-ccw
|
||||
*
|
||||
* Copyright IBM Corp. 2017
|
||||
*
|
||||
* Author(s): Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com>
|
||||
*/
|
||||
|
||||
#ifndef _VFIO_CCW_H_
|
||||
#define _VFIO_CCW_H_
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
struct ccw_io_region {
|
||||
#define ORB_AREA_SIZE 12
|
||||
__u8 orb_area[ORB_AREA_SIZE];
|
||||
#define SCSW_AREA_SIZE 12
|
||||
__u8 scsw_area[SCSW_AREA_SIZE];
|
||||
#define IRB_AREA_SIZE 96
|
||||
__u8 irb_area[IRB_AREA_SIZE];
|
||||
__u32 ret_code;
|
||||
} __attribute__((packed));
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue