spec: Marvell Octeon RAN Accelerator Integration

First draft of the spec for Marvell Octeon RAN Accelerator Integration
into StarlingX.

Story: 2010047
Task: 47393

Signed-off-by: Veerasenareddy Burru <vburru@marvell.com>
Change-Id: Ic6c93f333b26402f100a278324afd23ee07b21bd
This commit is contained in:
Veerasenareddy Burru 2022-06-30 13:05:57 -07:00
parent d3421cc962
commit 6bc2de1ced
3 changed files with 166 additions and 16 deletions

View File

@ -1,8 +0,0 @@
.. placeholder:
===========
Placeholder
===========
This file is a placeholder and should be deleted when the first spec is moved
to this directory.

View File

@ -1,8 +0,0 @@
.. placeholder:
===========
Placeholder
===========
This file is a placeholder and should be deleted when the first spec is moved
to this directory.

View File

@ -0,0 +1,166 @@
..
Copyright (c) 2022 Marvell International Ltd.
..
==========================================
Marvell Octeon RAN Accelerator Integration
==========================================
Storyboard:
https://storyboard.openstack.org/#!/story/2010047
Marvell supports Octeon line of SoCs to be used as a basic NIC or
RAN Accelerator, when configured in Endpoint mode. Marvell developed PCI SR-IOV
NIC drivers (PF and VF) 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 Octeon SoC.
This specification describes what needs to be done to intergrate
Marvell's PCIe NIC drivers (PF and VF) into StarlingX.
Problem description
===================
Currently, StarlingX does not include support for Marvell RAN Accelerator card.
This specification aims at integrating the Marvell PCIe NIC drivers into
StarlingX platform to enable support for Marvell RAN accelerator cards.
Use Cases
---------
To enable users to deploy Octeon as a basic NIC or RAN Accelerator on a
StarlingX cloud installation.
Proposed change
===============
This change adds following new drivers and tools:
#. SRIOV PF and VF drivers. These drivers enable netdev communication between l2/l3 running on the host cpu and l1 running on the accelerator
#. CNI plugin support for Marvell RAN Accelerator cards
#. Integrate NIC firmware update tool
Alternatives
------------
For PF and VF drivers, there are no alternatives for this as the device drivers
are the only way of initializing and operating these devices.
For CNI plugin, we will not be adding CNI plugin support from scratch.
We will be leveraging the existing CNI plugin to enable suppoort for
Marvell devices too.
For NIC firmware update tool, the tool will be able to update firmware on
Marvell RAN Accelerator from host through PCIe interface, without needing
any drivers to be loaded. There is no alternate method for this.
Data model impact
-----------------
No data model impact expected.
REST API impact
---------------
This change will not add or change any REST APIs.
Security impact
---------------
None
Other end user impact
---------------------
User will be invoking the firmware update tool from host to update boot image,
kernel or root filesystem on the Marvell RAN Accelerator card.
Performance Impact
------------------
None; These drivers will only schedule work queue task to handle periodic
heartbeat messages from Octeon card, and this is not CPU intensive.
Other deployer impact
---------------------
None
Developer impact
----------------
None
Upgrade impact
--------------
None
Implementation
==============
Assignee(s)
-----------
Primary assignee:
Veerasenareddy Burru
Other contributors:
Abhijit Ayrekar
Sathesh Edara
Satananda Burla
Repos Impacted
--------------
starlingx/config
starlingx/fault
starlingx/integ
starlingx/kernel
Work Items
----------
* Integrate the kernel SRIOV PF driver
* Integrate the kernel SRIOV VF driver
* Integrate NIC firmware update tool
* Add CNI plugin support for Marvell RAN Accelerator NIC
Dependencies
============
None
Testing
=======
* Testing will be performed on Marvell RAN Accelerator hardware.
* Testing will include basic PF NIC functionality, SRIOV VF creation,
VF NIC functionality.
* Unit tests will be provided on how to test the L1/L2 communication.
Documentation Impact
====================
* End User guide need to be updated on how to run the marvell NIC firmware
update tool.
References
==========
The below product brief describes the family of Octeon CNF95XX in 5G RAN environment.
https://www.marvell.com/content/dam/marvell/en/public-collateral/embedded-processors/marvell-infrastructure-processors-octeon-fusion-cnf95xx-product-brief.pdf
History
=======
.. list-table:: Revisions
:header-rows: 1
* - Release Name
- Description
* - 1
- Introduced