X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fnics%2Fdpaa2.rst;h=85bc048899e7392f71c24d2a6ce29330e9de7678;hb=eb6d5a0af9a05bf940ba19ec1ddbe575b5e7540b;hp=46225b657d1fe729dfbfede7f0b52ee61643699f;hpb=846a8305f277f3d335b156779ad230d3d1325e8e;p=dpdk.git diff --git a/doc/guides/nics/dpaa2.rst b/doc/guides/nics/dpaa2.rst index 46225b657d..85bc048899 100644 --- a/doc/guides/nics/dpaa2.rst +++ b/doc/guides/nics/dpaa2.rst @@ -1,6 +1,5 @@ .. BSD LICENSE - Copyright (C) NXP. 2016. - All rights reserved. + Copyright 2016 NXP. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions @@ -49,6 +48,8 @@ Contents summary - Overview of DPAA2 objects - DPAA2 driver architecture overview +.. _dpaa2_overview: + DPAA2 Overview ~~~~~~~~~~~~~~ @@ -421,9 +422,15 @@ Features of the DPAA2 PMD are: - Multiple queues for TX and RX - Receive Side Scaling (RSS) +- MAC/VLAN filtering - Packet type information - Checksum offload - Promiscuous mode +- Multicast mode +- Port hardware statistics +- Jumbo frames +- Link flow control +- Scattered and gather for TX and RX Supported DPAA2 SoCs -------------------- @@ -441,7 +448,7 @@ compatible board: 1. **ARM 64 Tool Chain** - For example, the `*aarch64* Linaro Toolchain `_. + For example, the `*aarch64* Linaro Toolchain `_. 2. **Linux Kernel** @@ -471,17 +478,17 @@ separately: SDK and related information can be obtained from: `NXP QorIQ SDK `_. -- **DPDK Helper Scripts** +- **DPDK Extra Scripts** DPAA2 based resources can be configured easily with the help of ready scripts - as provided in the DPDK helper repository. + as provided in the DPDK Extra repository. - `DPDK Helper Scripts `_. + `DPDK Extras Scripts `_. Currently supported by DPDK: -- NXP SDK **2.0+**. -- MC Firmware version **10.0.0** and higher. +- NXP SDK **17.08+**. +- MC Firmware version **10.3.1** and higher. - Supported architectures: **arm64 LE**. - Follow the DPDK :ref:`Getting Started Guide for Linux ` to setup the basic DPDK environment. @@ -489,7 +496,7 @@ Currently supported by DPDK: .. note:: Some part of fslmc bus code (mc flib - object library) routines are - dual licensed (BSD & GPLv2). + dual licensed (BSD & GPLv2), however they are used as BSD in DPDK in userspace. Pre-Installation Configuration ------------------------------ @@ -534,67 +541,46 @@ Please note that enabling debugging options may affect system performance. Toggle display of transmit fast path buffer free run-time message +Driver compilation and testing +------------------------------ -Driver Compilation -~~~~~~~~~~~~~~~~~~ - -To compile the DPAA2 PMD for Linux arm64 gcc target, run the -following ``make`` command: - -.. code-block:: console - - cd - make config T=arm64-dpaa2-linuxapp-gcc install - -.. _dpaa2_testpmd_example: - -Running testpmd -~~~~~~~~~~~~~~~ - -This section demonstrates how to launch ``testpmd`` with DPAA2 device -managed by ``librte_pmd_dpaa2`` in the Linux operating system. - -#. Configure the resource container: - - Configure resources in MC and create the DPRC container: +Refer to the document :ref:`compiling and testing a PMD for a NIC ` +for details. - .. code-block:: console +#. Running testpmd: - export the DPRC container - e.g. export DPRCT=dprc.2 + Follow instructions available in the document + :ref:`compiling and testing a PMD for a NIC ` + to run testpmd. -#. Start ``testpmd`` with basic parameters: + Example output: .. code-block:: console ./arm64-dpaa2-linuxapp-gcc/testpmd -c 0xff -n 1 \ -- -i --portmask=0x3 --nb-cores=1 --no-flush-rx - Example output: - - .. code-block:: console - - ..... - EAL: Registered [pci] bus. - EAL: Registered [fslmc] bus. - EAL: Detected 8 lcore(s) - EAL: Probing VFIO support... - EAL: VFIO support initialized - ..... - PMD: DPAA2: Processing Container = dprc.2 - EAL: fslmc: DPRC contains = 51 devices - EAL: fslmc: Bus scan completed - ..... - Configuring Port 0 (socket 0) - Port 0: 00:00:00:00:00:01 - Configuring Port 1 (socket 0) - Port 1: 00:00:00:00:00:02 - ..... - Checking link statuses... - Port 0 Link Up - speed 10000 Mbps - full-duplex - Port 1 Link Up - speed 10000 Mbps - full-duplex - Done - testpmd> + ..... + EAL: Registered [pci] bus. + EAL: Registered [fslmc] bus. + EAL: Detected 8 lcore(s) + EAL: Probing VFIO support... + EAL: VFIO support initialized + ..... + PMD: DPAA2: Processing Container = dprc.2 + EAL: fslmc: DPRC contains = 51 devices + EAL: fslmc: Bus scan completed + ..... + Configuring Port 0 (socket 0) + Port 0: 00:00:00:00:00:01 + Configuring Port 1 (socket 0) + Port 1: 00:00:00:00:00:02 + ..... + Checking link statuses... + Port 0 Link Up - speed 10000 Mbps - full-duplex + Port 1 Link Up - speed 10000 Mbps - full-duplex + Done + testpmd> Limitations ----------- @@ -611,3 +597,10 @@ The DPAA2 SoC family support a maximum of a 10240 jumbo frame. The value is fixed and cannot be changed. So, even when the ``rxmode.max_rx_pkt_len`` member of ``struct rte_eth_conf`` is set to a value lower than 10240, frames up to 10240 bytes can still reach the host interface. + +Other Limitations +~~~~~~~~~~~~~~~~~ + +- RSS hash key cannot be modified. +- RSS RETA cannot be configured. +- Secondary process packet I/O is not supported.