dmaengine: idxd: Add descriptor definitions for 16 bytes of pattern in memory fill...
authorFenghua Yu <fenghua.yu@intel.com>
Fri, 3 Mar 2023 21:34:11 +0000 (13:34 -0800)
committerVinod Koul <vkoul@kernel.org>
Fri, 31 Mar 2023 11:55:25 +0000 (17:25 +0530)
The memory fill operation (0x04) can fill in memory with either 8 bytes
or 16 bytes of pattern. To fill in memory with 16 bytes of pattern, the
first 8 bytes are provided in pattern lower in bytes 16-23 and the next
8 bytes are in pattern upper in bytes 40-47 in the descriptor. Currently
only 8 bytes of pattern is enabled.

Add descriptor definitions for pattern lower and pattern upper so that
user can use 16 bytes of pattern to fill memory.

Signed-off-by: Fenghua Yu <fenghua.yu@intel.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Link: https://lore.kernel.org/r/20230303213413.3357431-2-fenghua.yu@intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
include/uapi/linux/idxd.h

index 1d553bedbdb515147b767479a06469ca7c048ef9..c43d7df5fc1508dc032f08453430ab7af2dfa9ab 100644 (file)
@@ -180,6 +180,7 @@ struct dsa_hw_desc {
                uint64_t        rdback_addr;
                uint64_t        pattern;
                uint64_t        desc_list_addr;
+               uint64_t        pattern_lower;
        };
        union {
                uint64_t        dst_addr;
@@ -244,6 +245,9 @@ struct dsa_hw_desc {
                        uint16_t        dest_app_tag_seed;
                };
 
+               /* Fill */
+               uint64_t        pattern_upper;
+
                uint8_t         op_specific[24];
        };
 } __attribute__((packed));