DPDK patches and discussions
 help / color / mirror / Atom feed
From: Maxime Coquelin <maxime.coquelin@redhat.com>
To: Hernan Vargas <hernan.vargas@intel.com>,
	dev@dpdk.org, gakhil@marvell.com, trix@redhat.com
Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com
Subject: Re: [PATCH v4 3/4] baseband/fpga_5gnr_fec: add AGX100 support
Date: Mon, 15 Jan 2024 17:59:12 +0100	[thread overview]
Message-ID: <657b42d6-5b34-4a37-b1f4-7bb0d54a0909@redhat.com> (raw)
In-Reply-To: <20240105211519.185086-4-hernan.vargas@intel.com>



On 1/5/24 22:15, Hernan Vargas wrote:
> Add support for new FPGA variant AGX100 (on Arrow Creek N6000).
> 
> Signed-off-by: Hernan Vargas <hernan.vargas@intel.com>
> ---
>   doc/guides/bbdevs/fpga_5gnr_fec.rst           |   76 +-
>   drivers/baseband/fpga_5gnr_fec/agx100_pmd.h   |  273 ++++
>   .../baseband/fpga_5gnr_fec/fpga_5gnr_fec.h    |   12 +-
>   .../fpga_5gnr_fec/rte_fpga_5gnr_fec.c         | 1230 +++++++++++++++--
>   drivers/baseband/fpga_5gnr_fec/vc_5gnr_pmd.h  |    1 -
>   5 files changed, 1459 insertions(+), 133 deletions(-)
>   create mode 100644 drivers/baseband/fpga_5gnr_fec/agx100_pmd.h
> 
> diff --git a/doc/guides/bbdevs/fpga_5gnr_fec.rst b/doc/guides/bbdevs/fpga_5gnr_fec.rst
> index 956dd6bed560..1ae192a86b25 100644
> --- a/doc/guides/bbdevs/fpga_5gnr_fec.rst
> +++ b/doc/guides/bbdevs/fpga_5gnr_fec.rst
> @@ -6,12 +6,13 @@ Intel(R) FPGA 5GNR FEC Poll Mode Driver
>   
>   The BBDEV FPGA 5GNR FEC poll mode driver (PMD) supports an FPGA implementation of a VRAN
>   LDPC Encode / Decode 5GNR wireless acceleration function, using Intel's PCI-e and FPGA
> -based Vista Creek device.
> +based Vista Creek (N3000, referred to as VC_5GNR in the code) as well as Arrow Creek (N6000,
> +referred to as AGX100 in the code).
>   
>   Features
>   --------
>   
> -FPGA 5GNR FEC PMD supports the following features:
> +FPGA 5GNR FEC PMD supports the following BBDEV capabilities:
>   
>   - LDPC Encode in the DL
>   - LDPC Decode in the UL
> @@ -67,10 +68,18 @@ Initialization
>   
>   When the device first powers up, its PCI Physical Functions (PF) can be listed through this command:
>   
> +Vista Creek (N3000)
> +
>   .. code-block:: console
>   
>     sudo lspci -vd8086:0d8f
>   
> +Arrow Creek (N6000)
> +
> +.. code-block:: console
> +
> +  sudo lspci -vd8086:5799
> +
>   The physical and virtual functions are compatible with Linux UIO drivers:
>   ``vfio_pci`` and ``igb_uio``. However, in order to work the FPGA 5GNR FEC device firstly needs
>   to be bound to one of these linux drivers through DPDK.
> @@ -78,6 +87,7 @@ to be bound to one of these linux drivers through DPDK.
>   For more details on how to bind the PF device and create VF devices, see
>   :ref:`linux_gsg_binding_kernel`.
>   
> +
>   Configure the VFs through PF
>   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>   
> @@ -100,7 +110,6 @@ parameters defined in ``rte_fpga_5gnr_fec_conf`` structure:
>         uint8_t dl_bandwidth;
>         uint8_t ul_load_balance;
>         uint8_t dl_load_balance;
> -      uint16_t flr_time_out;
>     };
>   
>   - ``pf_mode_en``: identifies whether only PF is to be used, or the VFs. PF and
> @@ -111,12 +120,12 @@ parameters defined in ``rte_fpga_5gnr_fec_conf`` structure:
>   
>   - ``vf_*l_queues_number``: defines the hardware queue mapping for every VF.
>   
> -- ``*l_bandwidth``: in case of congestion on PCIe interface. The device
> -  allocates different bandwidth to UL and DL. The weight is configured by this
> -  setting. The unit of weight is 3 code blocks. For example, if the code block
> -  cbps (code block per second) ratio between UL and DL is 12:1, then the
> -  configuration value should be set to 36:3. The schedule algorithm is based
> -  on code block regardless the length of each block.
> +- ``*l_bandwidth``: Only used for the Vista Creek schedule algorithm in case of
> +  congestion on PCIe interface. The device allocates different bandwidth to UL
> +  and DL. The weight is configured by this setting. The unit of weight is 3 code
> +  blocks. For example, if the code block cbps (code block per second) ratio between
> +  UL and DL is 12:1, then the configuration value should be set to 36:3.
> +  The schedule algorithm is based on code block regardless the length of each block.
>   
>   - ``*l_load_balance``: hardware queues are load-balanced in a round-robin
>     fashion. Queues get filled first-in first-out until they reach a pre-defined
> @@ -126,10 +135,6 @@ parameters defined in ``rte_fpga_5gnr_fec_conf`` structure:
>     If all hardware queues exceeds the watermark, no code blocks will be
>     streamed in from UL/DL code block FIFO.
>   
> -- ``flr_time_out``: specifies how many 16.384us to be FLR time out. The
> -  time_out = flr_time_out x 16.384us. For instance, if you want to set 10ms for
> -  the FLR time out then set this setting to 0x262=610.
> -

This change sounds unrelated. It should be in a dedicated patch with 
Fixes tag set, as it seems it was already not in fpga_5gnr driver before
this series.

>   
>   An example configuration code calling the function ``rte_fpga_5gnr_fec_configure()`` is shown
>   below:
> @@ -154,7 +159,7 @@ below:
>     /* setup FPGA PF */
>     ret = rte_fpga_5gnr_fec_configure(info->dev_name, &conf);
>     TEST_ASSERT_SUCCESS(ret,
> -      "Failed to configure 4G FPGA PF for bbdev %s",
> +      "Failed to configure 5GNR FPGA PF for bbdev %s",

Ditto

>         info->dev_name);
>   
>   


  reply	other threads:[~2024-01-15 16:59 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-05 21:15 [PATCH v4 0/4] changes for 24.03 Hernan Vargas
2024-01-05 21:15 ` [PATCH v4 1/4] baseband/fpga_5gnr_fec: renaming for consistency Hernan Vargas
2024-01-05 22:00   ` Stephen Hemminger
2024-01-10 17:19     ` Chautru, Nicolas
2024-01-05 21:15 ` [PATCH v4 2/4] baseband/fpga_5gnr_fec: add Vista Creek variant Hernan Vargas
2024-01-15 10:48   ` Maxime Coquelin
2024-01-05 21:15 ` [PATCH v4 3/4] baseband/fpga_5gnr_fec: add AGX100 support Hernan Vargas
2024-01-15 16:59   ` Maxime Coquelin [this message]
2024-01-05 21:15 ` [PATCH v4 4/4] baseband/fpga_5gnr_fec: cosmetic comment changes Hernan Vargas
2024-01-05 22:00   ` Stephen Hemminger
2024-01-10 17:17     ` Chautru, Nicolas
2024-01-16 13:12   ` Maxime Coquelin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=657b42d6-5b34-4a37-b1f4-7bb0d54a0909@redhat.com \
    --to=maxime.coquelin@redhat.com \
    --cc=dev@dpdk.org \
    --cc=gakhil@marvell.com \
    --cc=hernan.vargas@intel.com \
    --cc=nicolas.chautru@intel.com \
    --cc=qi.z.zhang@intel.com \
    --cc=trix@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).