From 5908f3ed6dc209e5c824e63afda7545805f75a7e Mon Sep 17 00:00:00 2001 From: Dave Jiang Date: Fri, 7 Mar 2025 13:55:34 -0700 Subject: cxl: Add support to handle user feature commands for get feature Add helper function to parse the user data from fwctl RPC ioctl and send the parsed input parameters to cxl_get_feature() call. Link: https://patch.msgid.link/r/20250307205648.1021626-5-dave.jiang@intel.com Reviewed-by: Jonathan Cameron Reviewed-by: Dan Williams Reviewed-by: Li Ming Signed-off-by: Dave Jiang Signed-off-by: Jason Gunthorpe --- include/uapi/fwctl/cxl.h | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/uapi/fwctl/cxl.h b/include/uapi/fwctl/cxl.h index 4bbfd7727526..f589bfb77426 100644 --- a/include/uapi/fwctl/cxl.h +++ b/include/uapi/fwctl/cxl.h @@ -18,6 +18,7 @@ * @op_size: Size of input payload. * @reserved1: Reserved. Must be 0s. * @get_sup_feats_in: Get Supported Features input + * @get_feat_in: Get Feature input */ struct fwctl_rpc_cxl { __struct_group(fwctl_rpc_cxl_hdr, hdr, /* no attrs */, @@ -26,7 +27,10 @@ struct fwctl_rpc_cxl { __u32 op_size; __u32 reserved1; ); - struct cxl_mbox_get_sup_feats_in get_sup_feats_in; + union { + struct cxl_mbox_get_sup_feats_in get_sup_feats_in; + struct cxl_mbox_get_feat_in get_feat_in; + }; }; /** @@ -34,13 +38,17 @@ struct fwctl_rpc_cxl { * @size: Size of the output payload * @retval: Return value from device * @get_sup_feats_out: Get Supported Features output + * @payload: raw byte stream of payload */ struct fwctl_rpc_cxl_out { __struct_group(fwctl_rpc_cxl_out_hdr, hdr, /* no attrs */, __u32 size; __u32 retval; ); - struct cxl_mbox_get_sup_feats_out get_sup_feats_out; + union { + struct cxl_mbox_get_sup_feats_out get_sup_feats_out; + __DECLARE_FLEX_ARRAY(__u8, payload); + }; }; #endif -- cgit v1.2.3