[Accel-config] [PATCH v1 1/2] accel-config/test: Add op mask to check if an op is available
Rex Zhang <[email protected]> Wed, 23 Aug 2023 11:22:32 +0800
| Newsgroups | dev.linux.lists.accel-config |
|---|---|
| Message-ID | <[email protected]> |
Several operations were removed in IAA2.0 specification. In idxd-config, keep the related code about removed operations, define op mask for comparing against the /sys/bus/dsa/devices/iax1/op_cap to check if an operation is available or not. Whether to do the operation or not depends on the checking result. This commit is for defining the operation masks. Signed-off-by: Rex Zhang <[email protected]> --- test/iaa_user_test_runner.sh | 47 ++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/test/iaa_user_test_runner.sh b/test/iaa_user_test_runner.sh index c8f2686..2887fad 100755 --- a/test/iaa_user_test_runner.sh +++ b/test/iaa_user_test_runner.sh @@ -14,6 +14,53 @@ VENDOR_ID=`lspci -n -s ${DBDF} | awk -F ' ' '{print $NF}' | awk -F ':' '{print $ DEVICE_ID=`lspci -n -s ${DBDF} | awk -F ' ' '{print $NF}' | awk -F ':' '{print $2}'` VFIO_BINDED=0 +IAA_OPCODE_NOOP=0x0 +IAA_OPCODE_TRANSL_FETCH=0xa +IAA_OPCODE_DECRYPT=0x40 +IAA_OPCODE_ENCRYPT=0x41 +IAA_OPCODE_DECOMPRESS=0x42 +IAA_OPCODE_COMPRESS=0x43 +IAA_OPCODE_CRC64=0x44 +IAA_OPCODE_ZDECOMPRESS32=0x48 +IAA_OPCODE_ZDECOMPRESS16=0x49 +IAA_OPCODE_ZDECOMPRESS8=0x4a +IAA_OPCODE_ZCOMPRESS32=0x4c +IAA_OPCODE_ZCOMPRESS16=0x4d +IAA_OPCODE_ZCOMPRESS8=0x4e +IAA_OPCODE_SCAN=0x50 +IAA_OPCODE_SET_MEMBERSHIP=0x51 +IAA_OPCODE_EXTRACT=0x52 +IAA_OPCODE_SELECT=0x53 +IAA_OPCODE_RLE_BURST=0x54 +IAA_OPCODE_FIND_UNIQUE=0x55 +IAA_OPCODE_EXPAND=0x56 + +IAA_OPCODE_MASK_NOOP=$((1 << IAA_OPCODE_NOOP)) +IAA_OPCODE_MASK_TRANSL_FETCH=$((1 << IAA_OPCODE_TRANSL_FETCH)) +IAA_OPCODE_MASK_DECRYPT=$((1 << IAA_OPCODE_DECRYPT)) +IAA_OPCODE_MASK_ENCRYPT=$((1 << IAA_OPCODE_ENCRYPT)) +IAA_OPCODE_MASK_DECOMPRESS=$((1 << IAA_OPCODE_DECOMPRESS)) +IAA_OPCODE_MASK_COMPRESS=$((1 << IAA_OPCODE_COMPRESS)) +IAA_OPCODE_MASK_CRC64=$((1 << IAA_OPCODE_CRC64)) +IAA_OPCODE_MASK_ZDECOMPRESS32=$((1 << IAA_OPCODE_ZDECOMPRESS32)) +IAA_OPCODE_MASK_ZDECOMPRESS16=$((1 << IAA_OPCODE_ZDECOMPRESS16)) +IAA_OPCODE_MASK_ZDECOMPRESS8=$((1 << IAA_OPCODE_ZDECOMPRESS8)) +IAA_OPCODE_MASK_ZCOMPRESS32=$((1 << IAA_OPCODE_ZCOMPRESS32)) +IAA_OPCODE_MASK_ZCOMPRESS16=$((1 << IAA_OPCODE_ZCOMPRESS16)) +IAA_OPCODE_MASK_ZCOMPRESS8=$((1 << IAA_OPCODE_ZCOMPRESS8)) +IAA_OPCODE_MASK_SCAN=$((1 << IAA_OPCODE_SCAN)) +IAA_OPCODE_MASK_SET_MEMBERSHIP=$((1 << IAA_OPCODE_SET_MEMBERSHIP)) +IAA_OPCODE_MASK_EXTRACT=$((1 << IAA_OPCODE_EXTRACT)) +IAA_OPCODE_MASK_SELECT=$((1 << IAA_OPCODE_SELECT)) +IAA_OPCODE_MASK_RLE_BURST=$((1 << IAA_OPCODE_RLE_BURST)) +IAA_OPCODE_MASK_FIND_UNIQUE=$((1 << IAA_OPCODE_FIND_UNIQUE)) +IAA_OPCODE_MASK_EXPAND=$((1 << IAA_OPCODE_EXPAND)) + +OP_CAP0=`cat /sys/bus/dsa/devices/iax1/op_cap | awk -F ',' '{print $NF}'` +OP_CAP0="0x$OP_CAP0" +OP_CAP2=`cat /sys/bus/dsa/devices/iax1/op_cap | awk -F ',' '{print $(NF - 2)}'` +OP_CAP2="0x$OP_CAP2" + trap err_exit ERR [ ! -f "$IAATEST" ] && echo "fail: $LINENO" && exit 1 -- 2.25.1