linux/drivers/net/ethernet/cisco/enic
Satish Kharat 4368f5fab4 enic: detect admin channel resources for SR-IOV
Check for the presence of admin channel BAR resources
(RES_TYPE_ADMIN_WQ, ADMIN_RQ, ADMIN_CQ, SRIOV_INTR) during resource
discovery. Set has_admin_channel when all four are available.

Use ARRAY_SIZE(enic->admin_cq) for the admin CQ count check since the
driver allocates two admin CQs (one for WQ completions, one for RQ
completions) and both must be backed by hardware resources.

Add admin WQ, RQ, CQ and INTR fields to struct enic for use by the
upcoming admin channel open/close paths.

Signed-off-by: Satish Kharat <satishkh@cisco.com>
Link: https://patch.msgid.link/20260401-enic-sriov-v2-prep-v4-6-d5834b2ef1b9@cisco.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2026-04-02 18:05:06 -07:00
..
cq_desc.h enic: added enic_wq.c and enic_wq.h 2025-03-11 10:21:32 +01:00
cq_enet_desc.h enic: remove unused function cq_enet_wq_desc_dec 2025-03-11 10:21:27 +01:00
enic_api.c
enic_api.h
enic_clsf.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
enic_clsf.h treewide: Switch/rename to timer_delete[_sync]() 2025-04-05 10:30:12 +02:00
enic_dev.c enic: make enic_dev_enable/disable ref-counted 2026-04-02 18:05:06 -07:00
enic_dev.h
enic_ethtool.c net:ethernet:enic: map ethtool link modes by VIC type 2026-02-24 17:20:11 -08:00
enic_main.c enic: make enic_dev_enable/disable ref-counted 2026-04-02 18:05:06 -07:00
enic_pp.c
enic_pp.h
enic_res.c enic: detect admin channel resources for SR-IOV 2026-04-02 18:05:06 -07:00
enic_res.h enic: get max rq & wq entries supported by hw, 16K queues 2025-03-11 10:21:38 +01:00
enic_rq.c enic: enable rq extended cq support 2025-03-11 10:21:15 +01:00
enic_rq.h enic: enic rq code reorg 2025-03-11 10:21:15 +01:00
enic_wq.c enic: get max rq & wq entries supported by hw, 16K queues 2025-03-11 10:21:38 +01:00
enic_wq.h enic: cleanup of enic wq request completion path 2025-03-11 10:21:34 +01:00
enic.h enic: detect admin channel resources for SR-IOV 2026-04-02 18:05:06 -07:00
Kconfig enic: add dependency on Page Pool 2025-02-25 19:08:21 -08:00
Makefile enic: added enic_wq.c and enic_wq.h 2025-03-11 10:21:32 +01:00
rq_enet_desc.h
vnic_cq.c enic: add type-aware alloc for WQ, RQ, CQ and INTR resources 2026-04-02 18:05:06 -07:00
vnic_cq.h enic: add type-aware alloc for WQ, RQ, CQ and INTR resources 2026-04-02 18:05:06 -07:00
vnic_dev.c enic: extend resource discovery for SR-IOV admin channel 2026-04-02 18:05:05 -07:00
vnic_dev.h
vnic_devcmd.h enic: enic rq extended cq defines 2025-03-11 10:21:15 +01:00
vnic_enet.h enic: get max rq & wq entries supported by hw, 16K queues 2025-03-11 10:21:38 +01:00
vnic_intr.c enic: add type-aware alloc for WQ, RQ, CQ and INTR resources 2026-04-02 18:05:06 -07:00
vnic_intr.h enic: add type-aware alloc for WQ, RQ, CQ and INTR resources 2026-04-02 18:05:06 -07:00
vnic_nic.h
vnic_resource.h enic: extend resource discovery for SR-IOV admin channel 2026-04-02 18:05:05 -07:00
vnic_rq.c enic: add type-aware alloc for WQ, RQ, CQ and INTR resources 2026-04-02 18:05:06 -07:00
vnic_rq.h enic: add type-aware alloc for WQ, RQ, CQ and INTR resources 2026-04-02 18:05:06 -07:00
vnic_rss.h
vnic_stats.h
vnic_vic.c
vnic_vic.h
vnic_wq.c enic: add type-aware alloc for WQ, RQ, CQ and INTR resources 2026-04-02 18:05:06 -07:00
vnic_wq.h enic: add type-aware alloc for WQ, RQ, CQ and INTR resources 2026-04-02 18:05:06 -07:00
wq_enet_desc.h