Commit 20e1e842 authored by Gustavo Zacarias's avatar Gustavo Zacarias Committed by Peter Korsgaard
Browse files

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: default avatarGustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: default avatarPeter Korsgaard <jacmet@sunsite.dk>
parent 80ebf129
Loading
Loading
Loading
Loading
+0 −12
Original line number Diff line number Diff line
@@ -23,18 +23,6 @@ config BR2_LINUX_KERNEL_EXT_XENOMAI_ADEOS_PATCH
	  Download it at http://download.gna.org/adeos/patches/v2.6/$(ARCH)/
	  and verify that your kernel version in buildroot matches.

# ocf-linux
config BR2_LINUX_KERNEL_EXT_OCF_LINUX
	bool "Open Cryptographic Framework (OCF)"
	select BR2_PACKAGE_OCF_LINUX
	help
	  OCF-Linux Kernel part.

	  Select this option to patch your kernel with OCF for
	  hardware-accelerated crypto support for available drivers.
	  Some libraries need to also have OCF enabled for them,
	  for example OpenSSL.

# RTAI
config BR2_LINUX_KERNEL_EXT_RTAI
       bool "RTAI Real-time patch"

linux/linux-ext-ocf-linux.mk

deleted100644 → 0
+0 −25
Original line number Diff line number Diff line
##################################################
# Linux OCF extension
#
# Patch the linux kernel with OCF
##################################################

ifeq ($(BR2_LINUX_KERNEL_EXT_OCF_LINUX),y)
LINUX_DEPENDENCIES += ocf-linux

# Prepare kernel patch
# The linux-3.2.1.patch is just the main inclusion, most of the code
# resides in the ocf/ subdir.
# It works for older kernel versions.
# Run tested from 2.6.38+ and build tested from 2.6.35+
define OCF_LINUX_PREPARE_KERNEL
	support/scripts/apply-patches.sh $(LINUX_DIR) \
		$(OCF_LINUX_DIR)/patches/ linux-3.2.1-ocf.patch ; \
	grep -q __mix_pool_bytes $(LINUX_DIR)/drivers/char/random.c && \
	$(SED) 's:wordcount\*4:&, NULL:' $(LINUX_DIR)/drivers/char/random.c ; \
	cp -rf $(OCF_LINUX_DIR)/ocf $(LINUX_DIR)/crypto/ocf ;
endef

LINUX_PRE_PATCH_HOOKS += OCF_LINUX_PREPARE_KERNEL

endif #BR2_LINUX_EXT_OCF_LINUX
+0 −1
Original line number Diff line number Diff line
@@ -394,7 +394,6 @@ source "package/libmhash/Config.in"
source "package/libnss/Config.in"
source "package/libsha1/Config.in"
source "package/nettle/Config.in"
source "package/ocf-linux/Config.in"
source "package/openssl/Config.in"
source "package/polarssl/Config.in"
endmenu

package/ocf-linux/Config.in

deleted100644 → 0
+0 −12
Original line number Diff line number Diff line
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/
+42 −0
Original line number Diff line number Diff line
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
Loading