From: Satish Kharat via B4 Relay <devnull+satishkh.cisco.com@kernel.org>
To: Satish Kharat <satishkh@cisco.com>,
Andrew Lunn <andrew+netdev@lunn.ch>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>,
Paolo Abeni <pabeni@redhat.com>
Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH net-next v2 0/6] enic: SR-IOV V2 preparatory infrastructure
Date: Wed, 25 Mar 2026 22:18:58 -0700 [thread overview]
Message-ID: <20260325-enic-sriov-v2-prep-v2-0-f72cf716ebfa@cisco.com> (raw)
This is the first of four series adding SR-IOV V2 support to the enic
driver for Cisco VIC 14xx/15xx adapters.
The existing V1 SR-IOV implementation has VFs that interact directly
with the VIC firmware, leaving the PF driver with no visibility or
control over VF behavior. V2 introduces a PF-mediated model where VFs
communicate with the PF through a mailbox over a dedicated admin
channel. This brings enic in line with the standard Linux SR-IOV
model, enabling full PF management of VFs via ip link (MAC, VLAN,
link state, spoofchk, trust, and per-VF statistics).
This preparatory series adds detection and resource helper code with
no functional change to existing driver behavior:
- Extend BAR resource discovery for admin channel resources
- Register the V2 VF PCI device ID
- Detect VF type (V1/V2/usNIC) from SR-IOV PCI capability
- Make enic_dev_enable/disable ref-counted for shared use by data
path and admin channel
- Add type-aware resource allocation for admin WQ/RQ/CQ/INTR
- Detect presence of admin channel resources at probe time
Tested on VIC 14xx and 15xx series adapters with V2 VFs under KVM
(sriov_numvfs, VF passthrough, ip link VF configuration, VF traffic).
Based in part on initial work by Christian Benvenuti.
To: Satish Kharat <satishkh@cisco.com>
To: Andrew Lunn <andrew+netdev@lunn.ch>
To: David S. Miller <davem@davemloft.net>
To: Eric Dumazet <edumazet@google.com>
To: Jakub Kicinski <kuba@kernel.org>
To: Paolo Abeni <pabeni@redhat.com>
Cc: netdev@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Changes in v2:
- Add RES_TYPE_SRIOV_INTR to the has_admin_channel check in patch 6/6
- CC all netdev maintainers per cc_maintainers CI feedback
- Link to v1: https://lore.kernel.org/r/20260325-enic-sriov-v2-prep-v1-0-48f04ce110cc@cisco.com
---
Satish Kharat (6):
enic: extend resource discovery for SR-IOV admin channel
enic: add V2 SR-IOV VF device ID
enic: detect SR-IOV VF type from PCI capability
enic: make enic_dev_enable/disable ref-counted
enic: add type-aware alloc for WQ, RQ, CQ and INTR resources
enic: detect admin channel resources for SR-IOV
drivers/net/ethernet/cisco/enic/enic.h | 18 +++++++++++
drivers/net/ethernet/cisco/enic/enic_dev.c | 17 +++++++---
drivers/net/ethernet/cisco/enic/enic_main.c | 42 ++++++++++++++++++++++++-
drivers/net/ethernet/cisco/enic/enic_res.c | 11 +++++--
drivers/net/ethernet/cisco/enic/vnic_cq.c | 14 +++++++--
drivers/net/ethernet/cisco/enic/vnic_cq.h | 3 ++
drivers/net/ethernet/cisco/enic/vnic_dev.c | 10 ++++++
drivers/net/ethernet/cisco/enic/vnic_intr.c | 12 +++++--
drivers/net/ethernet/cisco/enic/vnic_intr.h | 2 ++
drivers/net/ethernet/cisco/enic/vnic_resource.h | 4 +++
drivers/net/ethernet/cisco/enic/vnic_rq.c | 14 +++++++--
drivers/net/ethernet/cisco/enic/vnic_rq.h | 3 ++
drivers/net/ethernet/cisco/enic/vnic_wq.c | 14 +++++++--
drivers/net/ethernet/cisco/enic/vnic_wq.h | 3 ++
14 files changed, 148 insertions(+), 19 deletions(-)
---
base-commit: b1c803d5c8167026791abfaed96fd3e6a1fcd750
change-id: 20260324-enic-sriov-v2-prep-2fe1eabc3dc1
Best regards,
--
Satish Kharat <satishkh@cisco.com>
next reply other threads:[~2026-03-26 5:18 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-26 5:18 Satish Kharat via B4 Relay [this message]
2026-03-26 5:18 ` [PATCH net-next v2 1/6] enic: extend resource discovery for SR-IOV admin channel Satish Kharat via B4 Relay
2026-03-26 5:19 ` [PATCH net-next v2 2/6] enic: add V2 SR-IOV VF device ID Satish Kharat via B4 Relay
2026-03-26 5:19 ` [PATCH net-next v2 3/6] enic: detect SR-IOV VF type from PCI capability Satish Kharat via B4 Relay
2026-03-26 5:19 ` [PATCH net-next v2 4/6] enic: make enic_dev_enable/disable ref-counted Satish Kharat via B4 Relay
2026-03-26 5:19 ` [PATCH net-next v2 5/6] enic: add type-aware alloc for WQ, RQ, CQ and INTR resources Satish Kharat via B4 Relay
2026-03-26 5:19 ` [PATCH net-next v2 6/6] enic: detect admin channel resources for SR-IOV Satish Kharat via B4 Relay
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260325-enic-sriov-v2-prep-v2-0-f72cf716ebfa@cisco.com \
--to=devnull+satishkh.cisco.com@kernel.org \
--cc=andrew+netdev@lunn.ch \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=satishkh@cisco.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox