mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 07:13:54 -06:00
acpi, vhost, misc: fixes, features
vDPA support, fix to vhost blk RO bit handling, some include path cleanups, NFIT ACPI table. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> -----BEGIN PGP SIGNATURE----- iQEcBAABAgAGBQJbEXNvAAoJECgfDbjSjVRpc8gH/R8xrcFrV+k9wwbgYcOcGb6Y LWjseE31pqJcxRV80vLOdzYEuLStZQKQQY7xBDMlA5vdyvZxIA6FLO2IsiJSbFAk EK8pclwhpwQAahr8BfzenabohBv2UO7zu5+dqSvuJCiMWF3jGtPAIMxInfjXaOZY odc1zY2D2EgsC7wZZ1hfraRbISBOiRaez9BoGDKPOyBY9G1ASEgxJgleFgoBLfsK a1XU+fDM6hAVdxftfkTm0nibyf7PWPDyzqghLqjR9WXLvZP3Cqud4p8N29mY51pR KSTjA4FYk6Z9EVMltyBHfdJs6RQzglKjxcNGdlrvacDfyFi79fGdiosVllrjfJM= =3+V0 -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into staging acpi, vhost, misc: fixes, features vDPA support, fix to vhost blk RO bit handling, some include path cleanups, NFIT ACPI table. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> # gpg: Signature made Fri 01 Jun 2018 17:25:19 BST # gpg: using RSA key 281F0DB8D28D5469 # gpg: Good signature from "Michael S. Tsirkin <mst@kernel.org>" # gpg: aka "Michael S. Tsirkin <mst@redhat.com>" # Primary key fingerprint: 0270 606B 6F3C DF3D 0B17 0970 C350 3912 AFBE 8E67 # Subkey fingerprint: 5D09 FD08 71C8 F85B 94CA 8A0D 281F 0DB8 D28D 5469 * remotes/mst/tags/for_upstream: (31 commits) vhost-blk: turn on pre-defined RO feature bit ACPI testing: test NFIT platform capabilities nvdimm, acpi: support NFIT platform capabilities tests/.gitignore: add entry for generated file arch_init: sort architectures ui: use local path for local headers qga: use local path for local headers colo: use local path for local headers migration: use local path for local headers usb: use local path for local headers sd: fix up include vhost-scsi: drop an unused include ppc: use local path for local headers rocker: drop an unused include e1000e: use local path for local headers ioapic: fix up includes ide: use local path for local headers display: use local path for local headers trace: use local path for local headers migration: drop an unused include ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
f67c9b693a
104 changed files with 807 additions and 166 deletions
|
@ -76,6 +76,7 @@ struct PCMachineState {
|
|||
#define PC_MACHINE_VMPORT "vmport"
|
||||
#define PC_MACHINE_SMM "smm"
|
||||
#define PC_MACHINE_NVDIMM "nvdimm"
|
||||
#define PC_MACHINE_NVDIMM_CAP "nvdimm-cap"
|
||||
#define PC_MACHINE_SMBUS "smbus"
|
||||
#define PC_MACHINE_SATA "sata"
|
||||
#define PC_MACHINE_PIT "pit"
|
||||
|
|
|
@ -134,6 +134,11 @@ struct AcpiNVDIMMState {
|
|||
|
||||
/* the IO region used by OSPM to transfer control to QEMU. */
|
||||
MemoryRegion io_mr;
|
||||
|
||||
/*
|
||||
* Platform capabilities, section 5.2.25.9 of ACPI 6.2 Errata A
|
||||
*/
|
||||
int32_t capabilities;
|
||||
};
|
||||
typedef struct AcpiNVDIMMState AcpiNVDIMMState;
|
||||
|
||||
|
|
|
@ -101,6 +101,9 @@ typedef int (*vhost_crypto_create_session_op)(struct vhost_dev *dev,
|
|||
typedef int (*vhost_crypto_close_session_op)(struct vhost_dev *dev,
|
||||
uint64_t session_id);
|
||||
|
||||
typedef bool (*vhost_backend_mem_section_filter_op)(struct vhost_dev *dev,
|
||||
MemoryRegionSection *section);
|
||||
|
||||
typedef struct VhostOps {
|
||||
VhostBackendType backend_type;
|
||||
vhost_backend_init vhost_backend_init;
|
||||
|
@ -138,6 +141,7 @@ typedef struct VhostOps {
|
|||
vhost_set_config_op vhost_set_config;
|
||||
vhost_crypto_create_session_op vhost_crypto_create_session;
|
||||
vhost_crypto_close_session_op vhost_crypto_close_session;
|
||||
vhost_backend_mem_section_filter_op vhost_backend_mem_section_filter;
|
||||
} VhostOps;
|
||||
|
||||
extern const VhostOps user_ops;
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
#include "hw/block/block.h"
|
||||
#include "chardev/char-fe.h"
|
||||
#include "hw/virtio/vhost.h"
|
||||
#include "hw/virtio/vhost-user.h"
|
||||
|
||||
#define TYPE_VHOST_USER_BLK "vhost-user-blk"
|
||||
#define VHOST_USER_BLK(obj) \
|
||||
|
@ -34,8 +35,8 @@ typedef struct VHostUserBlk {
|
|||
uint16_t num_queues;
|
||||
uint32_t queue_size;
|
||||
uint32_t config_wce;
|
||||
uint32_t config_ro;
|
||||
struct vhost_dev dev;
|
||||
VhostUserState *vhost_user;
|
||||
} VHostUserBlk;
|
||||
|
||||
#endif
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
#include "hw/qdev.h"
|
||||
#include "hw/virtio/virtio-scsi.h"
|
||||
#include "hw/virtio/vhost.h"
|
||||
#include "hw/virtio/vhost-user.h"
|
||||
#include "hw/virtio/vhost-scsi-common.h"
|
||||
|
||||
#define TYPE_VHOST_USER_SCSI "vhost-user-scsi"
|
||||
|
@ -30,6 +31,7 @@
|
|||
typedef struct VHostUserSCSI {
|
||||
VHostSCSICommon parent_obj;
|
||||
uint64_t host_features;
|
||||
VhostUserState *vhost_user;
|
||||
} VHostUserSCSI;
|
||||
|
||||
#endif /* VHOST_USER_SCSI_H */
|
||||
|
|
28
include/hw/virtio/vhost-user.h
Normal file
28
include/hw/virtio/vhost-user.h
Normal file
|
@ -0,0 +1,28 @@
|
|||
/*
|
||||
* Copyright (c) 2017-2018 Intel Corporation
|
||||
*
|
||||
* This work is licensed under the terms of the GNU GPL, version 2.
|
||||
* See the COPYING file in the top-level directory.
|
||||
*/
|
||||
|
||||
#ifndef HW_VIRTIO_VHOST_USER_H
|
||||
#define HW_VIRTIO_VHOST_USER_H
|
||||
|
||||
#include "chardev/char-fe.h"
|
||||
#include "hw/virtio/virtio.h"
|
||||
|
||||
typedef struct VhostUserHostNotifier {
|
||||
MemoryRegion mr;
|
||||
void *addr;
|
||||
bool set;
|
||||
} VhostUserHostNotifier;
|
||||
|
||||
typedef struct VhostUserState {
|
||||
CharBackend *chr;
|
||||
VhostUserHostNotifier notifier[VIRTIO_QUEUE_MAX];
|
||||
} VhostUserState;
|
||||
|
||||
VhostUserState *vhost_user_init(void);
|
||||
void vhost_user_cleanup(VhostUserState *user);
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue