lkml.org 
[lkml]   [2023]   [Feb]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[net-next PATCH V3 0/4] octeontx2-pf: HTB offload support
    Date
    octeontx2 silicon and CN10K transmit interface consists of five
    transmit levels starting from MDQ, TL4 to TL1. Once packets are
    submitted to MDQ, hardware picks all active MDQs using strict
    priority, and MDQs having the same priority level are chosen using
    round robin. Each packet will traverse MDQ, TL4 to TL1 levels.
    Each level contains an array of queues to support scheduling and
    shaping.

    As HTB supports classful queuing mechanism by supporting rate and
    ceil and allow the user to control the absolute bandwidth to
    particular classes of traffic the same can be achieved by
    configuring shapers and schedulers on different transmit levels.

    This series of patches adds support for HTB offload,

    Patch1: Allow strict priority parameter in HTB offload mode.

    Patch2: defines APIs such that the driver can dynamically initialize/
    deinitialize the send queues.

    Patch3: Refactors transmit alloc/free calls as preparation for QOS
    offload code.

    Patch4: Adds actual HTB offload support.



    Hariprasad Kelam (1):
    octeontx2-pf: Refactor schedular queue alloc/free calls

    Naveen Mamindlapalli (2):
    sch_htb: Allow HTB priority parameter in offload mode
    octeontx2-pf: Add support for HTB offload

    Subbaraya Sundeep (1):
    octeontx2-pf: qos send queues management
    -----
    v1 -> v2 :
    ensure other drivers won't affect by allowing 'prio'
    a parameter in htb offload mode.

    v2 -> v3 :
    1. discard patch supporting devlink to configure TL1 round
    robin priority
    2. replace NL_SET_ERR_MSG with NL_SET_ERR_MSG_MOD
    3. use max3 instead of using max couple of times and use a better
    naming convention in send queue management code.



    .../ethernet/marvell/octeontx2/af/common.h | 2 +-
    .../marvell/octeontx2/af/rvu_debugfs.c | 5 +
    .../ethernet/marvell/octeontx2/af/rvu_nix.c | 45 +
    .../ethernet/marvell/octeontx2/nic/Makefile | 2 +-
    .../marvell/octeontx2/nic/otx2_common.c | 114 +-
    .../marvell/octeontx2/nic/otx2_common.h | 36 +-
    .../marvell/octeontx2/nic/otx2_ethtool.c | 31 +-
    .../ethernet/marvell/octeontx2/nic/otx2_pf.c | 102 +-
    .../ethernet/marvell/octeontx2/nic/otx2_reg.h | 13 +
    .../ethernet/marvell/octeontx2/nic/otx2_tc.c | 7 +-
    .../marvell/octeontx2/nic/otx2_txrx.c | 25 +-
    .../marvell/octeontx2/nic/otx2_txrx.h | 3 +-
    .../ethernet/marvell/octeontx2/nic/otx2_vf.c | 13 +-
    .../net/ethernet/marvell/octeontx2/nic/qos.c | 1549 +++++++++++++++++
    .../net/ethernet/marvell/octeontx2/nic/qos.h | 71 +
    .../ethernet/marvell/octeontx2/nic/qos_sq.c | 304 ++++
    .../net/ethernet/mellanox/mlx5/core/en/qos.c | 7 +-
    include/net/pkt_cls.h | 1 +
    net/sched/sch_htb.c | 7 +-
    19 files changed, 2244 insertions(+), 93 deletions(-)
    create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/qos.c
    create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/qos.h
    create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/qos_sq.c

    --
    2.17.1

    \
     
     \ /
      Last update: 2023-03-27 00:10    [W:2.195 / U:0.416 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site