summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCristian Stoica <cristian.stoica@freescale.com>2015-01-07 17:55:02 +0800
committerZhenhua Luo <zhenhua.luo@freescale.com>2015-01-08 18:18:00 +0800
commit74d198a543d636747931c1265883dcf49624b02e (patch)
treeda6601ef7689d8a278789de9cfbb313e139b9654
parente5e0b7344822a3fd9f24d5253ae828d3acbca09c (diff)
downloadmeta-fsl-ppc-74d198a543d636747931c1265883dcf49624b02e.tar.gz
cryptodev: disable RSA_KEYGEN if pkc-host installed
Currently pkc-host does not support RSA_KEYGEN. When pkc-host installed, RSA keygen operations should be avoided. Introduce DISTRO_FEATURE "c29x_pkc". To install pkc-host, this feature should be enabled. Then cryptodev checks it to disable RSA_KEYGEN. this can be done in conf/local.conf: DISTRO_FEATURES_append = " c29x_pkc" Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
-rw-r--r--recipes-kernel/cryptodev/cryptodev-fsl/0001-don-t-advertise-RSA-keygen.patch32
-rw-r--r--recipes-kernel/cryptodev/cryptodev-module_1.6.bbappend4
-rw-r--r--recipes-kernel/pkc-host/pkc-host_git.bb5
3 files changed, 41 insertions, 0 deletions
diff --git a/recipes-kernel/cryptodev/cryptodev-fsl/0001-don-t-advertise-RSA-keygen.patch b/recipes-kernel/cryptodev/cryptodev-fsl/0001-don-t-advertise-RSA-keygen.patch
new file mode 100644
index 0000000..3d7c608
--- /dev/null
+++ b/recipes-kernel/cryptodev/cryptodev-fsl/0001-don-t-advertise-RSA-keygen.patch
@@ -0,0 +1,32 @@
1From b6e2a3747e3cffdf3cc515b0ce35d6bcdcb051c5 Mon Sep 17 00:00:00 2001
2From: Cristian Stoica <cristian.stoica@freescale.com>
3Date: Tue, 9 Dec 2014 16:41:25 +0200
4Subject: [PATCH] don't advertise RSA keygen
5
6This is supposed to avoid RSA keygen operations when they are not
7available. Since no testing can be done, the patch should be applied
8selectively (for example when offloading through pkc driver on C293)
9
10Change-Id: I60765f46fd7a39053d42e075d2ec71b032b2ed8a
11Signed-off-by: Cristian Stoica <cristian.stoica@freescale.com>
12---
13 ioctl.c | 3 +--
14 1 file changed, 1 insertion(+), 2 deletions(-)
15
16diff --git a/ioctl.c b/ioctl.c
17index e907167..3239093 100644
18--- a/ioctl.c
19+++ b/ioctl.c
20@@ -961,8 +961,7 @@ cryptodev_ioctl(struct file *filp, unsigned int cmd, unsigned long arg_)
21 case CIOCASYMFEAT:
22 return put_user(CRF_MOD_EXP_CRT | CRF_MOD_EXP | CRF_DSA_SIGN |
23 CRF_DSA_VERIFY | CRF_DH_COMPUTE_KEY |
24- CRF_DSA_GENERATE_KEY | CRF_DH_GENERATE_KEY |
25- CRF_RSA_GENERATE_KEY, p);
26+ CRF_DSA_GENERATE_KEY | CRF_DH_GENERATE_KEY, p);
27 case CRIOGET:
28 fd = clonefd(filp);
29 ret = put_user(fd, p);
30--
312.2.0
32
diff --git a/recipes-kernel/cryptodev/cryptodev-module_1.6.bbappend b/recipes-kernel/cryptodev/cryptodev-module_1.6.bbappend
index 345a09d..2bf012c 100644
--- a/recipes-kernel/cryptodev/cryptodev-module_1.6.bbappend
+++ b/recipes-kernel/cryptodev/cryptodev-module_1.6.bbappend
@@ -6,3 +6,7 @@ do_install_append_qoriq-ppc () {
6 rm -fr ${D}/usr 6 rm -fr ${D}/usr
7} 7}
8 8
9# Currently pkc-host does not support RSA_KEYGEN, remove this
10# if it is fixed.
11SRC_URI_append_qoriq-ppc = "${@base_contains('DISTRO_FEATURES', 'c29x_pkc', ' file://0001-don-t-advertise-RSA-keygen.patch', '', d)}"
12
diff --git a/recipes-kernel/pkc-host/pkc-host_git.bb b/recipes-kernel/pkc-host/pkc-host_git.bb
index 2e579c1..2d5e316 100644
--- a/recipes-kernel/pkc-host/pkc-host_git.bb
+++ b/recipes-kernel/pkc-host/pkc-host_git.bb
@@ -4,6 +4,11 @@ LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://Makefile;endline=30;md5=6a26ed8e76a8ea2e019c525369ed0f03" 4LIC_FILES_CHKSUM = "file://Makefile;endline=30;md5=6a26ed8e76a8ea2e019c525369ed0f03"
5 5
6inherit module qoriq_build_64bit_kernel 6inherit module qoriq_build_64bit_kernel
7RDEPENDS_${PN} += "cryptodev-module"
8
9# Currently pkc-host does not support RSA_KEYGEN, remove this
10# if it is fixed.
11REQUIRED_DISTRO_FEATURES = "c29x_pkc"
7 12
8SRC_URI = "git://git.freescale.com/ppc/sdk/pkc-host.git;nobranch=1" 13SRC_URI = "git://git.freescale.com/ppc/sdk/pkc-host.git;nobranch=1"
9SRCREV = "cae512c94e2a26cc6b0d6393d307cdea2d7282c9" 14SRCREV = "cae512c94e2a26cc6b0d6393d307cdea2d7282c9"