[dpdk-dev] [PATCH v2 00/32] add support for baseband phy
Jerin Jacob
jerinjacobk at gmail.com
Mon Jun 21 10:43:50 CEST 2021
On Tue, Jun 15, 2021 at 4:33 PM Tomasz Duszynski <tduszynski at marvell.com> wrote:
>
> This series adds initial support for baseband PHY available on SOCs
> belonging to Fusion family. BPHY is a hardware block comprising
> accelerators and DSPs specifically tailored for 5G/LTE inline usecases.
>
> This series introduces two rawdev PMDs along with low level common code.
>
> CGX/RPM PMD allows one to configure Ethernet I/O interfaces attached to
> BPHY via standard enqueue/dequeue operations.
>
> BPHY PMD provides an out-of-band access to PCI device BARs and a set of
> experimental APIs allowing one to setup custom IRQs handlers. This
> functionality is backed by kernel module using ioctl() mechanism. Series
> has nothing to do with 5G/LTE baseband protocol processing.
This series looks good to me.
Feel free to add my reviewed by for the series after fix the following
1) Typo
diff --git a/doc/guides/rawdevs/cnxk_bphy.rst b/doc/guides/rawdevs/cnxk_bphy.rst
-``CNXK_BPHY_CGX_MSG_TYPE_INTLBK_DISABLE``. Former will activate
internal loobback while the latter
+``CNXK_BPHY_CGX_MSG_TYPE_INTLBK_DISABLE``. Former will activate
internal loopback while the latter
2) checkpatch
WARNING:LONG_LINE: line length of 85 exceeds 80 columns
#88: FILE: drivers/common/cnxk/roc_bphy_cgx.c:77:
+ if (FIELD_GET(SCR0_ETH_EVT_STS_S_EVT_TYPE, *scr0) ==
ETH_EVT_ASYNC &&
3) In the release notes, the following items can be removed.
+ Added new Baseband phy PMD which provides means for configuring
baseband hardware via
+ standard rawdev enq/deq operations. Baseband phy is a hardware
subsystem accelerating
+ 5G/LTE related tasks.
+
+ Both BPHY and BPHY CGX/RPM drivers are related hence kept together
to ease maintenance.
>
> v2:
> - change some errors to more relevant ones (-EINVAL/-ENODEV)
> - fix MAINTAINERS styling issues
> - fix dpdk-devbind.py
> - fix meson.build styling issues
> - fix warning related to possibly uninitialized scr0 variable
> - fix warning releated to unused function
> - improve documentation
> - improve enums items naming
> - spread documentation across relevant patches
>
> Tomasz Duszynski (28):
> common/cnxk: add bphy cgx/rpm initialization and cleanup
> common/cnxk: support for communication with atf
> common/cnxk: support for getting link information
> common/cnxk: support for changing internal loopback
> common/cnxk: support for changing ptp mode
> common/cnxk: support for setting link mode
> common/cnxk: support for changing link state
> common/cnxk: support for lmac start/stop
> raw/cnxk_bphy: add bphy cgx/rpm skeleton driver
> raw/cnxk_bphy: support for reading queue configuration
> raw/cnxk_bphy: support for reading queue count
> raw/cnxk_bphy: support for enqueue operation
> raw/cnxk_bphy: support for dequeue operation
> raw/cnxk_bphy: support for performing selftest
> common/cnxk: support for device init and fini
> common/cnxk: support for baseband PHY irq setup
> common/cnxk: support for checking irq availability
> common/cnxk: support for retrieving irq stack
> common/cnxk: support for removing irq stack
> common/cnxk: support for setting bphy irq handler
> common/cnxk: support for clearing bphy irq handler
> common/cnxk: support for registering bphy irq
> raw/cnxk_bphy: add baseband PHY skeleton driver
> raw/cnxk_bphy: support for reading bphy queue configuration
> raw/cnxk_bphy: support for reading bphy queue count
> raw/cnxk_bphy: support for bphy enqueue operation
> raw/cnxk_bphy: support for bphy dequeue operation
> raw/cnxk_bphy: support for interrupt init and cleanup
> raw/cnxk_bphy: support for reading number of bphy irqs
> raw/cnxk_bphy: support for retrieving bphy device memory
> raw/cnxk_bphy: support for registering bphy irq handlers
> raw/cnxk_bphy: support for bphy selftest
>
> MAINTAINERS | 7 +-
> doc/guides/rawdevs/cnxk_bphy.rst | 154 ++++++++
> doc/guides/rawdevs/index.rst | 1 +
> doc/guides/rel_notes/release_21_08.rst | 13 +
> drivers/common/cnxk/meson.build | 3 +
> drivers/common/cnxk/roc_api.h | 7 +
> drivers/common/cnxk/roc_bphy.c | 40 ++
> drivers/common/cnxk/roc_bphy.h | 17 +
> drivers/common/cnxk/roc_bphy_cgx.c | 396 +++++++++++++++++++
> drivers/common/cnxk/roc_bphy_cgx.h | 120 ++++++
> drivers/common/cnxk/roc_bphy_cgx_priv.h | 131 +++++++
> drivers/common/cnxk/roc_bphy_irq.c | 422 +++++++++++++++++++++
> drivers/common/cnxk/roc_bphy_irq.h | 49 +++
> drivers/common/cnxk/roc_idev.c | 1 +
> drivers/common/cnxk/roc_idev_priv.h | 2 +
> drivers/common/cnxk/roc_io.h | 9 +
> drivers/common/cnxk/roc_io_generic.h | 5 +
> drivers/common/cnxk/roc_priv.h | 3 +
> drivers/common/cnxk/version.map | 22 ++
> drivers/raw/cnxk_bphy/cnxk_bphy.c | 329 ++++++++++++++++
> drivers/raw/cnxk_bphy/cnxk_bphy_cgx.c | 321 ++++++++++++++++
> drivers/raw/cnxk_bphy/cnxk_bphy_cgx.h | 10 +
> drivers/raw/cnxk_bphy/cnxk_bphy_cgx_test.c | 206 ++++++++++
> drivers/raw/cnxk_bphy/cnxk_bphy_irq.c | 100 +++++
> drivers/raw/cnxk_bphy/cnxk_bphy_irq.h | 41 ++
> drivers/raw/cnxk_bphy/meson.build | 12 +
> drivers/raw/cnxk_bphy/rte_pmd_bphy.h | 233 ++++++++++++
> drivers/raw/cnxk_bphy/version.map | 3 +
> drivers/raw/meson.build | 1 +
> usertools/dpdk-devbind.py | 6 +-
> 30 files changed, 2662 insertions(+), 2 deletions(-)
> create mode 100644 doc/guides/rawdevs/cnxk_bphy.rst
> create mode 100644 drivers/common/cnxk/roc_bphy.c
> create mode 100644 drivers/common/cnxk/roc_bphy.h
> create mode 100644 drivers/common/cnxk/roc_bphy_cgx.c
> create mode 100644 drivers/common/cnxk/roc_bphy_cgx.h
> create mode 100644 drivers/common/cnxk/roc_bphy_cgx_priv.h
> create mode 100644 drivers/common/cnxk/roc_bphy_irq.c
> create mode 100644 drivers/common/cnxk/roc_bphy_irq.h
> create mode 100644 drivers/raw/cnxk_bphy/cnxk_bphy.c
> create mode 100644 drivers/raw/cnxk_bphy/cnxk_bphy_cgx.c
> create mode 100644 drivers/raw/cnxk_bphy/cnxk_bphy_cgx.h
> create mode 100644 drivers/raw/cnxk_bphy/cnxk_bphy_cgx_test.c
> create mode 100644 drivers/raw/cnxk_bphy/cnxk_bphy_irq.c
> create mode 100644 drivers/raw/cnxk_bphy/cnxk_bphy_irq.h
> create mode 100644 drivers/raw/cnxk_bphy/meson.build
> create mode 100644 drivers/raw/cnxk_bphy/rte_pmd_bphy.h
> create mode 100644 drivers/raw/cnxk_bphy/version.map
>
> --
> 2.25.1
>
More information about the dev
mailing list