From nobody Wed May 13 16:00:37 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4gFyq94lvbz6dZvh for ; Wed, 13 May 2026 16:00:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gFyq93w6zz3ktb for ; Wed, 13 May 2026 16:00:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1778688037; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Jvnf+Z+IPoYLYXoIOYYvZzstAz0z5RAahpKpQytstrU=; b=H7V6woSyGEaTrMTyNcrSiJN/nCGn8yyLXrwd1f+VDzc/crbBehpt9N2QR6CsNOl+idyH5H GyIbdj/KteFuN3grXL0dxprabrAedR6q3Zysvby9u84Z967xa2lBq3cJmPC4GKv9fTcbAc ql/CjgCGiJklO9ptGzWz1Qy2KkEuBgNTMH9lgK66bwPQh5weaSGOSWaQygVLZuIGcOf+mt csslj2cEDr3MPir1oAA04z9w3I8qjh1O2J2rE9ZzSKBPimXnWj5G0PvXReAxB+/hecHpPv 7ky0APolxVOXPHeQ3o5SuAUXyWIBpnHg1LiRugnXbAwK3dB5rlnuaQ3E8uPJ1w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1778688037; a=rsa-sha256; cv=none; b=Vr6KyEyqPvifEejf1j4GZE+FMwGHj0MfERJsajPQfG9dQhBr6qxQYOIn776Rm7kvBHesXK +eW6wyjXpCrlP92TnRqxBbV2W72fRxTPQHXhaEdIxSwoqNFK3kA0zhuIFbbFXVJ0z7uhRV gCyyWGoGrMyiUHnXDR4vJlj+TDepuz9zb6G4GWcFcnaLM1MXtAtooS5xA5SAb9iyjwK8Cw 2EQAmV4JOzgXjzpueV6JnrDluGeaYHIkRGO7jyWvm5B5tpSHgEGxR/5DRcBB4AjDm3+ZW2 B41hhKWDRE75IUciZok7czdL3TUHxEAkWQa7KR+e4grEzV4CXGy6+PyDDzRgCQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1778688037; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Jvnf+Z+IPoYLYXoIOYYvZzstAz0z5RAahpKpQytstrU=; b=l4cEBaJhlLJt4rUmSw2g7VGWj0sU+nLNqEzq6OhBVZO08MoZtgEFa+i15sRCnhbDIBZ+rv T2oGR+t1oaMNiG/7Dgq3Tz055cpyIwzm4Ydg8hueEV+TEUGSlMcoiWyOdLmzwsrRU3gEJp 5HtksyCOHZgsC8LsjUCRlFK1zM/ZdYwIxXkM1E9C5LlUQULOVaFhdwAbBfD49W1fsenLdu jDqy5VpASCBXdcGEgwDtiOHtqUhcX/bITe6VApSRicHLvpgkJ2FNV5LGGYuY6Q7PDCcwCB fsn+LgF6plnKc2IcALA03vFBzoeiZ5OtU573BrKU2YFcubsF8KZbdvSwFbaB1A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gFyq93W1tzx2c for ; Wed, 13 May 2026 16:00:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3a555 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 13 May 2026 16:00:37 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Navdeep Parhar Subject: git: e03c00b47b1a - main - cxgbe(4): Query and report IPsec offload related parameters List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: np X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e03c00b47b1af560b280c32576e7fc06b0a58224 Auto-Submitted: auto-generated Date: Wed, 13 May 2026 16:00:37 +0000 Message-Id: <6a04a025.3a555.7202e86e@gitrepo.freebsd.org> The branch main has been updated by np: URL: https://cgit.FreeBSD.org/src/commit/?id=e03c00b47b1af560b280c32576e7fc06b0a58224 commit e03c00b47b1af560b280c32576e7fc06b0a58224 Author: Navdeep Parhar AuthorDate: 2026-05-12 18:04:55 +0000 Commit: Navdeep Parhar CommitDate: 2026-05-13 15:51:46 +0000 cxgbe(4): Query and report IPsec offload related parameters MFC after: 2 weeks Sponsored by: Chelsio Communications --- sys/dev/cxgbe/common/common.h | 4 ++++ sys/dev/cxgbe/t4_main.c | 33 ++++++++++++++++++++++++++++++++- 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/sys/dev/cxgbe/common/common.h b/sys/dev/cxgbe/common/common.h index 2033967ffb94..fcc728a8bf31 100644 --- a/sys/dev/cxgbe/common/common.h +++ b/sys/dev/cxgbe/common/common.h @@ -457,6 +457,10 @@ struct adapter_params { unsigned int max_ordird_qp; /* Max read depth per RDMA QP */ unsigned int max_ird_adapter; /* Max read depth per adapter */ + unsigned int nipsec_tunnel; + unsigned int nipsec_transport; + unsigned int nofld_ipsec_tunnel; + /* These values are for all ports (8b/port, upto 4 ports) */ uint32_t mps_bg_map; /* MPS rx buffer group map */ uint32_t tp_ch_map; /* TPCHMAP from firmware */ diff --git a/sys/dev/cxgbe/t4_main.c b/sys/dev/cxgbe/t4_main.c index d73204eb808c..07906dac00a8 100644 --- a/sys/dev/cxgbe/t4_main.c +++ b/sys/dev/cxgbe/t4_main.c @@ -5998,7 +5998,29 @@ get_params__post_init(struct adapter *sc) sc->vres.key.start = val[0]; sc->vres.key.size = val[1] - val[0] + 1; } - + if (sc->cryptocaps & FW_CAPS_CONFIG_IPSEC_INLINE) { + param[0] = FW_PARAM_PFVF(NIPSEC_TUNNEL); + param[1] = FW_PARAM_PFVF(NIPSEC_TRANSPORT); + rc = -t4_query_params(sc, sc->mbox, sc->pf, 0, 2, param, val); + if (rc == 0) { + sc->params.nipsec_tunnel = val[0]; + sc->params.nipsec_transport = val[1]; + } else { + CH_ERR(sc, "failed to query IPsec params: %d.\n", rc); + MPASS(sc->params.nipsec_tunnel == 0); + MPASS(sc->params.nipsec_transport == 0); + } + } + if (sc->cryptocaps & FW_CAPS_CONFIG_OFLD_OVER_IPSEC_INLINE) { + param[0] = FW_PARAM_PFVF(OFLD_NIPSEC_TUNNEL); + rc = -t4_query_params(sc, sc->mbox, sc->pf, 0, 1, param, val); + if (rc == 0) { + sc->params.nofld_ipsec_tunnel = val[0]; + } else { + CH_ERR(sc, "failed to query TOE IPsec params: %d.\n", rc); + MPASS(sc->params.nofld_ipsec_tunnel == 0); + } + } /* * We've got the params we wanted to query directly from the firmware. * Grab some others via other means. @@ -7987,6 +8009,15 @@ t4_sysctls(struct adapter *sc) SYSCTL_ADD_INT(ctx, children, OID_AUTO, "nfilters", CTLFLAG_RD, NULL, sc->tids.nftids, "number of filters"); + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "nipsec_tunnel", CTLFLAG_RD, + NULL, sc->params.nipsec_tunnel, "max hw IPsec tunnels"); + + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "nipsec_transport", CTLFLAG_RD, + NULL, sc->params.nipsec_transport, "max hw IPsec transport pairs"); + + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "nofld_ipsec_tunnel", CTLFLAG_RD, + NULL, sc->params.nofld_ipsec_tunnel, "max hw IPsec tunnels (TOE)"); + SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "temperature", CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_MPSAFE, sc, 0, sysctl_temperature, "I", "chip temperature (in Celsius)");