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 <alejandro.lucero@netronome.com> Acked-by: John McNamara <john.mcnamara@intel.com>
This commit is contained in:
parent
2b84092427
commit
f105c2b5ba
@ -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.
|
||||
lspci should show that device bound to igb_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.
|
||||
|
||||
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**
|
||||
|
Loading…
x
Reference in New Issue
Block a user