Patchwork [PATCHv2] cryptodev kernel module recipe

login
register
mail settings
Submitter Yashpal Dutta
Date Nov. 2, 2012, 10:15 p.m.
Message ID <1351894551-15670-1-git-send-email-yashpal.dutta@freescale.com>
Download mbox | patch
Permalink /patch/38771/
State New
Headers show

Comments

Yashpal Dutta - Nov. 2, 2012, 10:15 p.m.
This is a /dev/crypto device driver, equivalent to those in OpenBSD or FreeBSD.
The main idea is to access of existing ciphers in kernel space from userspace,
thus enabling re-use of a hardware implementation of a cipher.

Signed-off-by: Yashpal Dutta <yashpal.dutta@freescale.com>
---
 meta/recipes-kernel/cryptodev/cryptodev_1.5.bb     |   17 +++++++++++++
 .../cryptodev/files/makefile_fixup.patch           |   26 ++++++++++++++++++++
 2 files changed, 43 insertions(+), 0 deletions(-)
 create mode 100644 meta/recipes-kernel/cryptodev/cryptodev_1.5.bb
 create mode 100644 meta/recipes-kernel/cryptodev/files/makefile_fixup.patch
Saul Wold - Nov. 13, 2012, 10:09 p.m.
On 11/02/2012 03:15 PM, Yashpal Dutta wrote:
> This is a /dev/crypto device driver, equivalent to those in OpenBSD or FreeBSD.
> The main idea is to access of existing ciphers in kernel space from userspace,
> thus enabling re-use of a hardware implementation of a cipher.
>
> Signed-off-by: Yashpal Dutta <yashpal.dutta@freescale.com>
> ---
>   meta/recipes-kernel/cryptodev/cryptodev_1.5.bb     |   17 +++++++++++++
>   .../cryptodev/files/makefile_fixup.patch           |   26 ++++++++++++++++++++
>   2 files changed, 43 insertions(+), 0 deletions(-)
>   create mode 100644 meta/recipes-kernel/cryptodev/cryptodev_1.5.bb
>   create mode 100644 meta/recipes-kernel/cryptodev/files/makefile_fixup.patch
>
> diff --git a/meta/recipes-kernel/cryptodev/cryptodev_1.5.bb b/meta/recipes-kernel/cryptodev/cryptodev_1.5.bb
> new file mode 100644
> index 0000000..0696e2a
> --- /dev/null
> +++ b/meta/recipes-kernel/cryptodev/cryptodev_1.5.bb
> @@ -0,0 +1,17 @@
> +SECTION = "devel"
> +SUMMARY = "Linux Cryptodev KERNEL MODULE"
> +DESCRIPTION = "The Cryptodev package contains the kernel /dev/crypto module"
> +LICENSE = "GPLv2"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
> +RCONFLICTS_${PN} = "ocf-linux"
> +
> +inherit module
> +
> +SRCREV = "1c24a0aa996630518d47826a2e3fea129ea094c7"
> +
> +SRC_URI = "git://repo.or.cz/cryptodev-linux.git;protocol=git \
> +           file://makefile_fixup.patch"
> +
> +EXTRA_OEMAKE='KERNEL_DIR="${STAGING_KERNEL_DIR}" PREFIX="${D}"'
> +
> +S = "${WORKDIR}/git"
> diff --git a/meta/recipes-kernel/cryptodev/files/makefile_fixup.patch b/meta/recipes-kernel/cryptodev/files/makefile_fixup.patch
> new file mode 100644
> index 0000000..323aacd
> --- /dev/null
> +++ b/meta/recipes-kernel/cryptodev/files/makefile_fixup.patch

This file (patch) needs a patch header with Upstream-Status and 
Signed-off-by.

Thanks	
	Sau!

> @@ -0,0 +1,26 @@
> +diff --git a/Makefile b/Makefile
> +index 2be8825..b36d68c 100644
> +--- a/Makefile
> ++++ b/Makefile
> +@@ -1,6 +1,7 @@
> + KBUILD_CFLAGS += -I$(src)
> + KERNEL_DIR = /lib/modules/$(shell uname -r)/build
> + VERSION = 1.5
> ++PREFIX =
> +
> + cryptodev-objs = ioctl.o main.o cryptlib.o authenc.o zc.o util.o
> +
> +@@ -12,10 +13,10 @@ build: version.h
> + version.h: Makefile
> + 	@echo "#define VERSION \"$(VERSION)\"" > version.h
> +
> +-install:
> ++modules_install:
> + 	make -C $(KERNEL_DIR) SUBDIRS=`pwd` modules_install
> +-	@echo "Installing cryptodev.h in /usr/include/crypto ..."
> +-	@install -D crypto/cryptodev.h /usr/include/crypto/cryptodev.h
> ++	@echo "Installing cryptodev.h in $(PREFIX)/usr/include/crypto ..."
> ++	@install -D crypto/cryptodev.h $(PREFIX)/usr/include/crypto/cryptodev.h
> +
> + clean:
> + 	make -C $(KERNEL_DIR) SUBDIRS=`pwd` clean
>
Chris Larson - Nov. 13, 2012, 11:45 p.m.
On Fri, Nov 2, 2012 at 3:15 PM, Yashpal Dutta
<yashpal.dutta@freescale.com>wrote:

> This is a /dev/crypto device driver, equivalent to those in OpenBSD or
> FreeBSD.
> The main idea is to access of existing ciphers in kernel space from
> userspace,
> thus enabling re-use of a hardware implementation of a cipher.
>
> Signed-off-by: Yashpal Dutta <yashpal.dutta@freescale.com>
>

I would think that patches which add recipes to oe-core would do more than
describe what it is, but also provide justification for its inclusion in
oe-core vs some other layer. If that was already covered in a previous
thread, that's fine, but I wanted to make sure it was explicit.
McClintock Matthew-B29882 - Nov. 15, 2012, 5:19 a.m.
On Tue, Nov 13, 2012 at 5:45 PM, Chris Larson <clarson@kergoth.com> wrote:
>
>
> On Fri, Nov 2, 2012 at 3:15 PM, Yashpal Dutta <yashpal.dutta@freescale.com>
> wrote:
>>
>> This is a /dev/crypto device driver, equivalent to those in OpenBSD or
>> FreeBSD.
>> The main idea is to access of existing ciphers in kernel space from
>> userspace,
>> thus enabling re-use of a hardware implementation of a cipher.
>>
>> Signed-off-by: Yashpal Dutta <yashpal.dutta@freescale.com>
>
>
> I would think that patches which add recipes to oe-core would do more than
> describe what it is, but also provide justification for its inclusion in
> oe-core vs some other layer. If that was already covered in a previous
> thread, that's fine, but I wanted to make sure it was explicit.

Honestly, I'm not really sure why it should be in OE-core other than
that ocf-linux which is semi-equivalent is here also. Maybe we should
look at a meta-crypto layer or just keep this our own layer. Not sure,
opening for discussion here.

-M
Zhenhua Luo - Nov. 21, 2012, 7:12 a.m.
Wrong operation, please ignore. 


Best Regards,

Zhenhua


> -----Original Message-----
> From: yocto-bounces@linux.freescale.net [mailto:yocto-
> bounces@linux.freescale.net] On Behalf Of Luo Zhenhua-B19537
> Sent: Wednesday, November 21, 2012 3:32 PM
> To: yocto@linux.freescale.net; openembedded-core@lists.openembedded.org
> Cc: Dutta Yashpal-B05456
> Subject: [Yocto] [meta-fsl-ppc denzil v2] cryptodev kernel module recipe
> 
> From: Yashpal Dutta <yashpal.dutta@freescale.com>
> 
> This is a /dev/crypto device driver, equivalent to those in OpenBSD or
> FreeBSD.
> The main idea is to access of existing ciphers in kernel space from
> userspace, thus enabling re-use of a hardware implementation of a cipher.
> 
> Signed-off-by: Yashpal Dutta <yashpal.dutta@freescale.com>
> 
> ---
> meta/recipes-kernel/cryptodev/cryptodev_1.5.bb     |   17 +++++++++++++
>  .../cryptodev/files/makefile_fixup.patch           |   26
> ++++++++++++++++++++
>  2 files changed, 43 insertions(+), 0 deletions(-)  create mode 100644
> meta/recipes-kernel/cryptodev/cryptodev_1.5.bb
>  create mode 100644 meta/recipes-
> kernel/cryptodev/files/makefile_fixup.patch
> 
> diff --git a/meta/recipes-kernel/cryptodev/cryptodev_1.5.bb
> b/meta/recipes-kernel/cryptodev/cryptodev_1.5.bb
> new file mode 100644
> index 0000000..0696e2a
> --- /dev/null
> +++ b/meta/recipes-kernel/cryptodev/cryptodev_1.5.bb
> @@ -0,0 +1,17 @@
> +SECTION = "devel"
> +SUMMARY = "Linux Cryptodev KERNEL MODULE"
> +DESCRIPTION = "The Cryptodev package contains the kernel /dev/crypto
> module"
> +LICENSE = "GPLv2"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
> +RCONFLICTS_${PN} = "ocf-linux"
> +
> +inherit module
> +
> +SRCREV = "1c24a0aa996630518d47826a2e3fea129ea094c7"
> +
> +SRC_URI = "git://repo.or.cz/cryptodev-linux.git;protocol=git \
> +           file://makefile_fixup.patch"
> +
> +EXTRA_OEMAKE='KERNEL_DIR="${STAGING_KERNEL_DIR}" PREFIX="${D}"'
> +
> +S = "${WORKDIR}/git"
> diff --git a/meta/recipes-kernel/cryptodev/files/makefile_fixup.patch
> b/meta/recipes-kernel/cryptodev/files/makefile_fixup.patch
> new file mode 100644
> index 0000000..323aacd
> --- /dev/null
> +++ b/meta/recipes-kernel/cryptodev/files/makefile_fixup.patch
> @@ -0,0 +1,26 @@
> +diff --git a/Makefile b/Makefile
> +index 2be8825..b36d68c 100644
> +--- a/Makefile
> ++++ b/Makefile
> +@@ -1,6 +1,7 @@
> + KBUILD_CFLAGS += -I$(src)
> + KERNEL_DIR = /lib/modules/$(shell uname -r)/build  VERSION = 1.5
> ++PREFIX =
> +
> + cryptodev-objs = ioctl.o main.o cryptlib.o authenc.o zc.o util.o
> +
> +@@ -12,10 +13,10 @@ build: version.h
> + version.h: Makefile
> + 	@echo "#define VERSION \"$(VERSION)\"" > version.h
> +
> +-install:
> ++modules_install:
> + 	make -C $(KERNEL_DIR) SUBDIRS=`pwd` modules_install
> +-	@echo "Installing cryptodev.h in /usr/include/crypto ..."
> +-	@install -D crypto/cryptodev.h /usr/include/crypto/cryptodev.h
> ++	@echo "Installing cryptodev.h in $(PREFIX)/usr/include/crypto ..."
> ++	@install -D crypto/cryptodev.h
> ++$(PREFIX)/usr/include/crypto/cryptodev.h
> +
> + clean:
> + 	make -C $(KERNEL_DIR) SUBDIRS=`pwd` clean
> _______________________________________________
> Yocto mailing list
> Yocto@linux.freescale.net
> http://linux.freescale.net/mailman/listinfo/yocto

Patch

diff --git a/meta/recipes-kernel/cryptodev/cryptodev_1.5.bb b/meta/recipes-kernel/cryptodev/cryptodev_1.5.bb
new file mode 100644
index 0000000..0696e2a
--- /dev/null
+++ b/meta/recipes-kernel/cryptodev/cryptodev_1.5.bb
@@ -0,0 +1,17 @@ 
+SECTION = "devel"
+SUMMARY = "Linux Cryptodev KERNEL MODULE"
+DESCRIPTION = "The Cryptodev package contains the kernel /dev/crypto module"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+RCONFLICTS_${PN} = "ocf-linux"
+
+inherit module
+
+SRCREV = "1c24a0aa996630518d47826a2e3fea129ea094c7"
+
+SRC_URI = "git://repo.or.cz/cryptodev-linux.git;protocol=git \
+           file://makefile_fixup.patch"
+
+EXTRA_OEMAKE='KERNEL_DIR="${STAGING_KERNEL_DIR}" PREFIX="${D}"'
+
+S = "${WORKDIR}/git"
diff --git a/meta/recipes-kernel/cryptodev/files/makefile_fixup.patch b/meta/recipes-kernel/cryptodev/files/makefile_fixup.patch
new file mode 100644
index 0000000..323aacd
--- /dev/null
+++ b/meta/recipes-kernel/cryptodev/files/makefile_fixup.patch
@@ -0,0 +1,26 @@ 
+diff --git a/Makefile b/Makefile
+index 2be8825..b36d68c 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,6 +1,7 @@
+ KBUILD_CFLAGS += -I$(src)
+ KERNEL_DIR = /lib/modules/$(shell uname -r)/build
+ VERSION = 1.5
++PREFIX =
+ 
+ cryptodev-objs = ioctl.o main.o cryptlib.o authenc.o zc.o util.o
+ 
+@@ -12,10 +13,10 @@ build: version.h
+ version.h: Makefile
+ 	@echo "#define VERSION \"$(VERSION)\"" > version.h
+ 
+-install:
++modules_install:
+ 	make -C $(KERNEL_DIR) SUBDIRS=`pwd` modules_install
+-	@echo "Installing cryptodev.h in /usr/include/crypto ..."
+-	@install -D crypto/cryptodev.h /usr/include/crypto/cryptodev.h
++	@echo "Installing cryptodev.h in $(PREFIX)/usr/include/crypto ..."
++	@install -D crypto/cryptodev.h $(PREFIX)/usr/include/crypto/cryptodev.h
+ 
+ clean:
+ 	make -C $(KERNEL_DIR) SUBDIRS=`pwd` clean