2 * CXL Type 3 (memory expander) device QMP stubs
4 * Copyright(C) 2020 Intel Corporation.
6 * This work is licensed under the terms of the GNU GPL, version 2. See the
7 * COPYING file in the top-level directory.
9 * SPDX-License-Identifier: GPL-v2-only
12 #include "qemu/osdep.h"
13 #include "qapi/error.h"
14 #include "qapi/qapi-commands-cxl.h"
16 void qmp_cxl_inject_general_media_event(const char *path
, CxlEventLog log
,
17 uint8_t flags
, uint64_t dpa
,
18 uint8_t descriptor
, uint8_t type
,
19 uint8_t transaction_type
,
20 bool has_channel
, uint8_t channel
,
21 bool has_rank
, uint8_t rank
,
22 bool has_device
, uint32_t device
,
23 const char *component_id
,
26 void qmp_cxl_inject_dram_event(const char *path
, CxlEventLog log
, uint8_t flags
,
27 uint64_t dpa
, uint8_t descriptor
,
28 uint8_t type
, uint8_t transaction_type
,
29 bool has_channel
, uint8_t channel
,
30 bool has_rank
, uint8_t rank
,
31 bool has_nibble_mask
, uint32_t nibble_mask
,
32 bool has_bank_group
, uint8_t bank_group
,
33 bool has_bank
, uint8_t bank
,
34 bool has_row
, uint32_t row
,
35 bool has_column
, uint16_t column
,
36 bool has_correction_mask
, uint64List
*correction_mask
,
39 void qmp_cxl_inject_memory_module_event(const char *path
, CxlEventLog log
,
40 uint8_t flags
, uint8_t type
,
41 uint8_t health_status
,
43 uint8_t additional_status
,
46 uint32_t dirty_shutdown_count
,
47 uint32_t corrected_volatile_error_count
,
48 uint32_t corrected_persistent_error_count
,
51 void qmp_cxl_inject_poison(const char *path
, uint64_t start
, uint64_t length
,
54 error_setg(errp
, "CXL Type 3 support is not compiled in");
57 void qmp_cxl_inject_uncorrectable_errors(const char *path
,
58 CXLUncorErrorRecordList
*errors
,
61 error_setg(errp
, "CXL Type 3 support is not compiled in");
64 void qmp_cxl_inject_correctable_error(const char *path
, CxlCorErrorType type
,
67 error_setg(errp
, "CXL Type 3 support is not compiled in");