mbox series

[v6,0/9] baseband: add NXP LA12xx driver

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

Message

Nipun Gupta Sept. 24, 2021, 4:37 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 network byte order. Two test vectors are also added as an
example with input data in network byte.

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

Hemant Agrawal (6):
  baseband: introduce NXP LA12xx driver
  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

Nipun Gupta (3):
  bbdev: add big endian processing data processing info
  app/bbdev: handle endianness of test data
  app/bbdev: add test vectors for transport blocks

 MAINTAINERS                                   |   10 +
 app/test-bbdev/meson.build                    |    3 +
 app/test-bbdev/test_bbdev_perf.c              |   62 +
 app/test-bbdev/test_vectors/ldpc_dec_tb.data  |  265 ++++
 app/test-bbdev/test_vectors/ldpc_enc_tb.data  |   95 ++
 doc/guides/bbdevs/features/la12xx.ini         |   13 +
 doc/guides/bbdevs/index.rst                   |    1 +
 doc/guides/bbdevs/la12xx.rst                  |  126 ++
 doc/guides/rel_notes/release_21_11.rst        |    5 +
 drivers/baseband/la12xx/bbdev_la12xx.c        | 1098 +++++++++++++++++
 drivers/baseband/la12xx/bbdev_la12xx.h        |   51 +
 drivers/baseband/la12xx/bbdev_la12xx_ipc.h    |  244 ++++
 .../baseband/la12xx/bbdev_la12xx_pmd_logs.h   |   26 +
 drivers/baseband/la12xx/meson.build           |    6 +
 drivers/baseband/la12xx/version.map           |    3 +
 drivers/baseband/meson.build                  |    1 +
 lib/bbdev/rte_bbdev.h                         |    2 +
 17 files changed, 2011 insertions(+)
 create mode 100644 app/test-bbdev/test_vectors/ldpc_dec_tb.data
 create mode 100644 app/test-bbdev/test_vectors/ldpc_enc_tb.data
 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