From nobody Fri Oct 23 10:09:40 2026 X-Original-To: dev-commits-src-all@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 4j9zK63pKGz6wgZ1 for ; Fri, 23 Oct 2026 10:09:46 +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) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4j9zK61cjjz4bdq for ; Fri, 23 Oct 2026 10:09:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1792750186; 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=6uS1eJXKiCWD5F5F42DpIGhRKQNbKW83pdpRwGPlC6o=; b=MTbS7xjayYeNKdqkfLx2FoBOF7AZkAzXGhIFRFJC+qdWLngiszP8gxHsn/db7mgvFa68EU u5oQntYKFOjC5xM1Cc/iiM5jIZicDUfS+1z5n5ttN9xZeh9Z+AcGr8/aUQJ7wjeajm+HsA LNaLuRWcrBNnpdxxS2dPDtg7pCys93Hs7TFnVIOZ86yL5Gumc/aw0lQ9uo7IC6Q4cRl2Nz YjNhMldJw6Vd7UyasFdNJsG3oB4lQt0Elj+MCzVuTiRSigyYqwlVGKZW4YfJLV2q3SULy6 QG5czYQBlSvgj3MpPVwiy9WattFS7lVP3poxImihLM+dnfX1qM3qPA7Ki/cRPA== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1792750186; b=OEyc12GhazDepgZxllIQ8cDJ4UX43qVwM7m675FEFBycbGZxgDh5QqleZQ7dszWko7p1no 9CvAJuKLp2Z2dqOvqhkDALFr9ErU+OpABvUazN80HlWUeWe8mPwloHRsQGMFBLdkZUTEbE 1xe9TPHuEXNnpcfsSjd0PU4FvpEH4iSB3b2nHA8ND07ZMtcblTcVZkNU173MF+MIeNG2SK fqw9a3Y/bofXbPxfgzzUQpWeTku6inqGAg0LxfO5JmMeJlp8GpqiB3RO/g9oWj8ibnSloF 6Yka9s+Eqt9H6T56kipQFdnJvTfLKRYXXlgwZnY4RZbWaMQO40L68j53TQ5KqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1792750186; 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=6uS1eJXKiCWD5F5F42DpIGhRKQNbKW83pdpRwGPlC6o=; b=WSuNcwM7awjvC8hK4xIAb2eHFU5nsAyp/LEYHxuuXpQxyLdv0xoVnFVLMmU2JEi+nLS9nU VJMOWTancrlwxjYsDKn8o7lNrI2XXYvN47DiesQtGX/onqYl6yRMi5ykPt7H1CDP77h3Vg //GMr/wW/KENhpfo0EBi5j5BUF6VlgUdkr8d79QjH8kXgYKzkmftFCmIFqU4N+15RCkLQD ytb4mH2PUPuv7Pchm0QpqMZUWuD5Krlb/yconFfcw9DMe4Kja6UGtyIrg6ioTiqkCw1za5 uvSl43DVaenRmUQOXM4Xx1p36+Zcx1F46wI/40rGZ9qMIUnP57kpsDpLRfg0CQ== 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 4j9zK60kkXzNk6 for ; Fri, 23 Oct 2026 10:09:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3938c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Oct 2026 10:09:40 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Sumit Saxena From: Sumit Saxena Subject: git: 443c423fd01b - stable/15 - if_bnxt: add support for SIOCGI2CPB page/bank i2c requests List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org List-Id: Commit messages for all branches of the src repository 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/stable/15 X-Git-Reftype: branch X-Git-Commit: 443c423fd01bec3e8f15c506894ff7cf4fe4314c Auto-Submitted: auto-generated Date: Fri, 23 Oct 2026 10:09:40 +0000 Message-Id: <6adb3264.3938c.22ff1e59@gitrepo.freebsd.org> The branch stable/15 has been updated by ssaxena: URL: https://cgit.FreeBSD.org/src/commit/?id=443c423fd01bec3e8f15c506894ff7cf4fe4314c commit 443c423fd01bec3e8f15c506894ff7cf4fe4314c Author: Sumit Saxena AuthorDate: 2026-09-01 07:55:35 +0000 Commit: Sumit Saxena CommitDate: 2026-10-23 10:08:58 +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 (cherry picked from commit fdab50f6f8107c9d825a7e6d92d7a6b89c417bbb) --- 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 aa1d525f00dd..f6964c737cf8 100644 --- a/sys/dev/bnxt/bnxt_en/if_bnxt.c +++ b/sys/dev/bnxt/bnxt_en/if_bnxt.c @@ -401,7 +401,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), @@ -430,7 +434,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), @@ -4628,16 +4636,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; }