xref: /qemu/hw/mem/cxl_type3_stubs.c (revision 1406b7fc4bbaab42133b1ef03270179746e91723)
1 /*
2  * CXL Type 3 (memory expander) device QMP stubs
3  *
4  * Copyright(C) 2020 Intel Corporation.
5  *
6  * This work is licensed under the terms of the GNU GPL, version 2. See the
7  * COPYING file in the top-level directory.
8  *
9  * SPDX-License-Identifier: GPL-v2-only
10  */
11 
12 #include "qemu/osdep.h"
13 #include "qapi/error.h"
14 #include "qapi/qapi-commands-cxl.h"
15 
qmp_cxl_inject_general_media_event(const char * path,CxlEventLog log,uint8_t flags,uint64_t dpa,uint8_t descriptor,uint8_t type,uint8_t transaction_type,bool has_channel,uint8_t channel,bool has_rank,uint8_t rank,bool has_device,uint32_t device,const char * component_id,Error ** errp)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,
24                                         Error **errp) {}
25 
qmp_cxl_inject_dram_event(const char * path,CxlEventLog log,uint8_t flags,uint64_t dpa,uint8_t descriptor,uint8_t type,uint8_t transaction_type,bool has_channel,uint8_t channel,bool has_rank,uint8_t rank,bool has_nibble_mask,uint32_t nibble_mask,bool has_bank_group,uint8_t bank_group,bool has_bank,uint8_t bank,bool has_row,uint32_t row,bool has_column,uint16_t column,bool has_correction_mask,uint64List * correction_mask,Error ** errp)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,
37                                uint64List *correction_mask,
38                                Error **errp) {}
39 
qmp_cxl_inject_memory_module_event(const char * path,CxlEventLog log,uint8_t flags,uint8_t type,uint8_t health_status,uint8_t media_status,uint8_t additional_status,uint8_t life_used,int16_t temperature,uint32_t dirty_shutdown_count,uint32_t corrected_volatile_error_count,uint32_t corrected_persist_error_count,Error ** errp)40 void qmp_cxl_inject_memory_module_event(const char *path, CxlEventLog log,
41                                         uint8_t flags, uint8_t type,
42                                         uint8_t health_status,
43                                         uint8_t media_status,
44                                         uint8_t additional_status,
45                                         uint8_t life_used,
46                                         int16_t temperature,
47                                         uint32_t dirty_shutdown_count,
48                                         uint32_t corrected_volatile_error_count,
49                                         uint32_t corrected_persist_error_count,
50                                         Error **errp) {}
51 
qmp_cxl_inject_poison(const char * path,uint64_t start,uint64_t length,Error ** errp)52 void qmp_cxl_inject_poison(const char *path, uint64_t start, uint64_t length,
53                            Error **errp)
54 {
55     error_setg(errp, "CXL Type 3 support is not compiled in");
56 }
57 
qmp_cxl_inject_uncorrectable_errors(const char * path,CXLUncorErrorRecordList * errors,Error ** errp)58 void qmp_cxl_inject_uncorrectable_errors(const char *path,
59                                          CXLUncorErrorRecordList *errors,
60                                          Error **errp)
61 {
62     error_setg(errp, "CXL Type 3 support is not compiled in");
63 }
64 
qmp_cxl_inject_correctable_error(const char * path,CxlCorErrorType type,Error ** errp)65 void qmp_cxl_inject_correctable_error(const char *path, CxlCorErrorType type,
66                                       Error **errp)
67 {
68     error_setg(errp, "CXL Type 3 support is not compiled in");
69 }
70 
qmp_cxl_add_dynamic_capacity(const char * path,uint16_t host_id,CxlExtentSelectionPolicy sel_policy,uint8_t region,const char * tag,CxlDynamicCapacityExtentList * extents,Error ** errp)71 void qmp_cxl_add_dynamic_capacity(const char *path,
72                                   uint16_t host_id,
73                                   CxlExtentSelectionPolicy sel_policy,
74                                   uint8_t region,
75                                   const char *tag,
76                                   CxlDynamicCapacityExtentList *extents,
77                                   Error **errp)
78 {
79     error_setg(errp, "CXL Type 3 support is not compiled in");
80 }
81 
qmp_cxl_release_dynamic_capacity(const char * path,uint16_t host_id,CxlExtentRemovalPolicy removal_policy,bool has_forced_removal,bool forced_removal,bool has_sanitize_on_release,bool sanitize_on_release,uint8_t region,const char * tag,CxlDynamicCapacityExtentList * extents,Error ** errp)82 void qmp_cxl_release_dynamic_capacity(const char *path, uint16_t host_id,
83                                       CxlExtentRemovalPolicy removal_policy,
84                                       bool has_forced_removal,
85                                       bool forced_removal,
86                                       bool has_sanitize_on_release,
87                                       bool sanitize_on_release,
88                                       uint8_t region,
89                                       const char *tag,
90                                       CxlDynamicCapacityExtentList *extents,
91                                       Error **errp)
92 {
93     error_setg(errp, "CXL Type 3 support is not compiled in");
94 }
95