From f105c2b5ba12e5e3001e4afc0880895fed6ab4cf Mon Sep 17 00:00:00 2001 From: Alejandro Lucero Date: Tue, 26 Apr 2016 12:36:41 +0100 Subject: [PATCH] doc: update UIO module in nfp guide Removing dependency on nfp_uio kernel module. The igb_uio kernel modules can be used instead. Fixes: 80bc1752f16e ("nfp: add guide") Signed-off-by: Alejandro Lucero Acked-by: John McNamara --- doc/guides/nics/nfp.rst | 47 ++++++++++++++--------------------------- 1 file changed, 16 insertions(+), 31 deletions(-) diff --git a/doc/guides/nics/nfp.rst b/doc/guides/nics/nfp.rst index dfc368368c..e4ebc712db 100644 --- a/doc/guides/nics/nfp.rst +++ b/doc/guides/nics/nfp.rst @@ -61,9 +61,8 @@ instructions. DPDK runs in userspace and PMDs uses the Linux kernel UIO interface to allow access to physical devices from userspace. The NFP PMD requires -a separate UIO driver, **nfp_uio**, to perform correct -initialization. This driver is part of Netronome´s BSP and it is -equivalent to Intel's igb_uio driver. +the **igb_uio** UIO driver, available with DPDK, to perform correct +initialization. Building the software --------------------- @@ -201,27 +200,18 @@ Using the NFP PMD is not different to using other PMDs. Usual steps are: The module should now be listed by the lsmod command. -#. **To install the nfp_uio kernel module (manually):** This module supports - NFP-6xxx devices through the UIO interface. - - This module is part of Netronome´s BSP and it should be available when the - BSP is installed. +#. **To install the igb_uio kernel module (manually):** This module is part + of DPDK sources and configured by default (CONFIG_RTE_EAL_IGB_UIO=y). .. code-block:: console - modprobe nfp_uio.ko + modprobe igb_uio.ko The module should now be listed by the lsmod command. - Depending on which NFP modules are loaded, nfp_uio may be automatically - bound to the NFP PCI devices by the system. Otherwise the binding needs - to be done explicitly. This is the case when nfp_netvf, the Linux kernel - driver for NFP VFs, was loaded when VFs were created. As described later - in this document this configuration may also be performed using scripts - provided by the Netronome´s BSP. - - First the device needs to be unbound, for example from the nfp_netvf - driver: + Depending on which NFP modules are loaded, it could be necessary to + detach NFP devices from the nfp_netvf module. If this is the case the + device needs to be unbound, for example: .. code-block:: console @@ -232,30 +222,25 @@ Using the NFP PMD is not different to using other PMDs. Usual steps are: The output of lspci should now show that 0000:03:08.0 is not bound to any driver. - The next step is to add the NFP PCI ID to the NFP UIO driver: + The next step is to add the NFP PCI ID to the IGB UIO driver: .. code-block:: console - echo 19ee 6003 > /sys/bus/pci/drivers/nfp_uio/new_id + echo 19ee 6003 > /sys/bus/pci/drivers/igb_uio/new_id - And then to bind the device to the nfp_uio driver: + And then to bind the device to the igb_uio driver: .. code-block:: console - echo 0000:03:08.0 > /sys/bus/pci/drivers/nfp_uio/bind + echo 0000:03:08.0 > /sys/bus/pci/drivers/igb_uio/bind lspci -d19ee: -k - lspci should show that device bound to nfp_uio driver. - -#. **Using tools from Netronome´s BSP to install and bind modules:** DPDK provides - scripts which are useful for installing the UIO modules and for binding the - right device to those modules avoiding doing so manually. However, these scripts - have not support for Netronome´s UIO driver. Along with drivers, the BSP installs - those DPDK scripts slightly modified with support for Netronome´s UIO driver. + lspci should show that device bound to igb_uio driver. - Those specific scripts can be found in Netronome´s BSP installation directory. - Refer to BSP documentation for more information. +#. **Using scripts to install and bind modules:** DPDK provides scripts which are + useful for installing the UIO modules and for binding the right device to those + modules avoiding doing so manually: * **setup.sh** * **dpdk_nic_bind.py** -- 2.20.1