RE: [PATCH] driver: char: bfin_crc: CRC hardware accelerator driverfor BF60x family processors.

From: Zhang, Sonic
Date: Thu May 17 2012 - 06:55:18 EST


Hi Greg,

>-----Original Message-----
>From: Greg Kroah-Hartman [mailto:gregkh@xxxxxxxxxxxxxxxxxxx]
>Sent: Wednesday, May 16, 2012 8:13 PM
>To: Zhang, Sonic
>Cc: Arnd Bergmann; LKML; uclinux-dist-devel@xxxxxxxxxxxxxxxxxxxx
>Subject: Re: [PATCH] driver: char: bfin_crc: CRC hardware accelerator driver for
>BF60x family processors.
>
>On Wed, May 16, 2012 at 04:26:07PM +0800, sonic.zhang@xxxxxxxxxx wrote:
>> From: Sonic Zhang <sonic.zhang@xxxxxxxxxx>
>>
>> The CRC peripheral is a hardware block used to compute the CRC of the block
>> of data. This is based on a CRC32 engine which computes the CRC value of 32b
>> data words presented to it. For data words of < 32b in size, it is the
>> responsibility of the application to pack the data into 32b data units.
>>
>> This driver defines data strcture crc_info and 4 IOCTL interfaces for applciations.
>> 1) CRC Memory Scan
>> 2) CRC Memory Transfer
>> 3) CRC Data Verify
>> 4) CRC Data Fill
>>
>> Signed-off-by: Sonic Zhang <sonic.zhang@xxxxxxxxxx>
>> ---
>> drivers/char/Kconfig | 8 +
>> drivers/char/Makefile | 1 +
>> drivers/char/bfin_crc.c | 537
>+++++++++++++++++++++++++++++++++++++++++++++++
>> 3 files changed, 546 insertions(+), 0 deletions(-)
>> create mode 100644 drivers/char/bfin_crc.c
>
>Why is this a char driver, and not a crypto driver, using the existing
>crypto userspace api for things like this?
>

It looks only the CRC memory scan mode can be implemented as a crypto ahash driver. The other 3 functions are not supported in the crypto framework.
I will post a crypto driver for the CRC memory scan mode later.

Sonic


>> diff --git a/drivers/char/bfin_crc.c b/drivers/char/bfin_crc.c
>> new file mode 100644
>> index 0000000..3f7d1d8
>> --- /dev/null
>> +++ b/drivers/char/bfin_crc.c
>> @@ -0,0 +1,537 @@
>> +/*
>> + * Blackfin On-Chip hardware CRC Driver
>> + *
>> + * Copyright 2011 Analog Devices Inc.
>> + *
>> + * Licensed under the GPL-2 or later.
>
>Do you really mean "or later"? It's fine if you do, just checking.
>
>thanks,
>
>greg k-h


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/