mbox series

[v11,0/8] baseband: add NXP LA12xx driver

Message ID 20211017065331.25488-1-nipun.gupta@nxp.com (mailing list archive)
Headers
Series baseband: add NXP LA12xx driver |

Message

Nipun Gupta Oct. 17, 2021, 6:53 a.m. UTC
  From: Nipun Gupta <nipun.gupta@nxp.com>

This series introduces the BBDEV LA12xx poll mode driver (PMD) to support
an implementation for offloading High Phy processing functions like
LDPC Encode / Decode 5GNR wireless acceleration function, using PCI based
LA12xx Software defined radio.

Please check the documentation patch for more info.

The driver currently implements basic feature to offload only the 5G LDPC
encode/decode.

A new capability has been added to check if the driver can support the
input data in little/big endian byte order.

v2: add test case changes
v3: fix 32 bit compilation
v4: capability for network byte order, doc patch merged inline.
v5: add llr_size and llr_decimals, removed LLR compression flag,
    update testbbdev to handle endianness, rebased on top of 20.08
v6: added BE as device info instead of capability, updated test
    to have 2 codeblocks
v7: fixed checkpatch errors
v8: remove additional test vectors, update reverse_op function name,
    make be_support param as bool, other minor changes in la12xx driver
v9: add little endianness capability as well (patch by Nicolas Chautru),
    fix 32 bit (i386) compilation, fix get of nb_segs, add endianness
    info in testbbdev doc.
v10: use default RTE_BIG_ENDIAN/RTE_LITTLE_ENDIAN defined, add
     data_endianness info for BBDEV null device
v11: split la12xx doc in separate patches and fixed some nits

Hemant Agrawal (5):
  baseband/la12xx: add devargs for max queues
  baseband/la12xx: add support for multiple modems
  baseband/la12xx: add queue and modem config support
  baseband/la12xx: add enqueue and dequeue support
  app/bbdev: enable la12xx for bbdev

Nicolas Chautru (1):
  bbdev: add device info related to data endianness

Nipun Gupta (2):
  baseband: introduce NXP LA12xx driver
  app/bbdev: handle endianness of test data

 MAINTAINERS                                   |   10 +
 app/test-bbdev/meson.build                    |    3 +
 app/test-bbdev/test_bbdev_perf.c              |   43 +
 doc/guides/bbdevs/features/la12xx.ini         |   13 +
 doc/guides/bbdevs/index.rst                   |    1 +
 doc/guides/bbdevs/la12xx.rst                  |  124 ++
 doc/guides/rel_notes/release_21_11.rst        |    6 +
 doc/guides/tools/testbbdev.rst                |    3 +
 drivers/baseband/acc100/rte_acc100_pmd.c      |    1 +
 .../fpga_5gnr_fec/rte_fpga_5gnr_fec.c         |    1 +
 drivers/baseband/fpga_lte_fec/fpga_lte_fec.c  |    1 +
 drivers/baseband/la12xx/bbdev_la12xx.c        | 1104 +++++++++++++++++
 drivers/baseband/la12xx/bbdev_la12xx.h        |   51 +
 drivers/baseband/la12xx/bbdev_la12xx_ipc.h    |  244 ++++
 .../baseband/la12xx/bbdev_la12xx_pmd_logs.h   |   28 +
 drivers/baseband/la12xx/meson.build           |    6 +
 drivers/baseband/la12xx/version.map           |    3 +
 drivers/baseband/meson.build                  |    1 +
 drivers/baseband/null/bbdev_null.c            |    6 +
 .../baseband/turbo_sw/bbdev_turbo_software.c  |    1 +
 lib/bbdev/rte_bbdev.h                         |    4 +
 21 files changed, 1654 insertions(+)
 create mode 100644 doc/guides/bbdevs/features/la12xx.ini
 create mode 100644 doc/guides/bbdevs/la12xx.rst
 create mode 100644 drivers/baseband/la12xx/bbdev_la12xx.c
 create mode 100644 drivers/baseband/la12xx/bbdev_la12xx.h
 create mode 100644 drivers/baseband/la12xx/bbdev_la12xx_ipc.h
 create mode 100644 drivers/baseband/la12xx/bbdev_la12xx_pmd_logs.h
 create mode 100644 drivers/baseband/la12xx/meson.build
 create mode 100644 drivers/baseband/la12xx/version.map
  

Comments

Akhil Goyal Oct. 18, 2021, 3:23 p.m. UTC | #1
> From: Nipun Gupta <nipun.gupta@nxp.com>
> 
> This series introduces the BBDEV LA12xx poll mode driver (PMD) to support
> an implementation for offloading High Phy processing functions like
> LDPC Encode / Decode 5GNR wireless acceleration function, using PCI based
> LA12xx Software defined radio.
> 
> Please check the documentation patch for more info.
> 
> The driver currently implements basic feature to offload only the 5G LDPC
> encode/decode.
> 
> A new capability has been added to check if the driver can support the
> input data in little/big endian byte order.
> 
> v2: add test case changes
> v3: fix 32 bit compilation
> v4: capability for network byte order, doc patch merged inline.
> v5: add llr_size and llr_decimals, removed LLR compression flag,
>     update testbbdev to handle endianness, rebased on top of 20.08
> v6: added BE as device info instead of capability, updated test
>     to have 2 codeblocks
> v7: fixed checkpatch errors
> v8: remove additional test vectors, update reverse_op function name,
>     make be_support param as bool, other minor changes in la12xx driver
> v9: add little endianness capability as well (patch by Nicolas Chautru),
>     fix 32 bit (i386) compilation, fix get of nb_segs, add endianness
>     info in testbbdev doc.
> v10: use default RTE_BIG_ENDIAN/RTE_LITTLE_ENDIAN defined, add
>      data_endianness info for BBDEV null device
> v11: split la12xx doc in separate patches and fixed some nits
> 
Acked-by: Akhil Goyal <gakhil@marvell.com>
Release notes are updated
Applied to dpdk-next-crypto

I believe Nicolas is out, but he has reviewed the patches and the patches look good.
If I get the Ack by Wednesday, I will update the patches before they are pulled on main.
  
Chautru, Nicolas Oct. 18, 2021, 6:08 p.m. UTC | #2
Hi Akhil, Nipin, 

I do ack the serie formally. Thanks for the updates and welcome to the new bbdev pmd!

Acked-by: Nicolas Chautru <nicolas.chautru@intel.com

> -----Original Message-----
> From: Akhil Goyal <gakhil@marvell.com>
> Sent: Monday, October 18, 2021 8:23 AM
> To: nipun.gupta@nxp.com; dev@dpdk.org; Chautru, Nicolas
> <nicolas.chautru@intel.com>
> Cc: david.marchand@redhat.com; hemant.agrawal@nxp.com
> Subject: RE: [EXT] [PATCH v11 0/8] baseband: add NXP LA12xx driver
> 
> > From: Nipun Gupta <nipun.gupta@nxp.com>
> >
> > This series introduces the BBDEV LA12xx poll mode driver (PMD) to
> > support an implementation for offloading High Phy processing functions
> > like LDPC Encode / Decode 5GNR wireless acceleration function, using
> > PCI based LA12xx Software defined radio.
> >
> > Please check the documentation patch for more info.
> >
> > The driver currently implements basic feature to offload only the 5G
> > LDPC encode/decode.
> >
> > A new capability has been added to check if the driver can support the
> > input data in little/big endian byte order.
> >
> > v2: add test case changes
> > v3: fix 32 bit compilation
> > v4: capability for network byte order, doc patch merged inline.
> > v5: add llr_size and llr_decimals, removed LLR compression flag,
> >     update testbbdev to handle endianness, rebased on top of 20.08
> > v6: added BE as device info instead of capability, updated test
> >     to have 2 codeblocks
> > v7: fixed checkpatch errors
> > v8: remove additional test vectors, update reverse_op function name,
> >     make be_support param as bool, other minor changes in la12xx
> > driver
> > v9: add little endianness capability as well (patch by Nicolas Chautru),
> >     fix 32 bit (i386) compilation, fix get of nb_segs, add endianness
> >     info in testbbdev doc.
> > v10: use default RTE_BIG_ENDIAN/RTE_LITTLE_ENDIAN defined, add
> >      data_endianness info for BBDEV null device
> > v11: split la12xx doc in separate patches and fixed some nits
> >
> Acked-by: Akhil Goyal <gakhil@marvell.com> Release notes are updated
> Applied to dpdk-next-crypto
> 

Acked-by: Nicolas Chautru <nicolas.chautru@intel.com

> I believe Nicolas is out, but he has reviewed the patches and the patches
> look good.
> If I get the Ack by Wednesday, I will update the patches before they are
> pulled on main.
  
Akhil Goyal Oct. 18, 2021, 6:13 p.m. UTC | #3
> Hi Akhil, Nipin,
> 
> I do ack the serie formally. Thanks for the updates and welcome to the new
> bbdev pmd!
> 
> Acked-by: Nicolas Chautru <nicolas.chautru@intel.com
Thanks, updated the tree.