summaryrefslogtreecommitdiff
path: root/crypto/testmgr.c
diff options
context:
space:
mode:
authorKeith Busch <kbusch@kernel.org>2022-03-03 12:13:10 -0800
committerJens Axboe <axboe@kernel.dk>2022-03-07 12:48:35 -0700
commit547a998d5ae0edddfd2ca41a9b8b4175d0e1c12b (patch)
tree17ad83295d3798527a0525618b8e9a45b829f129 /crypto/testmgr.c
parent24eb1f589f4f6dcb1e6e676c4256cbc246b8ac39 (diff)
downloadlinux-crypto-547a998d5ae0edddfd2ca41a9b8b4175d0e1c12b.tar.gz
linux-crypto-547a998d5ae0edddfd2ca41a9b8b4175d0e1c12b.zip
crypto: add rocksoft 64b crc guard tag framework
Hardware specific features may be able to calculate a crc64, so provide a framework for drivers to register their implementation. If nothing is registered, fallback to the generic table lookup implementation. The implementation is modeled after the crct10dif equivalent. Signed-off-by: Keith Busch <kbusch@kernel.org> Link: https://lore.kernel.org/r/20220303201312.3255347-7-kbusch@kernel.org Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'crypto/testmgr.c')
-rw-r--r--crypto/testmgr.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/crypto/testmgr.c b/crypto/testmgr.c
index 5831d4bb..2e120eea 100644
--- a/crypto/testmgr.c
+++ b/crypto/testmgr.c
@@ -4527,6 +4527,13 @@ static const struct alg_test_desc alg_test_descs[] = {
.hash = __VECS(crc32c_tv_template)
}
}, {
+ .alg = "crc64-rocksoft",
+ .test = alg_test_hash,
+ .fips_allowed = 1,
+ .suite = {
+ .hash = __VECS(crc64_rocksoft_tv_template)
+ }
+ }, {
.alg = "crct10dif",
.test = alg_test_hash,
.fips_allowed = 1,