• Ben Ben-Ishay's avatar
    net/mlx5e: Add control path for SHAMPO feature · e5ca8fb0
    Ben Ben-Ishay authored
    This commit introduces the control path infrastructure for SHAMPO feature.
    
    SHAMPO feature enables packet stitching by splitting packets to
    header and payload, the header is placed on a dedicated buffer
    and the payload on the RX ring, this allows stitching the data part
    of a flow together continuously in the receive buffer.
    
    SHAMPO feature is implemented as linked list striding RQ feature.
    To support packets splitting and payload stitching:
    - Enlarge the ICOSQ and the correspond CQ to support the header buffer
      memory regions.
    - Add support to create linked list striding RQ with SHAMPO feature set
      in the open_rq function.
    - Add deallocation function and corresponded calls for SHAMPO header
      buffer.
    - Add mlx5e_create_umr_klm_mkey to support KLM mkey for the header
      buffer.
    - Rename mlx5e_create_umr_mkey to mlx5e_create_umr_mtt_mkey.
    Signed-off-by: default avatarBen Ben-Ishay <benishay@nvidia.com>
    Reviewed-by: default avatarTariq Toukan <tariqt@nvidia.com>
    Signed-off-by: default avatarSaeed Mahameed <saeedm@nvidia.com>
    e5ca8fb0
params.h 5.65 KB