> -----Original Message----- > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Declan Doherty > Sent: Friday, November 13, 2015 6:58 PM > To: dev at dpdk.org > Subject: [dpdk-dev] [PATCH v7 07/10] qat_crypto_pmd: Addition of a new QAT > DPDK PMD. > > This patch adds a PMD for the Intel Quick Assist Technology DH895xxC > hardware accelerator.
> +Crypto Device Drivers > +==================================== > + > +|today| > + > + > +**Contents** > + It is best to omit the |today| since it isn't generally useful. Also, **Content** is added automatically in the PDF out and not really required in Html output so that can be omitted as well. > +Quick Assist Crypto Poll Mode Driver > +==================================== > + > +The QAT PMD provides poll mode crypto driver support for **Intel > +QuickAssist Technology DH895xxC** hardware accelerator. QAT PMD has > +current been tested on Fedora 21 64-bit with gcc and on the 4.3 > kernel.org Typo: current(ly) but it is probably clearer without that word. > +Features > +-------- > +QAT PMD has support for: > + > +Cipher algorithms: > +* RTE_CRYPTO_SYM_CIPHER_AES128_CBC > +* RTE_CRYPTO_SYM_CIPHER_AES256_CBC > +* RTE_CRYPTO_SYM_CIPHER_AES512_CBC The list needs to be separated from the previous line with a blank line to render correctly. It would also be worth rending the algorithms as fixed width text. Cipher algorithms: * ``RTE_CRYPTO_SYM_CIPHER_AES128_CBC`` * ``RTE_CRYPTO_SYM_CIPHER_AES256_CBC`` * ``RTE_CRYPTO_SYM_CIPHER_AES512_CBC`` Same comments for next paragraph. > +Installation > +------------ > +To use the DPDK QAT PMD an SRIOV-enabled QAT kernel driver is required. > +The VF devices exposed by this driver will be used by QAT PMD. > + > +If you are running on kernel 4.3 or greater, see instructions for > "Installation using > +kernel.org QAT driver". If you're on a kernel earlier than 4.3, see > "Installation using the > +01.org QAT driver". The section references don't match the section names. These could also be links like this: If you are running on kernel 4.3 or greater, see instructions for `Installation using kernel.org driver`_ below. If you're on a kernel earlier than 4.3, see `Installation using 01.org QAT driver`_. > +Compiling the 01.org driver - notes: > +If using a later kernel and the build fails with an error relating to > strict_stroul not being available patch the following file: > + > +.. code-block:: console You could "use code-block:: diff" here to render the patch nicely in the docs. > +If build fails due to missing header files you may need to do following: > + * sudo yum install zlib-devel > + * sudo yum install openssl-devel Probably should be rendered as a code block with :: > + > +Installation using kernel.org driver > +------------------------------------ > + > +Assuming you are running on at least a 4.3 kernel, you can use the stock > kernel.org QAT > +driver to start the QAT hardware. > + > +Steps below assume > + * running DPDK on a platform with one DH895xCC device > + * on a kernel at least version 4.3 > + > +In BIOS ensure that SRIOV is enabled and VT-d is disabled. > + > +Ensure the QAT driver is loaded on your system, by executing: > + lsmod | grep qat The commands in this section should be rendered with :: Ensure the QAT driver is loaded on your system, by executing:: lsmod | grep qat > +Binding the available VFs to the DPDK UIO driver > +------------------------------------------------ > +The unbind command below assumes bdfs of 03:01.00-03:04.07, if yours are > different adjust the unbind command below. > + > +Make available to DPDK > + > +.. code-block:: console > + > + cd $(RTE_SDK) (See http://dpdk.org/doc/quick-start to install DPDK) > + "modprobe uio" > + "insmod ./build/kmod/igb_uio.ko" > + "for device in $(seq 1 4); do for fn in $(seq 0 7); do echo -n > 0000:03:0${device}.${fn} > > /sys/bus/pci/devices/0000\:03\:0${device}.${fn}/driver/unbind;done ;done" > + "echo "8086 0443" > /sys/bus/pci/drivers/igb_uio/new_id" > + This is too long to be rendered in PDF. Something like the following would work better in the docs while being functionally the same: The unbind command below assumes ``bdfs`` of ``03:01.00-03:04.07``, if yours are different adjust the unbind command below:: cd $RTE_SDK modprobe uio insmod ./build/kmod/igb_uio.ko for device in $(seq 1 4); do \ for fn in $(seq 0 7); do \ echo -n 0000:03:0${device}.${fn} > \ /sys/bus/pci/devices/0000\:03\:0${device}.${fn}/driver/unbind; \ done; \ done echo "8086 0443" > /sys/bus/pci/drivers/igb_uio/new_id You can use ``lspci -vvd:443`` to confirm that all devices are now in use by igb_uio kernel driver. John. --