Marvell Octeon NIC Accelerator Integration (dsR8MR3)

Story: 2010047
Task: 50026

Change-Id: I7964c91f1993e585fad6ad6fb5583376058ccbfb
Signed-off-by: Elisamara Aoki Goncalves <elisamaraaoki.goncalves@windriver.com>
This commit is contained in:
Elisamara Aoki Goncalves 2024-05-02 13:32:04 +00:00
parent 7d6847d59a
commit a8337304d4
3 changed files with 84 additions and 0 deletions

View File

@ -0,0 +1,75 @@
.. _marvell-octeon-nic-accelerator-support-0ca20e6fc2c9:
======================================
Marvell Octeon NIC Accelerator Support
======================================
Marvell supports Octeon line of SoCs to be used as a RAN |NIC| when configured
in Endpoint mode. Marvell developed PCI |SRIOV| |NIC| drivers for these
products. The |NIC| drivers on host create a netdev interface for PF device and
supports creating VFs. Octeon SoCs feature multiple ARM v9 cores along with
Ethernet, PCIe and baseband PHY (RAN). This enables users to offload L1
processing to the Octeon SoC.
To support this line of accelerator cards, the Marvell Octeon |SRIOV| PF and VF
host drivers have been integrated into |prod|.
Each PF and VF can be configured to run |NIC| functionality or RAN
functionality based on the operator's choice.
The drivers enable netdev communication between L2/L3 running on the host cpu
and L1 running on the accelerator.
.. note::
The devices are seen as a PCIe |SRIOV| capable PF device.
The drivers location:
- ``/lib/modules/5.10.0-6-rt-amd64/updates/octeon_ep``
- ``/lib/modules/5.10.0-6-amd64/updates/octeon_ep``
--------------------------------
Dell Open RAN Accelerator (DORA)
--------------------------------
The Dell Open RAN Accelerator (DORA) utilizes the OCTEON Fusion CNF95xx chipset
from Marvell and its design deviates from that of a standard network interface
card (NIC), which requires specialized configuration. Unlike conventional NICs,
the |DORA| requires the deployment of dedicated application software prior to
its operational functionality. This application software assumes responsibility
for:
- loading the octeon kernel module
- bringing up the |DORA| card on every boot
- making the VFs available as resources to Kubernetes
- specifying number of VFs
- bringing the |DORA| card down
- back up if a driver upgrade is desired
Any attempt to use the 'system' CLI to add ``pci-sriov`` VF interfaces will not
succeed as drivers are not being loaded by default at boot time, although it is
possible to configure it as a PCI passthrough PF interface. It is possible to
create VFs with raw linux commands once the drivers are loaded and the PF shows
up.
.. note::
Using sysinv to configure the card as a PCI passthrough interface should
not be used in production because it will break the next reboot, as the
kernel module is not loaded by default.
.. rubric:: Identify the DORA Hardware
.. code-block:: none
[sysadmin@controller-0 ~(keystone_admin)]$ lspci -mm | grep Cavium
51:00.0 "Network controller" "Cavium, Inc." "Device ba00" "Dell" "Device 0074"
51:00.1 "Network controller" "Cavium, Inc." "Device ef00" "Dell" "Device 0074"

View File

@ -351,6 +351,14 @@ N3000 and ACC100 replacement
hardware_acceleration_devices/fec-replacement-with-different-vendor-or-device-id-b1ab1440e15f
hardware_acceleration_devices/n3000-and-acc100-replacement-with-the-same-vendor-and-device-id-cccabcdc5d43
**************************************
Marvell Octeon NIC Accelerator Support
**************************************
.. toctree::
:maxdepth: 1
hardware_acceleration_devices/marvell-octeon-nic-accelerator-support-0ca20e6fc2c9
------------------------
Host hardware management

View File

@ -53,6 +53,7 @@
.. |DNS| replace:: :abbr:`DNS (Domain Name System)`
.. |DPDK| replace:: :abbr:`DPDK (Data Plane Development Kit)`
.. |DN| replace:: :abbr:`DN (Distinguished Name)`
.. |DORA| replace:: :abbr:`DORA (Dell Open RAN Accelerator)`
.. |DRBD| replace:: :abbr:`DRBD (Distributed Replicated Block Device)`
.. |DSCP| replace:: :abbr:`DSCP (Differentiated Services Code Point)`
.. |DVR| replace:: :abbr:`DVR (Distributed Virtual Router)`