Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

KVM: s390: pv: Add dump support definitions

Let's add the constants and structure definitions needed for the dump
support.

Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
Reviewed-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
Reviewed-by: Steffen Eiden <seiden@linux.ibm.com>
Link: https://lore.kernel.org/r/20220517163629.3443-5-frankja@linux.ibm.com
Message-Id: <20220517163629.3443-5-frankja@linux.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@linux.ibm.com>

authored by

Janosch Frank and committed by
Christian Borntraeger
06eb3388 35d02493

+33
+33
arch/s390/include/asm/uv.h
··· 50 50 #define UVC_CMD_SET_UNSHARE_ALL 0x0340 51 51 #define UVC_CMD_PIN_PAGE_SHARED 0x0341 52 52 #define UVC_CMD_UNPIN_PAGE_SHARED 0x0342 53 + #define UVC_CMD_DUMP_INIT 0x0400 54 + #define UVC_CMD_DUMP_CONF_STOR_STATE 0x0401 55 + #define UVC_CMD_DUMP_CPU 0x0402 56 + #define UVC_CMD_DUMP_COMPLETE 0x0403 53 57 #define UVC_CMD_SET_SHARED_ACCESS 0x1000 54 58 #define UVC_CMD_REMOVE_SHARED_ACCESS 0x1001 55 59 #define UVC_CMD_RETR_ATTEST 0x1020 ··· 81 77 BIT_UVC_CMD_UNSHARE_ALL = 20, 82 78 BIT_UVC_CMD_PIN_PAGE_SHARED = 21, 83 79 BIT_UVC_CMD_UNPIN_PAGE_SHARED = 22, 80 + BIT_UVC_CMD_DUMP_INIT = 24, 81 + BIT_UVC_CMD_DUMP_CONFIG_STOR_STATE = 25, 82 + BIT_UVC_CMD_DUMP_CPU = 26, 83 + BIT_UVC_CMD_DUMP_COMPLETE = 27, 84 84 BIT_UVC_CMD_RETR_ATTEST = 28, 85 85 }; 86 86 ··· 252 244 u32 add_data_len; /* 0x015c */ 253 245 u64 add_data_addr; /* 0x0160 */ 254 246 u64 reserved168[4]; /* 0x0168 */ 247 + } __packed __aligned(8); 248 + 249 + struct uv_cb_dump_cpu { 250 + struct uv_cb_header header; 251 + u64 reserved08[2]; 252 + u64 cpu_handle; 253 + u64 dump_area_origin; 254 + u64 reserved28[5]; 255 + } __packed __aligned(8); 256 + 257 + struct uv_cb_dump_stor_state { 258 + struct uv_cb_header header; 259 + u64 reserved08[2]; 260 + u64 config_handle; 261 + u64 dump_area_origin; 262 + u64 gaddr; 263 + u64 reserved28[4]; 264 + } __packed __aligned(8); 265 + 266 + struct uv_cb_dump_complete { 267 + struct uv_cb_header header; 268 + u64 reserved08[2]; 269 + u64 config_handle; 270 + u64 dump_area_origin; 271 + u64 reserved30[5]; 255 272 } __packed __aligned(8); 256 273 257 274 static inline int __uv_call(unsigned long r1, unsigned long r2)