diff options
| author | Peter Maydell <peter.maydell@linaro.org> | 2014-10-10 14:55:29 +0100 |
|---|---|---|
| committer | Peter Maydell <peter.maydell@linaro.org> | 2014-10-10 14:55:29 +0100 |
| commit | b1d28ec6a7dbdaadda39d29322f0de694aeb0b74 (patch) | |
| tree | 140d0963a9a155976d2336daec81fffdbae1fc52 /linux-headers/linux/vfio.h | |
| parent | 9d1c35dfc9940e4afa604a25f62b9dc197c513b6 (diff) | |
| parent | 4b7757bae7c94f980969031119db12d540cf2b61 (diff) | |
| download | focaccia-qemu-b1d28ec6a7dbdaadda39d29322f0de694aeb0b74.tar.gz focaccia-qemu-b1d28ec6a7dbdaadda39d29322f0de694aeb0b74.zip | |
Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20141010' into staging
various s390x updates: - cpu state handling in qemu and migration - vhost-scsi-ccw bugfix # gpg: Signature made Fri 10 Oct 2014 14:01:34 BST using RSA key ID C6F02FAF # gpg: Can't check signature: public key not found * remotes/cohuck/tags/s390x-20141010: s390x/virtio-ccw: fix vhost-scsi intialization s390x/migration: migrate CPU state s390x/kvm: synchronize the cpu state after SIGP (INITIAL) CPU RESET s390x/kvm: reuse kvm_s390_reset_vcpu() to get rid of ifdefs s390x/kvm: propagate s390 cpu state to kvm s390x/kvm: proper use of the cpu states OPERATING and STOPPED s390x/kvm: introduce proper states for s390 cpus linux-headers: update to 3.17-rc7 Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'linux-headers/linux/vfio.h')
| -rw-r--r-- | linux-headers/linux/vfio.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux/vfio.h index 26c218e692..95b591b61a 100644 --- a/linux-headers/linux/vfio.h +++ b/linux-headers/linux/vfio.h @@ -30,6 +30,9 @@ */ #define VFIO_DMA_CC_IOMMU 4 +/* Check if EEH is supported */ +#define VFIO_EEH 5 + /* * The IOCTL interface is designed for extensibility by embedding the * structure length (argsz) and flags into structures passed between @@ -455,6 +458,37 @@ struct vfio_iommu_spapr_tce_info { #define VFIO_IOMMU_SPAPR_TCE_GET_INFO _IO(VFIO_TYPE, VFIO_BASE + 12) +/* + * EEH PE operation struct provides ways to: + * - enable/disable EEH functionality; + * - unfreeze IO/DMA for frozen PE; + * - read PE state; + * - reset PE; + * - configure PE. + */ +struct vfio_eeh_pe_op { + __u32 argsz; + __u32 flags; + __u32 op; +}; + +#define VFIO_EEH_PE_DISABLE 0 /* Disable EEH functionality */ +#define VFIO_EEH_PE_ENABLE 1 /* Enable EEH functionality */ +#define VFIO_EEH_PE_UNFREEZE_IO 2 /* Enable IO for frozen PE */ +#define VFIO_EEH_PE_UNFREEZE_DMA 3 /* Enable DMA for frozen PE */ +#define VFIO_EEH_PE_GET_STATE 4 /* PE state retrieval */ +#define VFIO_EEH_PE_STATE_NORMAL 0 /* PE in functional state */ +#define VFIO_EEH_PE_STATE_RESET 1 /* PE reset in progress */ +#define VFIO_EEH_PE_STATE_STOPPED 2 /* Stopped DMA and IO */ +#define VFIO_EEH_PE_STATE_STOPPED_DMA 4 /* Stopped DMA only */ +#define VFIO_EEH_PE_STATE_UNAVAIL 5 /* State unavailable */ +#define VFIO_EEH_PE_RESET_DEACTIVATE 5 /* Deassert PE reset */ +#define VFIO_EEH_PE_RESET_HOT 6 /* Assert hot reset */ +#define VFIO_EEH_PE_RESET_FUNDAMENTAL 7 /* Assert fundamental reset */ +#define VFIO_EEH_PE_CONFIGURE 8 /* PE configuration */ + +#define VFIO_EEH_PE_OP _IO(VFIO_TYPE, VFIO_BASE + 21) + /* ***************************************************************** */ #endif /* VFIO_H */ |