[PATCH] net/cnxk: toggle link status for representors

2024-11-14 Thread Harman Kalra
Representor port link status should be toggled based on representee state i.e. if representee comes up representor link status should be up while when representee goes down representor port should indicate the same. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_rep_ops.c | 26

[PATCH v2 2/2] common/cnxk: add mailbox debug trace

2024-11-14 Thread Harman Kalra
Implementing mailbox debug trace points to trace function calls. Signed-off-by: Harman Kalra --- V2: * Fixed line length exceeding 100 columns drivers/common/cnxk/roc_dev.c | 87 -- drivers/common/cnxk/roc_mbox.c | 34 drivers/common/cnxk

[PATCH v2 1/2] common/cnxk: fix mailbox timeout issues

2024-11-14 Thread Harman Kalra
deac72abbf ("common/cnxk: add CN20KA mbox support") Signed-off-by: Harman Kalra --- V2: * Replaced gcc builtin __atomic_xxx intrinsics with corresponding rte_atomic_xxx stdatomic API drivers/common/cnxk/roc_dev.c | 106 - drivers/common/cnxk/

[PATCH 2/2] common/cnxk: add mailbox debug trace

2024-11-04 Thread Harman Kalra
Implementing mailbox debug trace points to trace function calls. Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_dev.c | 89 -- drivers/common/cnxk/roc_mbox.c | 34 drivers/common/cnxk/roc_mbox.h | 2 + drivers/common/cnxk

[PATCH 1/2] common/cnxk: fix mailbox timeout issues

2024-11-04 Thread Harman Kalra
deac72abbf ("common/cnxk: add CN20KA mbox support") Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_dev.c | 106 - drivers/common/cnxk/roc_dev_priv.h | 11 +++ drivers/common/cnxk/roc_mbox.c | 10 ++- 3 files changed, 104 insertions(+), 2

[PATCH 8/8] net/cnxk: handle RSS action for representees

2024-10-23 Thread Harman Kalra
es support. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_flow.c| 80 ++--- drivers/net/cnxk/cnxk_rep.c | 9 +++- drivers/net/cnxk/cnxk_rep.h | 5 ++- drivers/net/cnxk/cnxk_rep_msg.h | 2 +- 4 files changed, 85 insertions(+), 11 deletions(-) di

[PATCH 3/8] common/cnxk: fix double free of flow aging resources

2024-10-23 Thread Harman Kalra
As part of npc tear down sequence flow aging resources are cleaned up while they were already cleaned up when last flow with aging action was removed. This leads to double free of some resources. Fixes: 85e9542d4700 ("common/cnxk: fix flow aging cleanup") Signed-off-by: Ha

[PATCH 6/8] net/cnxk: support single flow dump

2024-10-23 Thread Harman Kalra
Adding support for single flow dump, as the user may want to dump details for a single flow. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_flow.c | 7 ++- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/net/cnxk/cnxk_flow.c b/drivers/net/cnxk/cnxk_flow.c index

[PATCH 7/8] common/cnxk: update representee RSS rule via PF

2024-10-23 Thread Harman Kalra
Adding support to update representee's RSS rule via PF ports. Before updating the rule strict validation to check if requested representee is part of PF port. Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_eswitch.c | 11 drivers/common/cnxk/roc_eswitch.h | 3 ++ dr

[PATCH 5/8] net/cnxk: append mark ID action

2024-10-23 Thread Harman Kalra
In case of represented port action corresponding to a representee, a mark ID is appended to identify the flow. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_flow.c | 73 1 file changed, 50 insertions(+), 23 deletions(-) diff --git a/drivers/net/cnxk

[PATCH 4/8] net/cnxk: fix eswitch multiseg

2024-10-23 Thread Harman Kalra
Data corruption is observed in case of VxLAN packets as the segment data was not handled properly Fixes: 6ad061cd74ad ("net/cnxk: support multi-segment in eswitch") Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch_rxtx.c | 11 +++ 1 file changed, 3 insert

[PATCH 2/8] net/cnxk: common mbox for representor events

2024-10-23 Thread Harman Kalra
From: Ankur Dwivedi Under a common mbox, multiple events can be received. These events are processed by net driver based on event IDs. Signed-off-by: Ankur Dwivedi --- drivers/net/cnxk/cnxk_rep.c | 35 --- 1 file changed, 28 insertions(+), 7 deletions(-) diff -

[PATCH 1/8] common/cnxk: common mbox for representor events

2024-10-23 Thread Harman Kalra
From: Ankur Dwivedi Adding a common mbox which can process multiple representor events under one mbox ID. Different types of events like, representee state change, MTU change all can be sent as different events but via same mbox. Signed-off-by: Ankur Dwivedi Signed-off-by: Harman Kalra

[PATCH 5/5] common/cnxk: enable PF VF mbox

2024-09-01 Thread Harman Kalra
* Setting up the mailbox communication between PF and VF for cn20k * Update PFVF mbox CSRs offset change introduced in cn20k * Memory to be allocated by PF driver for PF VF mbox should be aligned to next power of 2. Signed-off-by: Harman Kalra --- drivers/common/cnxk/hw/rvu.h | 18

[PATCH 4/5] common/cnxk: define PF VF bit encoding in pcifunc

2024-09-01 Thread Harman Kalra
In cn20k, PF and VF bit encoding format in a pcifunc has changed to accommodate more no of PFs. Hence defining the pf/vf encoding parameters for cn20k and cn9k/10k platforms. Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_dev.c | 1 + drivers/common/cnxk/roc_dev_priv.h | 31

[PATCH 3/5] common/cnxk: add cn20ka mbox support

2024-09-01 Thread Harman Kalra
Adding mbox support for PF to AF communicaiton, accessing the mbox region setup by AF and alliased to PF's bar 2 region. Signed-off-by: Harman Kalra --- drivers/common/cnxk/hw/rvu.h| 17 +++ drivers/common/cnxk/roc_constants.h | 12 +- drivers/common/cnxk/roc_dev.c

[PATCH 2/5] common/cnxk: add CN20ka A0 model

2024-09-01 Thread Harman Kalra
Adding support for CN20ka A0 pass Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_model.c | 9 +-- drivers/common/cnxk/roc_model.h | 48 ++--- 2 files changed, 52 insertions(+), 5 deletions(-) diff --git a/drivers/common/cnxk/roc_model.c b/drivers

[PATCH 1/5] common/cnxk: define platform configuration

2024-09-01 Thread Harman Kalra
Defining compile time platform configuration to discrimate among different SOCs. Signed-off-by: Harman Kalra --- drivers/common/cnxk/meson.build | 13 + 1 file changed, 13 insertions(+) diff --git a/drivers/common/cnxk/meson.build b/drivers/common/cnxk/meson.build index e0e4600989

[PATCH 0/5] Marvell cn20K SOC base code

2024-09-01 Thread Harman Kalra
This patchset introduces foundational support for Marvell's CN20K SoC. Based on this series cn20K enhancements to PMD's such as 'common/cnxk', 'net/cnxk', 'mempool/cnxk', 'event/cnxk' etc, will be added. Harman Kalra (5): common/cnxk: define p

[PATCH v3 5/5] net/cnxk: fix representor port mapping

2024-06-24 Thread Harman Kalra
From: Hanumanth Pothula As part of ready and exit messages only first half of the ports were processed, i.e. represented to representor port mapping was setup and released. While later half of the ports were not processed. Fixes: 804c585658ea ("net/cnxk: add representor control plane") Signed-o

[PATCH v3 4/5] net/cnxk: fix invalid pattern count

2024-06-24 Thread Harman Kalra
From: Amit Prakash Shukla Increment nb_pattern count to include RTE_FLOW_ITEM_TYPE_END. Fixes: aebe8cf310cc ("net/cnxk: create flow on representor ports") Signed-off-by: Amit Prakash Shukla --- V2: * Added fixes tag drivers/net/cnxk/cnxk_rep_flow.c | 3 +++ 1 file changed, 3 insertions(+)

[PATCH v3 3/5] net/cnxk: add multi seg support in eswitch

2024-06-24 Thread Harman Kalra
ur Dwivedi Signed-off-by: Harman Kalra --- V2: * Fixed clang-static compilation issue * Added to release notes * Better commit message V3: * Minor correction in release notes doc/guides/rel_notes/release_24_07.rst | 2 + drivers/net/cnxk/cnxk_eswitch.c| 2 +- driver

[PATCH v3 2/5] net/cnxk: add MTU set ops

2024-06-24 Thread Harman Kalra
From: Ankur Dwivedi Adding support for changing MTU of a representor port. This is required to allow processing jumbo packets. Using this operation, MTU of representor port is only changed, no MTU change shall be propagated to the respective represented port. Signed-off-by: Ankur Dwivedi --- V2

[PATCH v3 1/5] net/cnxk: fix stale offload flag reset

2024-06-24 Thread Harman Kalra
From: Amit Prakash Shukla mbuf buffer is not reset on tx and hence few fields has stale data from previous packets. Due to stale offload flags, in one of the scenarios with OVS, VxLAN offload flag was set while packet did not have the VxLAN header. In the OVS packet path, the flag was read and ac

[PATCH v2 5/5] net/cnxk: fix representor port mapping

2024-06-24 Thread Harman Kalra
From: Hanumanth Pothula As part of ready and exit messages only first half of the ports were processed, i.e. represented to representor port mapping was setup and released. While later half of the ports were not processed. Fixes: 804c585658ea ("net/cnxk: add representor control plane") Signed-o

[PATCH v2 4/5] net/cnxk: fix invalid pattern count

2024-06-24 Thread Harman Kalra
From: Amit Prakash Shukla Increment nb_pattern count to include RTE_FLOW_ITEM_TYPE_END. Fixes: aebe8cf310cc ("net/cnxk: create flow on representor ports") Signed-off-by: Amit Prakash Shukla --- V2: * Added fixes tag drivers/net/cnxk/cnxk_rep_flow.c | 3 +++ 1 file changed, 3 insertions(+)

[PATCH v2 3/5] net/cnxk: add multi seg support in eswitch

2024-06-24 Thread Harman Kalra
ur Dwivedi Signed-off-by: Harman Kalra --- V2: * Fixed clang-static compilation issue * Added to release notes * Better commit message doc/guides/rel_notes/release_24_07.rst | 2 + drivers/net/cnxk/cnxk_eswitch.c| 2 +- drivers/net/cnxk/cnxk_eswitch_rxtx.c | 164 ++

[PATCH v2 2/5] net/cnxk: add MTU set ops

2024-06-24 Thread Harman Kalra
From: Ankur Dwivedi Adding support for changing MTU of a representor port. This is required to allow processing jumbo packets. Using this operation, MTU of representor port is only changed, no MTU change shall be propagated to the respective represented port. Signed-off-by: Ankur Dwivedi --- V2

[PATCH v2 1/5] net/cnxk: fix stale offload flag reset

2024-06-24 Thread Harman Kalra
From: Amit Prakash Shukla mbuf buffer is not reset on tx and hence few fields has stale data from previous packets. Due to stale offload flags, in one of the scenarios with OVS, VxLAN offload flag was set while packet did not have the VxLAN header. In the OVS packet path, the flag was read and ac

[PATCH 6/6] common/cnxk: flow aginig delaying app shutdown

2024-06-24 Thread Harman Kalra
If flow aging is enabled application termination may take time equivalent to aging timeout. This is because on termination flow thread uses a sleep call which is uninterruptible. Signed-off-by: Harman Kalra Signed-off-by: Kiran Kumar K --- drivers/common/cnxk/roc_npc_aging.c | 17

[PATCH 5/6] net/cnxk: update processing ready message

2024-06-24 Thread Harman Kalra
From: Hanumanth Pothula Now, dpu offload application sends READY measage with only MAC port's hw_funcs. Hence, process the READY message accordingly. Signed-off-by: Hanumanth Pothula --- drivers/net/cnxk/cnxk_rep_msg.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers

[PATCH 4/6] net/cnxk: increment number of flow pattern

2024-06-24 Thread Harman Kalra
From: Amit Prakash Shukla Increment nb_pattern count to include RTE_FLOW_ITEM_TYPE_END. Signed-off-by: Amit Prakash Shukla --- drivers/net/cnxk/cnxk_rep_flow.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/cnxk/cnxk_rep_flow.c b/drivers/net/cnxk/cnxk_rep_flow.c index d26f5

[PATCH 3/6] net/cnxk: add multi seg support in eswitch

2024-06-24 Thread Harman Kalra
From: Ankur Dwivedi Introducing multi segment support in eswitch driver to handle packets of varying sizes. Signed-off-by: Ankur Dwivedi --- drivers/net/cnxk/cnxk_eswitch.c | 2 +- drivers/net/cnxk/cnxk_eswitch_rxtx.c | 167 --- 2 files changed, 149 insertions(+)

[PATCH 2/6] net/cnxk: add MTU set ops

2024-06-24 Thread Harman Kalra
From: Ankur Dwivedi Implement mtu set ops for representor ports Signed-off-by: Ankur Dwivedi --- drivers/net/cnxk/cnxk_rep.h | 1 + drivers/net/cnxk/cnxk_rep_ops.c | 34 - 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/drivers/net/cnxk/cnxk_

[PATCH 1/6] net/cnxk: stale offload flag reset

2024-06-24 Thread Harman Kalra
From: Amit Prakash Shukla mbuf buffer is not reset on tx and hence few fields has stale data from previous packets. Due to stale offload flags, in one of the scenarios with OVS, VxLAN offload flag was set while packet did not have the VxLAN header. In the OVS packet path, the flag was read and ac

[PATCH v6 23/23] net/cnxk: other flow operations

2024-03-03 Thread Harman Kalra
Implementing other flow operations - validate, destroy, query, flush, dump for representor ports Signed-off-by: Harman Kalra --- doc/guides/rel_notes/release_24_03.rst | 1 + drivers/net/cnxk/cnxk_rep_flow.c | 414 + drivers/net/cnxk/cnxk_rep_msg.h| 32

[PATCH v6 22/23] net/cnxk: flow create on representor ports

2024-03-03 Thread Harman Kalra
Implementing base infra for handling flow operations performed on representor ports, where these representor ports may be representing native representees or part of companian apps. Also added support for handling flow create operation Signed-off-by: Harman Kalra --- doc/guides/nics/features

[PATCH v6 21/23] net/cnxk: generalise flow operation APIs

2024-03-03 Thread Harman Kalra
request made on normal or representor ports. Signed-off-by: Harman Kalra --- doc/guides/nics/features/cnxk.ini | 1 + doc/guides/nics/features/cnxk_vec.ini | 1 + doc/guides/nics/features/cnxk_vf.ini | 1 + drivers/net/cnxk/cnxk_flow.c | 556 ++ drivers/net

[PATCH v6 20/23] net/cnxk: add representor port pattern and action

2024-03-03 Thread Harman Kalra
Adding support for representor port as item matching and action. Signed-off-by: Harman Kalra --- doc/guides/nics/cnxk.rst | 1 + doc/guides/nics/features/cnxk.ini | 2 + doc/guides/nics/features/cnxk_vec.ini | 2 + doc/guides/nics/features/cnxk_vf.ini | 2 + drivers

[PATCH v6 19/23] net/cnxk: add represented port pattern and action

2024-03-03 Thread Harman Kalra
From: Kiran Kumar K Adding support for represented_port item matching and action. Signed-off-by: Kiran Kumar K Signed-off-by: Satheesh Paul Signed-off-by: Harman Kalra --- doc/guides/nics/cnxk.rst | 1 + doc/guides/nics/features/cnxk.ini | 1 + doc/guides/nics/features

[PATCH v6 18/23] common/cnxk: support port representor and represented port

2024-03-03 Thread Harman Kalra
From: Kiran Kumar K Implementing the common infrastructural changes for supporting port representors and represented ports used as action and pattern in net layer. Signed-off-by: Kiran Kumar K Signed-off-by: Satheesh Paul Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_npc.c

[PATCH v6 17/23] net/cnxk: eswitch VF as ethernet device

2024-03-03 Thread Harman Kalra
Adding support for eswitch VF to probe as normal cnxk ethernet device Signed-off-by: Harman Kalra --- drivers/net/cnxk/cn10k_ethdev.c| 3 +++ drivers/net/cnxk/cnxk_ethdev.c | 41 +- drivers/net/cnxk/cnxk_ethdev.h | 3 +++ drivers/net/cnxk

[PATCH v6 16/23] common/cnxk: base support for eswitch VF

2024-03-03 Thread Harman Kalra
Base ROC layer changes for supporting eswitch VF and NIX lbk changes for ESW Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_constants.h | 1 + drivers/common/cnxk/roc_dev.c | 1 + drivers/common/cnxk/roc_nix.c | 15 +-- drivers/common/cnxk/roc_nix.h | 1

[PATCH v6 14/23] common/cnxk: get representees ethernet stats

2024-03-03 Thread Harman Kalra
Implementing an mbox interface to fetch the representees's ethernet stats from the kernel. Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_eswitch.c | 45 +++ drivers/common/cnxk/roc_eswitch.h | 2 ++ drivers/common/cnxk/roc_mbox.h

[PATCH v6 15/23] net/cnxk: ethernet statistics for representor

2024-03-03 Thread Harman Kalra
Adding representor ethernet statistics support which can fetch stats for representees which are operating independently or part of companian app. Adds xstats callback for representor port statistics. Signed-off-by: Harman Kalra Signed-off-by: Ankur Dwivedi --- drivers/net/cnxk/cnxk_rep.h

[PATCH v6 13/23] net/cnxk: representor ethdev ops

2024-03-03 Thread Harman Kalra
Implementing ethernet device operation callbacks for port representors PMD Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_rep.c | 28 +- drivers/net/cnxk/cnxk_rep.h | 35 +++ drivers/net/cnxk/cnxk_rep_msg.h | 8 + drivers/net/cnxk/cnxk_rep_ops.c | 495

[PATCH v6 12/23] net/cnxk: handling representee notification

2024-03-03 Thread Harman Kalra
In case of any representee coming up or going down, kernel sends a mbox up call which signals a thread to process these messages and enable/disable HW resources accordingly. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 8 + drivers/net/cnxk/cnxk_eswitch.h | 19

[PATCH v6 11/23] common/cnxk: representee notification callback

2024-03-03 Thread Harman Kalra
Setting up a callback which gets invoked every time a representee comes up or goes down. Later this callback gets handled by network counterpart. Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_dev.c | 70 ++ drivers/common/cnxk/roc_dev_priv.h | 3

[PATCH v6 09/23] net/cnxk: eswitch fastpath routines

2024-03-03 Thread Harman Kalra
Implementing fastpath RX and TX fast path routines which can be invoked from respective representors rx burst and tx burst Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.h | 5 + drivers/net/cnxk/cnxk_eswitch_rxtx.c | 211 +++ drivers/net/cnxk

[PATCH v6 10/23] net/cnxk: add representor control plane

2024-03-03 Thread Harman Kalra
Implementing the control path for representor ports, where represented ports can be configured using TLV messaging. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 70 ++- drivers/net/cnxk/cnxk_eswitch.h | 8 + drivers/net/cnxk/cnxk_rep.c | 52 ++ drivers/net/cnxk

[PATCH v6 08/23] net/cnxk: eswitch flow configurations

2024-03-03 Thread Harman Kalra
Adding flow rules for eswitch PF and VF and implementing interfaces to delete, shift flow rules Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 44 +++ drivers/net/cnxk/cnxk_eswitch.h | 25 +- drivers/net/cnxk/cnxk_eswitch_devargs.c | 1 + drivers/net/cnxk

[PATCH v6 07/23] common/cnxk: interface to update VLAN TPID

2024-03-03 Thread Harman Kalra
Introducing eswitch variant of set vlan tpid api which can be using for PF and VF Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_eswitch.c | 15 +++ drivers/common/cnxk/roc_eswitch.h | 4 drivers/common/cnxk/roc_nix_priv.h | 11 +-- drivers/common/cnxk

[PATCH v6 06/23] common/cnxk: common NPC changes for eswitch

2024-03-03 Thread Harman Kalra
Adding new MCAM API for installing flow using generic npc_install_flow mbox and other helper APIs. Also adding rss action configuration for eswitch. Signed-off-by: Harman Kalra --- drivers/common/cnxk/meson.build| 1 + drivers/common/cnxk/roc_api.h | 3 + drivers/common/cnxk

[PATCH v6 05/23] net/cnxk: probing representor ports

2024-03-03 Thread Harman Kalra
Basic skeleton for probing representor devices. If PF device is passed with "representor" devargs, representor ports gets probed as a separate ethdev device. Signed-off-by: Harman Kalra --- MAINTAINERS | 1 + doc/guides/nics/cnxk.rst| 35 + driver

[PATCH v6 04/23] net/cnxk: eswitch devargs parsing

2024-03-03 Thread Harman Kalra
Implementing the devargs parsing logic via which the representors pattern is provided. These patterns define for which representies representors shall be created. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 88 + drivers/net/cnxk/cnxk_eswitch.h

[PATCH v6 03/23] net/cnxk: eswitch HW resource configuration

2024-03-03 Thread Harman Kalra
Configuring the hardware resources used by the eswitch device. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 217 +++- 1 file changed, 216 insertions(+), 1 deletion(-) diff --git a/drivers/net/cnxk/cnxk_eswitch.c b/drivers/net/cnxk/cnxk_eswitch.c

[PATCH v6 02/23] net/cnxk: implementing eswitch device

2024-03-03 Thread Harman Kalra
Eswitch device is a parent or base device behind all the representors, acting as transport layer between representors and representees Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 379 drivers/net/cnxk/cnxk_eswitch.h | 103 + drivers

[PATCH v6 01/23] common/cnxk: add support for representors

2024-03-03 Thread Harman Kalra
Introducing a new Mailbox for registering base device behind all representors and also registering debug log type for representors and base device driver. Signed-off-by: Harman Kalra --- doc/guides/nics/cnxk.rst| 4 drivers/common/cnxk/roc_constants.h | 1 + drivers/common

[PATCH v6 00/23] net/cnxk: support for port representors

2024-03-03 Thread Harman Kalra
Changes since V1: * Updated communication layer between representor and represented port. * Added support for native represented ports * Port representor and represented port item and action support * Build failure fixes Harman Kalra (21): common/cnxk: add support for representors net/cnxk

[PATCH v5 23/23] net/cnxk: other flow operations

2024-03-01 Thread Harman Kalra
Implementing other flow operations - validate, destroy, query, flush, dump for representor ports Signed-off-by: Harman Kalra --- doc/guides/rel_notes/release_24_03.rst | 1 + drivers/net/cnxk/cnxk_rep_flow.c | 414 + drivers/net/cnxk/cnxk_rep_msg.h| 32

[PATCH v5 22/23] net/cnxk: flow create on representor ports

2024-03-01 Thread Harman Kalra
Implementing base infra for handling flow operations performed on representor ports, where these representor ports may be representing native representees or part of companian apps. Also added support for handling flow create operation Signed-off-by: Harman Kalra --- drivers/net/cnxk

[PATCH v5 21/23] net/cnxk: generalise flow operation APIs

2024-03-01 Thread Harman Kalra
request made on normal or representor ports. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_flow.c | 556 +-- drivers/net/cnxk/cnxk_flow.h | 18 ++ 2 files changed, 489 insertions(+), 85 deletions(-) diff --git a/drivers/net/cnxk/cnxk_flow.c b/drivers/net/cnxk

[PATCH v5 20/23] net/cnxk: add representor port pattern and action

2024-03-01 Thread Harman Kalra
Adding support for representor port as item matching and action. Signed-off-by: Harman Kalra --- doc/guides/nics/cnxk.rst | 1 + doc/guides/nics/features/cnxk.ini | 4 + doc/guides/nics/features/cnxk_vec.ini | 4 + doc/guides/nics/features/cnxk_vf.ini | 4 + drivers

[PATCH v5 19/23] net/cnxk: add represented port pattern and action

2024-03-01 Thread Harman Kalra
From: Kiran Kumar K Adding support for represented_port item matching and action. Signed-off-by: Kiran Kumar K Signed-off-by: Satheesh Paul Signed-off-by: Harman Kalra --- doc/guides/nics/cnxk.rst | 1 + doc/guides/nics/features/cnxk.ini | 1 + doc/guides/nics/features

[PATCH v5 18/23] common/cnxk: support port representor and represented port

2024-03-01 Thread Harman Kalra
From: Kiran Kumar K Implementing the common infrastructural changes for supporting port representors and represented ports used as action and pattern in net layer. Signed-off-by: Kiran Kumar K Signed-off-by: Satheesh Paul Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_npc.c

[PATCH v5 17/23] net/cnxk: eswitch VF as ethernet device

2024-03-01 Thread Harman Kalra
Adding support for eswitch VF to probe as normal cnxk ethernet device Signed-off-by: Harman Kalra --- drivers/net/cnxk/cn10k_ethdev.c| 3 +++ drivers/net/cnxk/cnxk_ethdev.c | 41 +- drivers/net/cnxk/cnxk_ethdev.h | 3 +++ drivers/net/cnxk

[PATCH v5 16/23] common/cnxk: base support for eswitch VF

2024-03-01 Thread Harman Kalra
Base ROC layer changes for supporting eswitch VF and NIX lbk changes for ESW Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_constants.h | 1 + drivers/common/cnxk/roc_dev.c | 1 + drivers/common/cnxk/roc_nix.c | 15 +-- drivers/common/cnxk/roc_nix.h | 1

[PATCH v5 15/23] net/cnxk: ethernet statistics for representor

2024-03-01 Thread Harman Kalra
Adding representor ethernet statistics support which can fetch stats for representees which are operating independently or part of companian app. Adds xstats callback for representor port statistics. Signed-off-by: Harman Kalra Signed-off-by: Ankur Dwivedi --- drivers/net/cnxk/cnxk_rep.h

[PATCH v5 14/23] common/cnxk: get representees ethernet stats

2024-03-01 Thread Harman Kalra
Implementing an mbox interface to fetch the representees's ethernet stats from the kernel. Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_eswitch.c | 45 +++ drivers/common/cnxk/roc_eswitch.h | 2 ++ drivers/common/cnxk/roc_mbox.h

[PATCH v5 13/23] net/cnxk: representor ethdev ops

2024-03-01 Thread Harman Kalra
Implementing ethernet device operation callbacks for port representors PMD Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_rep.c | 28 +- drivers/net/cnxk/cnxk_rep.h | 35 +++ drivers/net/cnxk/cnxk_rep_msg.h | 8 + drivers/net/cnxk/cnxk_rep_ops.c | 495

[PATCH v5 12/23] net/cnxk: handling representee notification

2024-03-01 Thread Harman Kalra
In case of any representee coming up or going down, kernel sends a mbox up call which signals a thread to process these messages and enable/disable HW resources accordingly. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 8 + drivers/net/cnxk/cnxk_eswitch.h | 19

[PATCH v5 11/23] common/cnxk: representee notification callback

2024-03-01 Thread Harman Kalra
Setting up a callback which gets invoked every time a representee comes up or goes down. Later this callback gets handled by network counterpart. Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_dev.c | 70 ++ drivers/common/cnxk/roc_dev_priv.h | 3

[PATCH v5 10/23] net/cnxk: add representor control plane

2024-03-01 Thread Harman Kalra
Implementing the control path for representor ports, where represented ports can be configured using TLV messaging. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 70 ++- drivers/net/cnxk/cnxk_eswitch.h | 8 + drivers/net/cnxk/cnxk_rep.c | 52 ++ drivers/net/cnxk

[PATCH v5 09/23] net/cnxk: eswitch fastpath routines

2024-03-01 Thread Harman Kalra
Implementing fastpath RX and TX fast path routines which can be invoked from respective representors rx burst and tx burst Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.h | 5 + drivers/net/cnxk/cnxk_eswitch_rxtx.c | 211 +++ drivers/net/cnxk

[PATCH v5 08/23] net/cnxk: eswitch flow configurations

2024-03-01 Thread Harman Kalra
Adding flow rules for eswitch PF and VF and implementing interfaces to delete, shift flow rules Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 44 +++ drivers/net/cnxk/cnxk_eswitch.h | 25 +- drivers/net/cnxk/cnxk_eswitch_devargs.c | 1 + drivers/net/cnxk

[PATCH v5 07/23] common/cnxk: interface to update VLAN TPID

2024-03-01 Thread Harman Kalra
Introducing eswitch variant of set vlan tpid api which can be using for PF and VF Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_eswitch.c | 15 +++ drivers/common/cnxk/roc_eswitch.h | 4 drivers/common/cnxk/roc_nix_priv.h | 11 +-- drivers/common/cnxk

[PATCH v5 06/23] common/cnxk: common NPC changes for eswitch

2024-03-01 Thread Harman Kalra
Adding new MCAM API for installing flow using generic npc_install_flow mbox and other helper APIs. Also adding rss action configuration for eswitch. Signed-off-by: Harman Kalra --- drivers/common/cnxk/meson.build| 1 + drivers/common/cnxk/roc_api.h | 3 + drivers/common/cnxk

[PATCH v5 05/23] net/cnxk: probing representor ports

2024-03-01 Thread Harman Kalra
Basic skeleton for probing representor devices. If PF device is passed with "representor" devargs, representor ports gets probed as a separate ethdev device. Signed-off-by: Harman Kalra --- MAINTAINERS | 1 + doc/guides/nics/cnxk.rst| 35 + driver

[PATCH v5 04/23] net/cnxk: eswitch devargs parsing

2024-03-01 Thread Harman Kalra
Implementing the devargs parsing logic via which the representors pattern is provided. These patterns define for which representies representors shall be created. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 88 + drivers/net/cnxk/cnxk_eswitch.h

[PATCH v5 03/23] net/cnxk: eswitch HW resource configuration

2024-03-01 Thread Harman Kalra
Configuring the hardware resources used by the eswitch device. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 217 +++- 1 file changed, 216 insertions(+), 1 deletion(-) diff --git a/drivers/net/cnxk/cnxk_eswitch.c b/drivers/net/cnxk/cnxk_eswitch.c

[PATCH v5 02/23] net/cnxk: implementing eswitch device

2024-03-01 Thread Harman Kalra
Eswitch device is a parent or base device behind all the representors, acting as transport layer between representors and representees Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 379 drivers/net/cnxk/cnxk_eswitch.h | 103 + drivers

[PATCH v5 01/23] common/cnxk: add support for representors

2024-03-01 Thread Harman Kalra
Introducing a new Mailbox for registering base device behind all representors and also registering debug log type for representors and base device driver. Signed-off-by: Harman Kalra --- doc/guides/nics/cnxk.rst| 4 drivers/common/cnxk/roc_constants.h | 1 + drivers/common

[PATCH v5 00/23] net/cnxk: support for port representors

2024-03-01 Thread Harman Kalra
representor and represented port. * Added support for native represented ports * Port representor and represented port item and action support * Build failure fixes Harman Kalra (21): common/cnxk: add support for representors net/cnxk: implementing eswitch device net/cnxk: eswitch HW resource

[PATCH] ethdev: fix coverity issue

2024-02-27 Thread Harman Kalra
Fixing uninitialized value access. Coverity issue: 414934 Fixes: 9a9eb104edf6 ("ethdev: parse multiple representor devargs") Signed-off-by: Harman Kalra --- lib/ethdev/ethdev_driver.c | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/ethdev/ethdev_driver.c b/lib/ethdev/ethde

[PATCH v4 23/23] net/cnxk: other flow operations

2024-02-27 Thread Harman Kalra
Implementing other flow operations - validate, destroy, query, flush, dump for representor ports Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_rep_flow.c | 414 +++ drivers/net/cnxk/cnxk_rep_msg.h | 32 +++ 2 files changed, 446 insertions(+) diff --git a

[PATCH v4 22/23] net/cnxk: flow create on representor ports

2024-02-27 Thread Harman Kalra
Implementing base infra for handling flow operations performed on representor ports, where these representor ports may be representing native representees or part of companian apps. Also added support for handling flow create operation Signed-off-by: Harman Kalra --- drivers/net/cnxk

[PATCH v4 21/23] net/cnxk: generalise flow operation APIs

2024-02-27 Thread Harman Kalra
request made on normal or representor ports. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_flow.c | 556 +-- drivers/net/cnxk/cnxk_flow.h | 18 ++ 2 files changed, 489 insertions(+), 85 deletions(-) diff --git a/drivers/net/cnxk/cnxk_flow.c b/drivers/net/cnxk

[PATCH v4 20/23] net/cnxk: add representor port pattern and action

2024-02-27 Thread Harman Kalra
Adding support for representor port as item matching and action. Signed-off-by: Harman Kalra --- doc/guides/nics/cnxk.rst | 1 + doc/guides/nics/features/cnxk.ini | 4 + doc/guides/nics/features/cnxk_vec.ini | 4 + doc/guides/nics/features/cnxk_vf.ini | 4 + drivers

[PATCH v4 19/23] net/cnxk: add represented port pattern and action

2024-02-27 Thread Harman Kalra
From: Kiran Kumar K Adding support for represented_port item matching and action. Signed-off-by: Kiran Kumar K Signed-off-by: Satheesh Paul Signed-off-by: Harman Kalra --- doc/guides/nics/cnxk.rst | 1 + doc/guides/nics/features/cnxk.ini | 1 + doc/guides/nics/features

[PATCH v4 17/23] net/cnxk: eswitch VF as ethernet device

2024-02-27 Thread Harman Kalra
Adding support for eswitch VF to probe as normal cnxk ethernet device Signed-off-by: Harman Kalra --- drivers/net/cnxk/cn10k_ethdev.c| 3 +++ drivers/net/cnxk/cnxk_ethdev.c | 41 +- drivers/net/cnxk/cnxk_ethdev.h | 3 +++ drivers/net/cnxk

[PATCH v4 16/23] common/cnxk: base support for eswitch VF

2024-02-27 Thread Harman Kalra
Base ROC layer changes for supporting eswitch VF and NIX lbk changes for ESW Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_constants.h | 1 + drivers/common/cnxk/roc_dev.c | 1 + drivers/common/cnxk/roc_nix.c | 15 +-- drivers/common/cnxk/roc_nix.h | 1

[PATCH v4 18/23] common/cnxk: support port representor and represented port

2024-02-27 Thread Harman Kalra
From: Kiran Kumar K Implementing the common infrastructural changes for supporting port representors and represented ports used as action and pattern in net layer. Signed-off-by: Kiran Kumar K Signed-off-by: Satheesh Paul Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_npc.c

[PATCH v4 14/23] common/cnxk: get representees ethernet stats

2024-02-27 Thread Harman Kalra
Implementing an mbox interface to fetch the representees's ethernet stats from the kernel. Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_eswitch.c | 45 +++ drivers/common/cnxk/roc_eswitch.h | 2 ++ drivers/common/cnxk/roc_mbox.h

[PATCH v4 13/23] net/cnxk: representor ethdev ops

2024-02-27 Thread Harman Kalra
Implementing ethernet device operation callbacks for port representors PMD Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_rep.c | 28 +- drivers/net/cnxk/cnxk_rep.h | 35 +++ drivers/net/cnxk/cnxk_rep_msg.h | 8 + drivers/net/cnxk/cnxk_rep_ops.c | 495

[PATCH v4 15/23] net/cnxk: ethernet statistics for representor

2024-02-27 Thread Harman Kalra
Adding representor ethernet statistics support which can fetch stats for representees which are operating independently or part of companian app. Adds xstats callback for representor port statistics. Signed-off-by: Harman Kalra Signed-off-by: Ankur Dwivedi --- drivers/net/cnxk/cnxk_rep.h

[PATCH v4 12/23] net/cnxk: handling representee notification

2024-02-27 Thread Harman Kalra
In case of any representee coming up or going down, kernel sends a mbox up call which signals a thread to process these messages and enable/disable HW resources accordingly. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 8 + drivers/net/cnxk/cnxk_eswitch.h | 19

[PATCH v4 11/23] common/cnxk: representee notification callback

2024-02-27 Thread Harman Kalra
Setting up a callback which gets invoked every time a representee comes up or goes down. Later this callback gets handled by network counterpart. Signed-off-by: Harman Kalra --- drivers/common/cnxk/roc_dev.c | 70 ++ drivers/common/cnxk/roc_dev_priv.h | 3

[PATCH v4 10/23] net/cnxk: add representor control plane

2024-02-27 Thread Harman Kalra
Implementing the control path for representor ports, where represented ports can be configured using TLV messaging. Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 70 ++- drivers/net/cnxk/cnxk_eswitch.h | 8 + drivers/net/cnxk/cnxk_rep.c | 52 ++ drivers/net/cnxk

[PATCH v4 09/23] net/cnxk: eswitch fastpath routines

2024-02-27 Thread Harman Kalra
Implementing fastpath RX and TX fast path routines which can be invoked from respective representors rx burst and tx burst Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.h | 5 + drivers/net/cnxk/cnxk_eswitch_rxtx.c | 211 +++ drivers/net/cnxk

[PATCH v4 08/23] net/cnxk: eswitch flow configurations

2024-02-27 Thread Harman Kalra
Adding flow rules for eswitch PF and VF and implementing interfaces to delete, shift flow rules Signed-off-by: Harman Kalra --- drivers/net/cnxk/cnxk_eswitch.c | 44 +++ drivers/net/cnxk/cnxk_eswitch.h | 25 +- drivers/net/cnxk/cnxk_eswitch_devargs.c | 1 + drivers/net/cnxk

  1   2   3   4   5   6   >