ocf-linux: remove extension and build out of tree

Remove the OCF linux kernel extension instead opting to build ocf-linux
modules out of tree.
This is easier for users since no kernel config tweaking is required.
On the downside the OCF drivers can't be used, but then all of the
kernel crypto drivers are available to users via cryptosoft which is
preferred.
Also remove it from the menu to utilize a virtual.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
Gustavo Zacarias
2013-04-27 10:09:44 +00:00
committed by Peter Korsgaard
parent 80ebf12906
commit 20e1e84272
6 changed files with 53 additions and 55 deletions

View File

@@ -1,12 +0,0 @@
config BR2_PACKAGE_OCF_LINUX
bool "ocf-linux"
help
OCF-Linux is a Linux port of the OpenBSD/FreeBSD Cryptographic
Framework (OCF). This port aims to bring full asynchronous HW/SW
crypto acceleration to the Linux kernel and applications
running under Linux.
You need to enable the OCF linux kernel extension or provide
a prepatched kernel to make this option useful.
http://ocf-linux.sourceforge.net/

View File

@@ -0,0 +1,42 @@
Remove the OCF linux kernel extension instead opting to build ocf-linux
modules out of tree.
This is easier for users since no kernel config tweaking is required.
On the downside the OCF drivers can't be used, but then all of the
kernel crypto drivers are available to users via cryptosoft which is
preferred.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
diff -Nura ocf-linux-20120127.orig/ocf/Makefile ocf-linux-20120127/ocf/Makefile
--- ocf-linux-20120127.orig/ocf/Makefile 2013-04-27 09:27:04.413911866 -0300
+++ ocf-linux-20120127/ocf/Makefile 2013-04-27 09:27:31.131775576 -0300
@@ -2,6 +2,7 @@
-include $(ROOTDIR)/modules/.config
OCF_OBJS = crypto.o criov.o
+KDIR ?= /lib/modules/$(shell uname -r)/build
ifdef CONFIG_OCF_RANDOMHARVEST
OCF_OBJS += random.o
@@ -78,20 +79,13 @@
#
ocf_make:
- make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m
- make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_CRYPTOSOFT=m
- -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_BENCH=m
- -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_OCFNULL=m
- -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_HIFN=m
+ make -C $(KDIR) M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_CRYPTOSOFT=m CONFIG_OCF_BENCH=m CONFIG_OCF_OCFNULL=m
ocf_modules:
$(MAKE) ocf_make OCF_TARGET=modules
ocf_install:
$(MAKE) ocf_make OCF_TARGET="modules modules_install"
- depmod
- mkdir -p /usr/include/crypto
- cp cryptodev.h /usr/include/crypto/.
#
# generate full kernel patches for 2.4 and 2.6 kernels to make patching

View File

@@ -6,16 +6,22 @@
OCF_LINUX_VERSION = 20120127
OCF_LINUX_SITE = http://downloads.sourceforge.net/project/ocf-linux/ocf-linux/$(OCF_LINUX_VERSION)
OCF_LINUX_DEPENDENCIES = linux
OCF_LINUX_INSTALL_STAGING = YES
define OCF_LINUX_BUILD_CMDS
$(MAKE) -C $(@D)/ocf $(LINUX_MAKE_FLAGS) KDIR=$(LINUX_DIR) \
ocf_modules
endef
define OCF_LINUX_INSTALL_TARGET_CMDS
$(MAKE) -C $(@D)/ocf $(LINUX_MAKE_FLAGS) KDIR=$(LINUX_DIR) \
ocf_install
endef
define OCF_LINUX_INSTALL_STAGING_CMDS
$(INSTALL) -D -m 644 $(@D)/ocf/cryptodev.h \
$(STAGING_DIR)/usr/include/crypto/cryptodev.h
endef
define OCF_LINUX_INSTALL_TARGET_CMDS
$(INSTALL) -D -m 644 $(@D)/ocf/cryptodev.h \
$(TARGET_DIR)/usr/include/crypto/cryptodev.h
endef
$(eval $(generic-package))