From mboxrd@z Thu Jan 1 00:00:00 1970 From: marex@denx.de (Marek Vasut) Date: Wed, 23 Jul 2014 21:38:35 +0200 Subject: [PATCH 3/3] crypto: Add Allwinner Security System crypto accelerator In-Reply-To: <53D0045C.6090605@gmail.com> References: <1400771396-9686-1-git-send-email-clabbe.montjoie@gmail.com> <201407231751.02050.marex@denx.de> <53D0045C.6090605@gmail.com> Message-ID: <201407232138.35268.marex@denx.de> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Wednesday, July 23, 2014 at 08:52:12 PM, Corentin LABBE wrote: > Le 23/07/2014 17:51, Marek Vasut a ?crit : > > On Wednesday, July 23, 2014 at 04:13:09 PM, Herbert Xu wrote: > >> On Wed, Jul 23, 2014 at 04:07:20PM +0200, Marek Vasut wrote: > >>> On Wednesday, July 23, 2014 at 03:57:35 PM, Herbert Xu wrote: > >>>> On Sat, May 24, 2014 at 02:00:03PM +0200, Marek Vasut wrote: > >>>>>> + } > >>>>>> +#endif > >>>>>> + > >>>>>> +#ifdef CONFIG_CRYPTO_DEV_SUNXI_SS_MD5 > >>>>>> + err = crypto_register_shash(&sunxi_md5_alg); > >>>>> > >>>>> Do not use shash for such device. This is clearly and ahash (and > >>>>> async in general) device. The rule of a thumb here is that you use > >>>>> sync algos only for devices which have dedicated instructions for > >>>>> computing the transformation. For devices which are attached to some > >>>>> kind of bus, you use async algos (ahash etc). > >>>> > >>>> I'm sorry that I didn't catch this earlier but there is no such > >>>> rule. > >>>> > >>>> Unless you need the async interface you should stick to the sync > >>>> interfaces for the sake of simplicity. > >>>> > >>>> We have a number of existing drivers that are synchronous but > >>>> using the async interface. They should either be converted > >>>> over to the sync interface or made interrupt-driven if possible. > >>> > >>> Sure, but this device is interrupt driven and uses DMA to feed the > >>> crypto engine, therefore async, right ? > >> > >> If it's interrupt-driven, then yes it would certainly make sense to > >> be async. But all I see is polling in the latest posting, was the > >> first version different? > > > > I stand corrected then, sorry. > > > > Is it possible to use DMA to feed the crypto accelerator, Corentin? > > > > Best regards, > > Marek Vasut > > Yes, DMA is possible and will be implemented soon. > So if I have well understood, I keep using async interface. Yeah, in this case, using DMA and async interface combo is the way to go. Best regards, Marek Vasut