Commit da8ecf81 authored by Krzysztof Karas's avatar Krzysztof Karas Committed by Konrad Sztyber
Browse files

lib/idxd: add descriptors for DIX generate



Add DIX generate descriptor and completion record.
Add a new supported opcode to spdk_internal/idxd.

Change-Id: I14bddfaaca2707c52a3e8e0fa416fa770ca0336d
Signed-off-by: default avatarKrzysztof Karas <krzysztof.karas@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24311


Community-CI: Mellanox Build Bot
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarShuhei Matsumoto <smatsumoto@nvidia.com>
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
parent 7afa4667
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -299,6 +299,15 @@ struct idxd_hw_desc {
			uint16_t	app_tag_mask;
			uint16_t	app_tag_seed;
		} dif_strip;
		struct {
			uint8_t		rsvd1;
			uint8_t		dest_flags;
			uint8_t		flags;
			uint8_t		rsvd2[13];
			uint32_t	ref_tag_seed;
			uint16_t	app_tag_mask;
			uint16_t	app_tag_seed;
		} dix_gen;
		uint8_t		op_specific[24];
	};
} __attribute((aligned(64)));
@@ -335,6 +344,12 @@ struct dsa_hw_comp_record {
			uint16_t	dest_app_tag_mask;
			uint16_t	dest_app_tag;
		} dif_upd_comp;
		struct {
			uint64_t	rsvd;
			uint32_t	dix_gen_ref_tag;
			uint16_t	dix_gen_app_tag_mask;
			uint16_t	dix_gen_app_tag;
		} dix_gen_comp;
		uint8_t		op_specific[16];
	};
};
+1 −0
Original line number Diff line number Diff line
@@ -34,6 +34,7 @@ enum dsa_opcode {
	IDXD_OPCODE_DIF_INS	= 19,
	IDXD_OPCODE_DIF_STRP	= 20,
	IDXD_OPCODE_DIF_UPDT	= 21,
	IDXD_OPCODE_DIX_GEN	= 23,
	IDXD_OPCODE_CFLUSH	= 32,
	IDXD_OPCODE_DECOMPRESS	= 66,
	IDXD_OPCODE_COMPRESS	= 67,