[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <87v8dzdz4e.fsf@kamlesh.i-did-not-set--mail-host-address--so-tickle-me>
Date: Tue, 1 Aug 2023 12:32:09 +0530
From: Kamlesh Gurudasani <kamlesh@...com>
To: Ard Biesheuvel <ardb@...nel.org>
CC: Herbert Xu <herbert@...dor.apana.org.au>,
"David S. Miller" <davem@...emloft.net>,
Rob Herring <robh+dt@...nel.org>,
"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>,
"Menon, Nishanth" <nm@...com>,
"Raghavendra, Vignesh" <vigneshr@...com>,
Tero Kristo <kristo@...nel.org>,
"Catalin Marinas" <catalin.marinas@....com>,
Will Deacon <will@...nel.org>,
"linux-crypto@...r.kernel.org" <linux-crypto@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [EXTERNAL] Re: [EXTERNAL] Re: [PATCH 0/5] Add support for Texas
Instruments MCRC64 engine
Ard Biesheuvel <ardb@...nel.org> writes:
> On Tue, 1 Aug 2023 at 08:22, Kamlesh Gurudasani <kamlesh@...com> wrote:
>>
>> Ard Biesheuvel <ardb@...nel.org> writes:
>>
>> > On Sun, 30 Jul 2023 at 20:56, Kamlesh Gurudasani <kamlesh@...com> wrote:
>> >>
>> >> Add support for MCRC64 engine to calculate 64-bit CRC in Full-CPU mode
>> >>
>> >> MCRC64 engine calculates 64-bit cyclic redundancy checks (CRC)
>> >> according to the ISO 3309 standard.
>> >>
>> >> Generator polynomial: x^64 + x^4 + x^3 + x + 1
>> >> Polynomial value: 0x000000000000001b
>> >>
>> >
>> > How will this code be used? WIthout a user of the crc64-iso crypto API
>> > algorithm, there is no point in having a driver that implements it.
>>
>> Thanks for the review.
>>
>> MCRC64 will be used to check the integrity of memory blocks.
>> On TI K3 SOCs, users can use MCRC64 to accelerate the integrity check.
>>
>
> Where is the implementation of this logic? Does it use the shash/ahash API?
>
> If so, it should be part of this series.
We have implemented user-space application to utilize crc64-iso using below kernel module
algif_hash: User-space interface for hash algorithms
https://gist.github.com/ti-kamlesh/73abfcc1a33318bb3b199d36b6209e59
>
>
>> >
>> > Also, *if* such a user exists, we'd need to have a generic C
>> > implementation as well - we don't add new algorithms unless they can
>> > be enabled on all platforms and architectures.
>>
>> If it is must, will implement generic C code.
>>
>> >
>> >
>> >> Tested with
>> >>
>> >> and tcrypt,
>> >> sudo modprobe tcrypt mode=329 sec=1
>> >>
>> >> Signed-off-by: Kamlesh Gurudasani <kamlesh@...com>
>> >> ---
>> >> Kamlesh Gurudasani (5):
>> >> crypto: crc64 - add crc64-iso test vectors
>> >> dt-bindings: crypto: Add binding for TI MCRC64 driver
>> >> crypto: ti - add driver for MCRC64 engine
>> >> arm64: dts: ti: k3-am62: Add dt node, cbass_main ranges for MCRC64
>> >> arm64: defconfig: enable MCRC module
>> >>
>> >> Documentation/devicetree/bindings/crypto/ti,mcrc64.yaml | 42 +++++++
>> >> MAINTAINERS | 7 ++
>> >> arch/arm64/boot/dts/ti/k3-am62-main.dtsi | 7 ++
>> >> arch/arm64/boot/dts/ti/k3-am62.dtsi | 1 +
>> >> arch/arm64/configs/defconfig | 2 +
>> >> crypto/tcrypt.c | 5 +
>> >> crypto/testmgr.c | 7 ++
>> >> crypto/testmgr.h | 401 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>> >> drivers/crypto/Kconfig | 1 +
>> >> drivers/crypto/Makefile | 1 +
>> >> drivers/crypto/ti/Kconfig | 10 ++
>> >> drivers/crypto/ti/Makefile | 2 +
>> >> drivers/crypto/ti/mcrc64.c | 360 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>> >> 13 files changed, 846 insertions(+)
>> >> ---
>> >> base-commit: d7b3af5a77e8d8da28f435f313e069aea5bcf172
>> >> change-id: 20230719-mcrc-upstream-7ae9a75cab37
>> >>
>> >> Best regards,
>> >> --
>> >> Kamlesh Gurudasani <kamlesh@...com>
>> >>
Powered by blists - more mailing lists