From nobody Fri Oct 09 10:13:05 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 4j1N3Q1NJMz6vRWR for ; Fri, 09 Oct 2026 10:13:06 +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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4j1N3P5mFnz4YSD for ; Fri, 09 Oct 2026 10:13:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791540785; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iAbw0RuGKxrMk5yrDsufrEGzsEru5nWW/dXIVJmYk/Q=; b=VncJ4MZorY5XtuTRi5QxAP42b6OUOyysOEGTWhX6KiYzy4HONl29a50PHWNhU1gOmLK5eR +Uu85h/2wYemdSREl9EeJJZps+XrtgorTXcRjiDffKaz1uUzAsx2jvSGLir4jNCN26Pf7i c363QkiM8AFhDh8g15p0DAMc0WfqoE8E7RuejUFy22PjXSCeGSqU7NW/VppPt37Sn15qxm 3fpztAJPpci4BGx013f09xqFQy2/NasJymxzuYv5xrUoCgG+mGhsI0VIErXee1o7qQe0Zn M6T+/e+ZSF0rOFbb52HnEW3eJGcQLSb2L6Gn3AK/FHviBTxCf+M75JP9zAGFgg== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1791540785; b=GdNx4UoEEAcFgveBrhu33Xbl/kUmqwzbc3M/EghAw/2pnfaJa4uwY5D8W5NaH1jKLfu4h5 laa9ZlD9pAJXwjKDbzoo+WzL9bNDgTHdZSNj+lhN6ByYlMoA5LrayRRFyNAihjh83/Jov5 0KseGf3kCANSLyNowBsKJlP4S+59Hs+JJr3E1F8JY2Vr5nb/4xf/ntLj4YfS6irQ8esHXg sayJ8CBHRoCO3rkJkTijR1QHWxtuznApPxhp/dqr31a94ESHZRt7T8HVq65X3lMwTzeKnn 4bIy8B/GkXyDsGEjwtVOzTUp2GWZzPiCrVKDbUcCzf3ACAWJ4+mF8Q70yV0o5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791540785; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iAbw0RuGKxrMk5yrDsufrEGzsEru5nWW/dXIVJmYk/Q=; b=iiwtLKa4CxbBgB0RKcQjz/Kr89bDPps4TKbQ0I7NkhNv3i6bzCJDmB+3tvy6a2ztNM+QcN QDlp0paWs3ur2dDBVjuKOXkMLUl8Cjb+juKmsswLwHf7gEcIVeJPbi6JUZYO8uk7ytl+yB iwyD+cvtdGY+tXDCl0hhNMvJbUiuokNFV2OTFsSdIFEeWe2Ui/cTiBVbQvRLYYIhltYK5T Sn0VRfwd9+oQ/B5Wx0oxtFWKq1LTtWodw05jKz2JoWhbdTvZWL4S++/mR85TpBNOBxjjTO D61o++k6I84tCay9oZ2Dty5JEi+BN5zNkvISXVzlllaYyisK7XCuOkcy5ydWdw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4j1N3P4DkYz1LZZ for ; Fri, 09 Oct 2026 10:13:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 42a27 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 09 Oct 2026 10:13:05 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Sumit Saxena From: Sumit Saxena Subject: git: fdab50f6f810 - main - if_bnxt: add support for SIOCGI2CPB page/bank i2c requests 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: ssaxena X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fdab50f6f8107c9d825a7e6d92d7a6b89c417bbb Auto-Submitted: auto-generated Date: Fri, 09 Oct 2026 10:13:05 +0000 Message-Id: <6ac8be31.42a27.243439ee@gitrepo.freebsd.org> The branch main has been updated by ssaxena: URL: https://cgit.FreeBSD.org/src/commit/?id=fdab50f6f8107c9d825a7e6d92d7a6b89c417bbb commit fdab50f6f8107c9d825a7e6d92d7a6b89c417bbb Author: Sumit Saxena AuthorDate: 2026-09-01 07:55:35 +0000 Commit: Sumit Saxena CommitDate: 2026-10-09 08:24:46 +0000 if_bnxt: add support for SIOCGI2CPB page/bank i2c requests Advertise IFLIB_I2C_PAGE_BANK and forward the requested page/bank to firmware, so CMIS optics can be read correctly instead of falling back to bogus legacy SFF-8472 decoding. Also fix bnxt_i2c_req() to return positive errno values. Signed-off-by: gallatin Reviewed by: gallatin MFC after: 2 weeks Sponsored by: Broadcom Inc. Differential Revision: https://reviews.freebsd.org/D59573 --- sys/dev/bnxt/bnxt_en/if_bnxt.c | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/sys/dev/bnxt/bnxt_en/if_bnxt.c b/sys/dev/bnxt/bnxt_en/if_bnxt.c index 759eeff63607..776da70a6d1c 100644 --- a/sys/dev/bnxt/bnxt_en/if_bnxt.c +++ b/sys/dev/bnxt/bnxt_en/if_bnxt.c @@ -392,7 +392,11 @@ static struct if_shared_ctx bnxt_sctx_template = { .isc_magic = IFLIB_MAGIC, .isc_driver = &bnxt_iflib_driver, .isc_nfl = 2, +#ifdef IFLIB_I2C_PAGE_BANK + .isc_flags = IFLIB_HAS_RXCQ | IFLIB_HAS_TXCQ | IFLIB_NEED_ETHER_PAD | IFLIB_I2C_PAGE_BANK, +#else .isc_flags = IFLIB_HAS_RXCQ | IFLIB_HAS_TXCQ | IFLIB_NEED_ETHER_PAD, +#endif .isc_q_align = PAGE_SIZE, .isc_tx_maxsize = BNXT_TSO_SIZE + sizeof(struct ether_vlan_header), .isc_tx_maxsegsize = BNXT_TSO_SIZE + sizeof(struct ether_vlan_header), @@ -421,7 +425,11 @@ static struct if_shared_ctx bnxt_sctx_template_p7 = { .isc_magic = IFLIB_MAGIC, .isc_driver = &bnxt_iflib_driver, .isc_nfl = 2, +#ifdef IFLIB_I2C_PAGE_BANK + .isc_flags = IFLIB_HAS_RXCQ | IFLIB_HAS_TXCQ | IFLIB_NEED_ETHER_PAD | IFLIB_I2C_PAGE_BANK, +#else .isc_flags = IFLIB_HAS_RXCQ | IFLIB_HAS_TXCQ | IFLIB_NEED_ETHER_PAD, +#endif .isc_q_align = PAGE_SIZE, .isc_tx_maxsize = BNXT_TSO_SIZE + sizeof(struct ether_vlan_header), .isc_tx_maxsegsize = BNXT_TSO_SIZE + sizeof(struct ether_vlan_header), @@ -5139,16 +5147,26 @@ bnxt_i2c_req(if_ctx_t ctx, struct ifi2creq *i2c) */ if (softc->link_info.module_status > HWRM_PORT_PHY_QCFG_OUTPUT_MODULE_STATUS_WARNINGMSG) - return -EOPNOTSUPP; + return EOPNOTSUPP; /* This feature is not supported in older firmware versions */ if (!BNXT_CHIP_P5_PLUS(softc) || (softc->hwrm_spec_code < 0x10202)) - return -EOPNOTSUPP; - - - rc = bnxt_read_sfp_module_eeprom_info(softc, i2c->dev_addr, 0, 0, 0, - i2c->offset, i2c->len, data); + return EOPNOTSUPP; + + +#ifdef IFLIB_I2C_PAGE_BANK + /* linux/page.h #defines page to vm_page; i2c->page has no such member. */ +#undef page + rc = bnxt_read_sfp_module_eeprom_info(softc, i2c->dev_addr, + i2c->page, i2c->bank, i2c->bank != 0, + i2c->offset, i2c->len, data); +#define page vm_page +#else + rc = bnxt_read_sfp_module_eeprom_info(softc, i2c->dev_addr, + 0, 0, 0, + i2c->offset, i2c->len, data); +#endif return rc; }