X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fnics%2Fmvpp2.rst;h=e40fed72868cc6ee954b4378e507c5209ef925a6;hb=8bb87d65bab7d75748ca95447dd533ffc5ef8bc1;hp=17e8e347bb1c5b3ed8aa1b2f0db78f4f75070c60;hpb=8809f78c7dd9f33a44a4f89c58fc91ded34296ed;p=dpdk.git diff --git a/doc/guides/nics/mvpp2.rst b/doc/guides/nics/mvpp2.rst index 17e8e347bb..e40fed7286 100644 --- a/doc/guides/nics/mvpp2.rst +++ b/doc/guides/nics/mvpp2.rst @@ -40,7 +40,7 @@ Features of the MVPP2 PMD are: - :ref:`Extended stats ` - RX flow control - Scattered TX frames -- :ref:`QoS ` +- :ref:`QoS ` - :ref:`Flow API ` - :ref:`Traffic metering and policing ` - :ref:`Traffic Management API ` @@ -91,7 +91,7 @@ Prerequisites .. code-block:: console - git clone https://github.com/MarvellEmbeddedProcessors/musdk-marvell.git -b musdk-armada-18.09 + git clone https://github.com/MarvellEmbeddedProcessors/musdk-marvell.git -b musdk-release-SDK-10.3.5.0-PR2 MUSDK is a light-weight library that provides direct access to Marvell's PPv2 (Packet Processor v2). Alternatively prebuilt MUSDK library can be @@ -108,8 +108,8 @@ Prerequisites DPDK environment. -Building DPDK -------------- +Building MUSDK +-------------- Driver needs precompiled MUSDK library during compilation. @@ -123,14 +123,18 @@ Driver needs precompiled MUSDK library during compilation. MUSDK will be installed to `usr/local` under current directory. For the detailed build instructions please consult ``doc/musdk_get_started.txt``. -The path to the MUSDK installation directory needs to set in meson, shown in the -command below. -For additional instructions regarding DPDK cross compilation please refer to :doc:`Cross compile DPDK for ARM64 <../linux_gsg/cross_build_dpdk_for_arm64>`. +Building DPDK +------------- + +Add path to libmusdk.pc in PKG_CONFIG_PATH environment variable. .. code-block:: console - meson -Dlib_musdk_dir=/path/to/musdk build ninja -C build + export PKG_CONFIG_PATH=$/lib/pkgconfig/:$PKG_CONFIG_PATH + + meson build --cross-file config/arm/arm64_armada_linux_gcc + ninja -C build Usage Example @@ -184,12 +188,12 @@ MVPP2 PMD supports the following extended statistics: - ``tx_errors``: number of TX MAC errors -.. _qossupport: +.. _extconf: -QoS Configuration ------------------ +External Configuration +---------------------- -QoS configuration is done through external configuration file. Path to the +Several driver configuration (e.g. QoS) can be done through external configuration file. Path to the file must be given as `cfg` in driver's vdev parameter list. Configuration syntax @@ -204,7 +208,17 @@ Configuration syntax ebs = cbs = + [parser udf ] + proto = + field = + key = + mask = + offset = + [port default] + start_hdr = + forward_bad_frames = + fill_bpool_buffs = default_tc = mapping_priority = @@ -235,8 +249,26 @@ Configuration syntax Where: +- ````: Logical UDF id. + +- ````: Indicate the preceding hdr before the UDF header (`eth` or `udp`). + +- ````: Indicate the field of the hdr (`type` (eth) or `dport` (udp). + +- ````: UDF key in string format starting with '0x'. + +- ````: UDF mask in string format starting with '0x'. + +- ````: Starting UDF offset from the hdr. + - ````: DPDK Port number (0..n). +- ````: Indicate what is the start header mode (`none` (eth), `dsa`, `ext_dsa` or `custom`). + +- ````: Indicate whether to forward or drop l2 bad packets (0 or 1). + +- ````: Control the amount of refill buffers (default is 64). + - ````: Default traffic class (e.g. 0) - ````: QoS priority for mapping (`ip`, `vlan`, `ip/vlan` or `vlan/ip`). @@ -341,6 +373,18 @@ Configuration file example rate_limit = 10000 burst_size = 2000 +Configuration file example with UDF +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. code-block:: console + + [parser udf 0] + proto = eth + field = type + key = 0x8842 + mask = 0xffff + offset = 6 + Usage example ^^^^^^^^^^^^^ @@ -368,6 +412,7 @@ Following flow action items are supported by the driver: * DROP * QUEUE +* METER Supported flow items ~~~~~~~~~~~~~~~~~~~~ @@ -533,7 +578,7 @@ MVPP2 PMD supports DPDK traffic metering and policing that allows the following: For an additional description please refer to DPDK :doc:`Traffic Metering and Policing API <../prog_guide/traffic_metering_and_policing>`. -The policer objects defined by this feature can work with the default policer defined via config file as described in :ref:`QoS Support `. +The policer objects defined by this feature can work with the default policer defined via config file as described in :ref:`QoS Support `. Limitations ~~~~~~~~~~~