2010-12-08 21:43:03

by Kent Borg

[permalink] [raw]
Subject: Crypto Hardware Drivers?

Is this the right place to ask questions about writing a Linux device
driver to make some crypto hardware on an ARM SoC work under the Linux
crypto API?

I have some hardware documentation that I don't yet know whether I can
talk about (I know, if I can't then the driver will have difficulty
being be GPL, and if it isn't an open license, it won't work...).

I have some sample code for the hardware that is an incomplete and
obsolete Linux module.
I can see source code examples for things like the Padlock, IXP4xx
hardware, etc.
I have never touched any Linux kernel crypto code before this project.
(I have done some stuff in userland, so the fact of crypto doesn't scare

At the moment I am trying to understand things like the parameter to
crypto_register_alg(), how that is different from crypto_register_ahash()...

And for a DMA case how data moves and who owns the memory.

Stuff like that...

Yes, the sources and Google are my friends, and
Documentation/crypto/api-intro.txt has a very promising title but
doesn't say terribly much inside.

Are there any obvious key resources I should know about? (Any general
pointers would be appreciated, too.)



2010-12-13 17:43:28

by Tobias Karnat

[permalink] [raw]
Subject: Re: Crypto Hardware Drivers?


In case it is based on TI OMAP, there are already drivers available:

OMAP SHA1/MD5 driver:

OMAP2/3 AES HW accelerator driver:

However the OMAP's are supposed to also support DES/3DES acceleration,
in case my guess was right, do you can think of writing a driver for it?


2010-12-13 17:53:35

by Kent Borg

[permalink] [raw]
Subject: Re: Crypto Hardware Drivers?

Tobias Karnat wrote:
> In case it is based on TI OMAP, there are already drivers available:

No, unfortunately, it isn't.

-kb, the Kent who has looked through the existing crypto drivers to
learn how they work, and who would have loved to have found one that
matched his hardware.