ocf: update to version 20120127
[15.05/openwrt.git] / target / linux / generic / files / crypto / ocf / README
diff --git a/target/linux/generic/files/crypto/ocf/README b/target/linux/generic/files/crypto/ocf/README
deleted file mode 100644 (file)
index 88849dd..0000000
+++ /dev/null
@@ -1,246 +0,0 @@
-###########################
-README - ocf-linux-20100530
-###########################
-
-This README provides instructions for getting ocf-linux compiled and
-operating in a generic linux environment.  Other information on the project
-can be found at the home page:
-
-    http://ocf-linux.sourceforge.net/
-
-Embedded systems and applications requiring userspace acceleration will need
-to patch the kernel source to get full OCF support.  See "Adding OCF to
-linux source" below.  Otherwise the "OCF Quickstart" that follows is the
-easiest way to get started.
-
-If your goal is to accelerate Openswan on Ubuntu or CentOS,  you may find
-that the required binaries are already available on openswan.org:
-
-    ftp://ftp.openswan.org/ocf/
-    ftp://ftp.openswan.org/openswan/binaries/ubuntu/
-
-#####################################################
-OCF Quickstart for Ubuntu/Others (including Openswan)
-#####################################################
-
-This section provides instructions on how to quickly add kernel only support
-for OCF to a GNU/Linux system.  It is only suitable for in-kernel use such as
-Openswan MAST/KLIPS.
-
-If the target is an embedded system, or, userspace acceleration of
-applications such as OpenVPN and OpenSSL, the section below titled
-"Adding OCF to linux source" is more appropriate.
-
-Before building kernel only support for OCF ensure that the appropriate
-linux-headers package is installed:
-
-    cd ocf
-    make ocf_modules
-    sudo make ocf_install
-    OCF_DIR=`pwd`            # remember where OCF sources were built
-
-At this point the ocf, cryptosoft, ocfnull, hifn7751 and ocf-bench modules
-should have been built and installed.  The OCF installation can be tested
-with the following commands:
-
-    modprobe ocf
-    modprobe cryptosoft
-    modprobe ocf-bench
-    dmesg | tail -5
-
-The final modprobe of ocf-bench will fail,  this is intentional as ocf-bench
-is a short lived module that tests in-kernel performance of OCF.  If
-everything worked correctly the "dmesg | tail -5" should include a line
-like:
-
-    [  583.128741] OCF: 45133 requests of 1488 bytes in 251 jiffies (535.122 Mbps)
-
-This shows the in-kernel performance of OCF using the cryptosoft driver.
-For addition driver load options,  see "How to load the OCF modules" below.
-
-If the intention is to run an OCF accelerated Openswan (KLIPS/MAST) then use
-these steps to compile openswan downloaded from openswan.org (2.6.34 or later).
-
-    tar xf openswan-2.6.34.tar.gz
-    cd openswan-2.6.34
-    make programs
-    make KERNELSRC=/lib/modules/`uname -r`/build \
-        KBUILD_EXTRA_SYMBOLS=$OCF_DIR/Module.symvers \
-        MODULE_DEF_INCLUDE=`pwd`/packaging/ocf/config-all.hmodules \
-        MODULE_DEFCONFIG=`pwd`/packaging/ocf/defconfig \
-        module
-    sudo make KERNELSRC=/lib/modules/`uname -r`/build \
-        KBUILD_EXTRA_SYMBOLS=$OCF_DIR/Module.symvers \
-        MODULE_DEF_INCLUDE=`pwd`/packaging/ocf/config-all.hmodules \
-        MODULE_DEFCONFIG=`pwd`/packaging/ocf/defconfig \
-        install minstall
-
-The rest of this document is only required for more complex build
-requirements.
-
-##########################
-Adding OCF to linux source
-##########################
-
-It is recommended that OCF be built as modules as it increases the
-flexibility and ease of debugging the system.
-
-Ensure that the system has /dev/crypto for userspace access to OCF:
-
-    mknod /dev/crypto c 10 70
-
-Generate the kernel patches and apply the appropriate one.
-
-    cd ocf
-    make patch
-
-This will provide three files:
-
-    linux-2.4.*-ocf.patch
-    linux-2.6.*-ocf.patch
-    ocf-linux-base.patch
-
-If either of the first two patches applies to the targets kernel,  then one
-of the following as required:
-
-    cd linux-2.X.Y; patch -p1 < linux-2.4.*-ocf.patch
-    cd linux-2.6.Y; patch -p1 < linux-2.6.*-ocf.patch
-
-Otherwise,  locate the appropriate kernel patch in the patches directory and
-apply that as well as the ocf-linux-base.patch using '-p1'.
-
-When using a linux-2.4 system on a non-x86 platform,  the following may be
-required to build cryptosoft:
-
-    cp linux-2.X.x/include/asm-i386/kmap_types.h linux-2.X.x/include/asm-YYY
-
-When using cryptosoft, for simplicity, enable all the crypto support in the
-kernel except for the test driver.  Likewise for the OCF options.  Do not
-enable OCF crypto drivers for HW that is not present (for example the ixp4xx
-driver will not compile on non-Xscale systems).
-
-Make sure that cryptodev.h from the ocf directory is installed as
-crypto/cryptodev.h in an include directory that is used for building
-applications for the target platform.  For example on a host system that
-might be:
-
-    /usr/include/crypto/cryptodev.h
-
-Patch the openssl-0.9.8r code the openssl-0.9.8r.patch from the patches
-directory.  There are many older patch versions in the patches directory
-if required.
-
-The openssl patches provide the following functionality:
-
-    * enables --with-cryptodev for non BSD systems
-    * adds -cpu option to openssl speed for calculating CPU load under linux
-    * fixes null pointer in openssl speed multi thread output.
-    * fixes test keys to work with linux crypto's more stringent key checking.
-    * adds MD5/SHA acceleration (Ronen Shitrit), only enabled with the
-      --with-cryptodev-digests option
-    * fixes bug in engine code caching.
-
-Build the crypto-tools directory for the target to obtain a userspace
-testing tool call cryptotest.
-
-###########################
-How to load the OCF modules
-###########################
-
-First insert the base modules (cryptodev is optional,  it is only used
-for userspace acceleration):
-
-    modprobe ocf
-    modprobe cryptodev
-
-Load the software OCF driver with:
-
-    modprobe cryptosoft
-
-and zero or more of the OCF HW drivers with:
-
-    modprobe safe
-    modprobe hifn7751
-    modprobe ixp4xx
-    ...
-
-All the drivers take a debug option to enable verbose debug so that
-OCF operation may be observed via "dmesg" or the console.  For debug
-load the modules as:
-
-    modprobe ocf crypto_debug=1
-    modprobe cryptodev cryptodev_debug=1
-    modprobe cryptosoft swcr_debug=1
-
-More than one OCF crypto driver may be loaded but then there is no
-guarantee as to which will be used (other than a preference for HW
-drivers over SW drivers by most applications).
-
-It is also possible to enable debug at run time on linux-2.6 systems
-with the following:
-
-    echo 1 > /sys/module/ocf/parameters/crypto_debug
-    echo 1 > /sys/module/cryptodev/parameters/cryptodev_debug
-    echo 1 > /sys/module/cryptosoft/parameters/swcr_debug
-    echo 1 > /sys/module/hifn7751/parameters/hifn_debug
-    echo 1 > /sys/module/safe/parameters/safe_debug
-    echo 1 > /sys/module/ixp4xx/parameters/ixp_debug
-    ...
-
-The ocf-bench driver accepts the following parameters:
-
-    request_q_len - Maximum number of outstanding requests to OCF
-    request_num   - run for at least this many requests
-    request_size  - size of each request (multiple of 16 bytes recommended)
-    request_batch - enable OCF request batching
-    request_cbimm - enable OCF immediate callback on completion
-
-For example:
-
-    modprobe ocf-bench request_size=1024 request_cbimm=0
-
-#######################
-Testing the OCF support
-#######################
-
-run "cryptotest",  it should do a short test for a couple of
-des packets.  If it does everything is working.
-
-If this works,  then ssh will use the driver when invoked as:
-
-    ssh -c 3des username@host
-
-to see for sure that it is operating, enable debug as defined above.
-
-To get a better idea of performance run:
-
-    cryptotest 100 4096
-
-There are more options to cryptotest,  see the help.
-
-It is also possible to use openssl to test the speed of the crypto
-drivers.
-
-    openssl speed -evp des -engine cryptodev -elapsed
-    openssl speed -evp des3 -engine cryptodev -elapsed
-    openssl speed -evp aes128 -engine cryptodev -elapsed
-
-and multiple threads (10) with:
-
-    openssl speed -evp des -engine cryptodev -elapsed -multi 10
-    openssl speed -evp des3 -engine cryptodev -elapsed -multi 10
-    openssl speed -evp aes128 -engine cryptodev -elapsed -multi 10
-
-for public key testing you can try:
-
-    cryptokeytest
-    openssl speed -engine cryptodev rsa -elapsed
-    openssl speed -engine cryptodev dsa -elapsed
-
-
-#############################
-#
-# David McCullough
-# david_mccullough@mcafee.com
-#
-#############################