670d60dc91
Newer kernels had a slight change in the random number API so the OCF patchset requires a slight tweak to build and run properly. Affected kernels are, per series: >=3.0.41, >=3.2.29, >=3.4.9, >=3.5.2 and any newer version. The fix is applied by detecting the API change rather than guessing the kernel version. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
26 lines
871 B
Makefile
26 lines
871 B
Makefile
##################################################
|
|
# 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
|