From: Klaus Jensen <k.jen...@samsung.com> This adds mandatory features of NVM Express v1.3 to the emulated NVMe device.
v2: * hw/block/nvme: bump spec data structures to v1.3 - Shorten some constants. (Dmitry) * hw/block/nvme: add temperature threshold feature - Remove unused temp_thresh member. (Dmitry) * hw/block/nvme: add support for the get log page command - Change the temperature field in the NvmeSmartLog struct to be an uint16_t and handle wierd alignment by adding QEMU_PACKED to the struct. (Dmitry) * hw/block/nvme: add remaining mandatory controller parameters - Fix spelling. (Dmitry) * hw/block/nvme: support the get/set features select and save fields - Fix bad logic causing temperature thresholds to always report defaults. (Dmitry) * hw/block/nvme: reject invalid nsid values in active namespace id list - Added patch; reject the 0xfffffffe and 0xffffffff nsid values. Klaus Jensen (18): hw/block/nvme: bump spec data structures to v1.3 hw/block/nvme: additional tracing hw/block/nvme: add support for the abort command hw/block/nvme: add temperature threshold feature hw/block/nvme: mark fw slot 1 as read-only hw/block/nvme: add support for the get log page command hw/block/nvme: add support for the asynchronous event request command hw/block/nvme: move NvmeFeatureVal into hw/block/nvme.h hw/block/nvme: flush write cache when disabled hw/block/nvme: fix missing endian conversion hw/block/nvme: add remaining mandatory controller parameters hw/block/nvme: support the get/set features select and save fields hw/block/nvme: make sure ncqr and nsqr is valid hw/block/nvme: support identify namespace descriptor list hw/block/nvme: reject invalid nsid values in active namespace id list hw/block/nvme: enforce valid queue creation sequence hw/block/nvme: provide the mandatory subnqn field hw/block/nvme: bump supported version to v1.3 block/nvme.c | 18 +- hw/block/nvme.c | 611 ++++++++++++++++++++++++++++++++++++++++-- hw/block/nvme.h | 62 ++++- hw/block/trace-events | 27 +- include/block/nvme.h | 222 ++++++++++++--- 5 files changed, 874 insertions(+), 66 deletions(-) -- 2.27.0