These structs have largely been copied from the kernel so they still have the old uint short types which we want to avoid in favor of the uint*_t ones. Signed-off-by: Janosch Frank <frankja@xxxxxxxxxxxxx> --- lib/s390x/asm/uv.h | 142 +++++++++++++++++++++++---------------------- 1 file changed, 72 insertions(+), 70 deletions(-) diff --git a/lib/s390x/asm/uv.h b/lib/s390x/asm/uv.h index dc3e02d..96a2a7e 100644 --- a/lib/s390x/asm/uv.h +++ b/lib/s390x/asm/uv.h @@ -12,6 +12,8 @@ #ifndef _ASMS390X_UV_H_ #define _ASMS390X_UV_H_ +#include <stdint.h> + #define UVC_RC_EXECUTED 0x0001 #define UVC_RC_INV_CMD 0x0002 #define UVC_RC_INV_STATE 0x0003 @@ -68,73 +70,73 @@ enum uv_cmds_inst { }; struct uv_cb_header { - u16 len; - u16 cmd; /* Command Code */ - u16 rc; /* Response Code */ - u16 rrc; /* Return Reason Code */ + uint16_t len; + uint16_t cmd; /* Command Code */ + uint16_t rc; /* Response Code */ + uint16_t rrc; /* Return Reason Code */ } __attribute__((packed)) __attribute__((aligned(8))); struct uv_cb_init { struct uv_cb_header header; - u64 reserved08[2]; - u64 stor_origin; - u64 stor_len; - u64 reserved28[4]; + uint64_t reserved08[2]; + uint64_t stor_origin; + uint64_t stor_len; + uint64_t reserved28[4]; } __attribute__((packed)) __attribute__((aligned(8))); struct uv_cb_qui { struct uv_cb_header header; - u64 reserved08; - u64 inst_calls_list[4]; - u64 reserved30[2]; - u64 uv_base_stor_len; - u64 reserved48; - u64 conf_base_phys_stor_len; - u64 conf_base_virt_stor_len; - u64 conf_virt_var_stor_len; - u64 cpu_stor_len; - u32 reserved70[3]; - u32 max_num_sec_conf; - u64 max_guest_stor_addr; - u8 reserved88[158 - 136]; - u16 max_guest_cpus; - u8 reserveda0[200 - 160]; + uint64_t reserved08; + uint64_t inst_calls_list[4]; + uint64_t reserved30[2]; + uint64_t uv_base_stor_len; + uint64_t reserved48; + uint64_t conf_base_phys_stor_len; + uint64_t conf_base_virt_stor_len; + uint64_t conf_virt_var_stor_len; + uint64_t cpu_stor_len; + uint32_t reserved70[3]; + uint32_t max_num_sec_conf; + uint64_t max_guest_stor_addr; + uint8_t reserved88[158 - 136]; + uint16_t max_guest_cpus; + uint8_t reserveda0[200 - 160]; } __attribute__((packed)) __attribute__((aligned(8))); struct uv_cb_cgc { struct uv_cb_header header; - u64 reserved08[2]; - u64 guest_handle; - u64 conf_base_stor_origin; - u64 conf_var_stor_origin; - u64 reserved30; - u64 guest_stor_origin; - u64 guest_stor_len; - u64 guest_sca; - u64 guest_asce; - u64 reserved60[5]; + uint64_t reserved08[2]; + uint64_t guest_handle; + uint64_t conf_base_stor_origin; + uint64_t conf_var_stor_origin; + uint64_t reserved30; + uint64_t guest_stor_origin; + uint64_t guest_stor_len; + uint64_t guest_sca; + uint64_t guest_asce; + uint64_t reserved60[5]; } __attribute__((packed)) __attribute__((aligned(8))); struct uv_cb_csc { struct uv_cb_header header; - u64 reserved08[2]; - u64 cpu_handle; - u64 guest_handle; - u64 stor_origin; - u8 reserved30[6]; - u16 num; - u64 state_origin; - u64 reserved[4]; + uint64_t reserved08[2]; + uint64_t cpu_handle; + uint64_t guest_handle; + uint64_t stor_origin; + uint8_t reserved30[6]; + uint16_t num; + uint64_t state_origin; + uint64_t reserved[4]; } __attribute__((packed)) __attribute__((aligned(8))); struct uv_cb_unp { struct uv_cb_header header; - u64 reserved08[2]; - u64 guest_handle; - u64 gaddr; - u64 tweak[2]; - u64 reserved38[3]; + uint64_t reserved08[2]; + uint64_t guest_handle; + uint64_t gaddr; + uint64_t tweak[2]; + uint64_t reserved38[3]; } __attribute__((packed)) __attribute__((aligned(8))); /* @@ -144,42 +146,42 @@ struct uv_cb_unp { */ struct uv_cb_nodata { struct uv_cb_header header; - u64 reserved08[2]; - u64 handle; - u64 reserved20[4]; + uint64_t reserved08[2]; + uint64_t handle; + uint64_t reserved20[4]; } __attribute__((packed)) __attribute__((aligned(8))); struct uv_cb_share { struct uv_cb_header header; - u64 reserved08[3]; - u64 paddr; - u64 reserved28; + uint64_t reserved08[3]; + uint64_t paddr; + uint64_t reserved28; } __attribute__((packed)) __attribute__((aligned(8))); /* Convert to Secure */ struct uv_cb_cts { struct uv_cb_header header; - u64 reserved08[2]; - u64 guest_handle; - u64 gaddr; + uint64_t reserved08[2]; + uint64_t guest_handle; + uint64_t gaddr; } __attribute__((packed)) __attribute__((aligned(8))); /* Convert from Secure / Pin Page Shared */ struct uv_cb_cfs { struct uv_cb_header header; - u64 reserved08[2]; - u64 paddr; + uint64_t reserved08[2]; + uint64_t paddr; } __attribute__((packed)) __attribute__((aligned(8))); /* Set Secure Config Parameter */ struct uv_cb_ssc { struct uv_cb_header header; - u64 reserved08[2]; - u64 guest_handle; - u64 sec_header_origin; - u32 sec_header_len; - u32 reserved2c; - u64 reserved30[4]; + uint64_t reserved08[2]; + uint64_t guest_handle; + uint64_t sec_header_origin; + uint32_t sec_header_len; + uint32_t reserved2c; + uint64_t reserved30[4]; } __attribute__((packed)) __attribute__((aligned(8))); static inline int uv_call_once(unsigned long r1, unsigned long r2) @@ -211,7 +213,7 @@ static inline int uv_call(unsigned long r1, unsigned long r2) return cc; } -static inline int share(unsigned long addr, u16 cmd) +static inline int share(unsigned long addr, uint16_t cmd) { struct uv_cb_share uvcb = { .header.cmd = cmd, @@ -220,7 +222,7 @@ static inline int share(unsigned long addr, u16 cmd) }; int cc; - cc = uv_call(0, (u64)&uvcb); + cc = uv_call(0, (uint64_t)&uvcb); if (!cc && uvcb.header.rc == UVC_RC_EXECUTED) return 0; @@ -252,11 +254,11 @@ static inline int uv_remove_shared(unsigned long addr) struct uv_cb_cpu_set_state { struct uv_cb_header header; - u64 reserved08[2]; - u64 cpu_handle; - u8 reserved20[7]; - u8 state; - u64 reserved28[5]; + uint64_t reserved08[2]; + uint64_t cpu_handle; + uint8_t reserved20[7]; + uint8_t state; + uint64_t reserved28[5]; }; #define PV_CPU_STATE_OPR 1 -- 2.30.2