diff options
| author | Dave Jiang <dave.jiang@intel.com> | 2025-03-07 23:55:34 +0300 |
|---|---|---|
| committer | Jason Gunthorpe <jgg@nvidia.com> | 2025-03-17 20:41:37 +0300 |
| commit | 5908f3ed6dc209e5c824e63afda7545805f75a7e (patch) | |
| tree | 18fda1194ec52854971708225143169a9b9307a7 /include | |
| parent | 4d1c09cef2c244bd19467c016a3e56ba28ecc59d (diff) | |
| download | linux-5908f3ed6dc209e5c824e63afda7545805f75a7e.tar.xz | |
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 <Jonathan.Cameron@huawei.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Reviewed-by: Li Ming <ming.li@zohomail.com>
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Diffstat (limited to 'include')
| -rw-r--r-- | include/uapi/fwctl/cxl.h | 12 |
1 files changed, 10 insertions, 2 deletions
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 |
