diff options
author | Tony Luck <tony.luck@intel.com> | 2020-03-10 15:18:02 -0700 |
---|---|---|
committer | Vinod Koul <vkoul@kernel.org> | 2020-03-11 15:08:52 +0530 |
commit | 7c4a4d088283e02cc04252e88dd08b5cdf54e70f (patch) | |
tree | a7274423fda8116ac09ddc993f4e7b984ba84d88 /include/uapi | |
parent | 26cf132de6f79c06025706ddc61e045d591d404d (diff) | |
download | linux-7c4a4d088283e02cc04252e88dd08b5cdf54e70f.tar.gz linux-7c4a4d088283e02cc04252e88dd08b5cdf54e70f.tar.bz2 linux-7c4a4d088283e02cc04252e88dd08b5cdf54e70f.zip |
dmaengine: idxd: Merge definition of dsa_batch_desc into dsa_hw_desc
We don't need a special structure just for batch descriptors. The
layout matches the general form for other descriptors.
Merge the desc_list_addr field into the union of other aliases for
the the third quadword in the structure.
Create a union to alias "xfer_size" with "desc_count".
Signed-off-by: Tony Luck <tony.luck@intel.com>
Acked-by: Dave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/158387868208.35922.5895104426944263789.stgit@djiang5-desk3.ch.intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'include/uapi')
-rw-r--r-- | include/uapi/linux/idxd.h | 21 |
1 files changed, 5 insertions, 16 deletions
diff --git a/include/uapi/linux/idxd.h b/include/uapi/linux/idxd.h index 849ef1515d04..1f412fbf561b 100644 --- a/include/uapi/linux/idxd.h +++ b/include/uapi/linux/idxd.h @@ -83,21 +83,6 @@ enum dsa_completion_status { #define DSA_COMP_STATUS_MASK 0x7f #define DSA_COMP_STATUS_WRITE 0x80 -struct dsa_batch_desc { - uint32_t pasid:20; - uint32_t rsvd:11; - uint32_t priv:1; - uint32_t flags:24; - uint32_t opcode:8; - uint64_t completion_addr; - uint64_t desc_list_addr; - uint64_t rsvd1; - uint32_t desc_count; - uint16_t interrupt_handle; - uint16_t rsvd2; - uint8_t rsvd3[24]; -} __attribute__((packed)); - struct dsa_hw_desc { uint32_t pasid:20; uint32_t rsvd:11; @@ -109,6 +94,7 @@ struct dsa_hw_desc { uint64_t src_addr; uint64_t rdback_addr; uint64_t pattern; + uint64_t desc_list_addr; }; union { uint64_t dst_addr; @@ -116,7 +102,10 @@ struct dsa_hw_desc { uint64_t src2_addr; uint64_t comp_pattern; }; - uint32_t xfer_size; + union { + uint32_t xfer_size; + uint32_t desc_count; + }; uint16_t int_handle; uint16_t rsvd1; union { |