From nobody Wed Jun 17 01:52:45 2026 Received: from mail-qk1-f179.google.com (mail-qk1-f179.google.com [209.85.222.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B21DE3BF677 for ; Tue, 28 Apr 2026 17:28:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777397296; cv=none; b=gb3Gx9Q2VHfghdmGdKSo1g+0Yl96BSRJQvT5BP4Z1OQ1ATm8ogQY/WnKTvVrAbialkmZFu7QBRRlSHiHXeGJ240JeJpFbj+9yDlD/2YBI4HmUoSUz+/5pz2k1dJwQPh7PBgNktkTfdPY0TvcA7HQAD3qezNKl0Cheq2mqMlxNDs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777397296; c=relaxed/simple; bh=FZkPLyz4iy8JIkfq5sjfg8+HsGK+VmVs0AAYqDsVXqw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=nbhGPf27tBG8ASCDIqOYOLMdWNR/MMDpyXH2FBKJng/gO0MwirhIIHUNawCb/xLD8ugbW+P/5qv+ekEboJMkxavaiTX2LRUtnQTA5AHx2ieePJNeKF+++kthHpPSYwzywc21P8L2IN32Epoz9OZsnNka71KDfkSMTET3aQyLXFY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=DGS92ReR; arc=none smtp.client-ip=209.85.222.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="DGS92ReR" Received: by mail-qk1-f179.google.com with SMTP id af79cd13be357-8f83efb5729so84384285a.1 for ; Tue, 28 Apr 2026 10:28:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777397294; x=1778002094; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=W2cPAm1wDcQ/uIsNTaahkJXXGkH27N19gjb7Z1QCBIs=; b=DGS92ReRZEDz4GbVu2jCoVGusJau1RySDmuUiBOAxjv7C8+BHMBGgFME2Vl7xVvHmJ eI6uPpfrffUPZJCDOdYIDlQZtNe/IK/ifcjwUaI9Gi2MbpZHYfEqnZ7nFYEayfMMEefb 5QtnMx5OUdHgZGQY3iOzmi9GIZaf4O2Uf6yVG0UjryIQi3hTGUbcWfOmodpU7jESvwje mkCjc6qJOreLbntdWqymU1/KmILZvVDlDY0/jEsQNtBrftJe1nettvMRgucshsOAGZgN GMxgx6s6+pvpOqCXrNABxykEIux34YEt/coJFuyQIFDi6Q0rjViAU/b5MQE1M/yzxr7Y CR7A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777397294; x=1778002094; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=W2cPAm1wDcQ/uIsNTaahkJXXGkH27N19gjb7Z1QCBIs=; b=Gx8M/XcO9mYwGRuFsyYghscMfjzpGx4TuTgxDvTenIWCtB7mZ5nmxIBmFMgAWpRGRP h6ygQaA8/5/TKLNIFvZZewdY9ZC8h9mLITkLpyaF05ymtNBHbH0eeuXBEfX4xkBRTSuK 1525qZAehY9JyOW8vXYFSb9yXg1olC1piEDuAOzv5IU9A++cd2AMsSsPbeN+CMzC1F8L m5jDx1BZV7uDsDHQDNPRZ4jDAEb7tR+0/W281yErznrt9mJvEFs1yLh4ocsYtKutO3Y+ ZdvvD602Xt+Sew4SE8cTEJ3E9hlCORqV7gGoNq9WWaT1+AfOYVCtOmFEKNa3vMrIJrnX DaYg== X-Forwarded-Encrypted: i=1; AFNElJ8YgRQDQhTt06/1S5JcGEcyS6C21AfxMBFajfTKxIg1xEEs6cU9bR+k+O2oNkPgzOxDb6wlClKft6zbTNc=@vger.kernel.org X-Gm-Message-State: AOJu0YyuerP8VNg73h5RWeyAhCmyDCTr8Av48vM9YAF7LZzzCGASt5Jw GSJJdrmiBOTJjDnG6Pbtmo57YA7g8qGszEm8L7tNzyobkF2GHl8jBGXb X-Gm-Gg: AeBDietVBWD97g7wijSV1Y94+zBVojT8Nu4JBoenG2ypxcSagVQ3wmeGe+h0hvdj53B M2+3whkLSMnW3mr8I0EIzrw1Xq2eMd0c7QsW9a/hbFbRbFvtwHMZmUthcYHXocMCPqu3Fuy7aLX 988CZSzrem1hhKZKuzuqBSMdXT047/tMXxOCn5AsZ50B/HKOf9AtqFfW+l40HGDQn+C3ZD1Zqou GEyCH2mTyfBeLEXsuQEbSAuVARpBQvpqFjaFeEgKEE6DMikSLln7ZWfP9h187j5o55Fgq8b25wZ FlvEiQ2szXWxvhUR8/8fMLebh4yy4vH+nUPfwh3iBLqQfF+QoKH1igkoRMmSSSrpuvR7cbAFwJW aipQt6GxBZGZaUuGXpx9bHuNWgcqECGAr6axNAST7/g5AtVyyhxu+qjHSLO3ZVVEfyEIWZyVoWm /v5uNVqpuOwbZ8PghCJM93x6GsoSb12Z4ColzhFfaLh94VLzx7SsTmcnHX0UrY76VOFDM= X-Received: by 2002:a05:622a:507:b0:50f:bb54:d3d2 with SMTP id d75a77b69052e-5100e1d7110mr56064571cf.51.1777397293649; Tue, 28 Apr 2026 10:28:13 -0700 (PDT) Received: from PF5YBGDS.localdomain ([163.114.130.7]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8b3e299d76asm26253676d6.48.2026.04.28.10.28.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Apr 2026 10:28:13 -0700 (PDT) From: mike.marciniszyn@gmail.com To: Alexander Duyck , Jakub Kicinski , kernel-team@meta.com, Andrew Lunn , "David S. Miller" , Eric Dumazet , Paolo Abeni , Heiner Kallweit , Russell King , Jacob Keller , Mohsin Bashir Cc: mike.marciniszyn@gmail.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org Subject: [PATCH net-next 1/4] net: eth: fbnic: Fix addr validation in pcs write Date: Tue, 28 Apr 2026 13:28:07 -0400 Message-ID: <20260428172810.175077-2-mike.marciniszyn@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260428172810.175077-1-mike.marciniszyn@gmail.com> References: <20260428172810.175077-1-mike.marciniszyn@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: "Mike Marciniszyn (Meta)" This patch contains a fix for addr validation in fbnic_mdio_write_pcs(). Cc: stable@vger.kernel.org Fixes: d0ce9fd7eae0 ("fbnic: Add SW shim for MDIO interface to PMD and PCS") Signed-off-by: Mike Marciniszyn (Meta) --- drivers/net/ethernet/meta/fbnic/fbnic_mdio.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/meta/fbnic/fbnic_mdio.c b/drivers/net/eth= ernet/meta/fbnic/fbnic_mdio.c index 709041f7fc43..d6a124889f52 100644 --- a/drivers/net/ethernet/meta/fbnic/fbnic_mdio.c +++ b/drivers/net/ethernet/meta/fbnic/fbnic_mdio.c @@ -125,7 +125,7 @@ fbnic_mdio_write_pcs(struct fbnic_dev *fbd, int addr, i= nt regnum, u16 val) addr, regnum, val); =20 /* Allow access to both halves of PCS for 50R2 config */ - if (addr > 2) + if (addr >=3D 2) return; =20 /* Skip write for reserved registers */ --=20 2.43.0 From nobody Wed Jun 17 01:52:45 2026 Received: from mail-qk1-f169.google.com (mail-qk1-f169.google.com [209.85.222.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A00A034F25C for ; Tue, 28 Apr 2026 17:28:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.169 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777397297; cv=none; b=giKXx/1VASwja9R9KTOzJpdNHWgnLjlfnsHpdZ4gxZEZW8iEa1y04a2bLalsuYcphka6TIiAXvlA0NqRw4lSj/AwUWCLiTlEfRJDsI2l5LtANAeZGnUKMxqU+Ip/Fi6j4ivqP9IaVU+HC2MOBgcjQY6ouScmOI+UM7mrsIcUdxc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777397297; c=relaxed/simple; bh=oRo8lYiexVQYFpTqUUCpIsXoemo9zhUnZ2iQPRYQAZg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bedwI6YfztNUpIsDZwuJjtlSv8k3PoezhBQskSKyFcOfVIDHWOyZui19JRdj304M24W4J3owciwHx+wu8N+6HEoHPXcAZ4+qVancNzAZcPaOqDhtfNW6ryg7n8N0zLDqC2JzoT5IMIK2zUaZTIvl1wMwsTlWuANoSX9exgr3baY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=KKsSebhl; arc=none smtp.client-ip=209.85.222.169 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="KKsSebhl" Received: by mail-qk1-f169.google.com with SMTP id af79cd13be357-8ea8563c693so1057384485a.2 for ; Tue, 28 Apr 2026 10:28:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777397295; x=1778002095; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=DZFwwzc6Rwzn/axLVMxm0QG6iMTYTwsLo/ohS20J9GI=; b=KKsSebhlSNcPLUV7A7IDUruie/HgPpSgT0u8HGtvsPw3vvpnSEoR6fW2IJJM9c9AqX tTcCF/NSzisFjb5w/SZ5ypoG3TFuRgMF8QAIGyN/plBjLaoXDI9p7TFFXKf1VYMbsExk aiEZW5MMQG9nEIryaworD3Jukhl3kf0KkW+oFAuOntG0tix5MYP8cGeUH44KmXUOXmJ1 HOlc0Sbx6v+NIG8HbasnEReHPLaBKU1jiAm6laX52eE5U0YYpF33UDoWRTAP0e1pCEpr vngneYzWpZ6PVJ7fIuxpP9SLtpMOh+lIlzww5B6ETVIEgdnnWd2posXa5f1w2taKPqHb FCcQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777397295; x=1778002095; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=DZFwwzc6Rwzn/axLVMxm0QG6iMTYTwsLo/ohS20J9GI=; b=jZqqNq7ndv+lNKsFk+2cdyxwSM8AWPWZw7KeMS6b1kVSACQkerF6b2Pl2piXIwovrf B4+Ax+DE/Yiw7XEWZoL2R1DYIFRJxLOl92C5JOG8hO4WRPor0nmV/0ZnqhiHp940pCKD gFNiz28hCRJStY1a1AVqy1qcLGn4dXIjGJZqcYOF2zH2si3T1E2GRfCFiLwWZ4uEIdEj ApgE4xFZzyrSF8vF2x4UmK+DU8oOyVnUB127nOQQ9ysMNm31plRrtvm8X6/i4yRJcGuU Vf7+vKcJN/mJe9o0HPdurKrU91trLtSgVa5qXzcrsdQgudnqk71JjW1Maf0xdQz1MaMr 2g7g== X-Forwarded-Encrypted: i=1; AFNElJ8U5bDhWhozr1F1IisF1j5hI+n+BHEqgv5TDuzmIYTzBKmrAKmwAN41vSg4KQbxYMdXl7OC0bldwAec5ZE=@vger.kernel.org X-Gm-Message-State: AOJu0YyQlSyTSJOok37hkDo7hVYN8DXRQfejeR5sYiRps5W9piOJ37CI bxeeakyeHkSuDuJ7ZTpmTm5dOSF1CXcGDSrlEK7bu963HH+6VPhgI5sU X-Gm-Gg: AeBDiettA5n83G0YV3qt0IlMYp3ncVi7ODBnOxzE1OJ4D8w3CwwGigegR7G3UQurB+g 5jghVcXZSKGID/OZtWZTErfBMCexZbYka829Nu6tCYIRmwjJU/Zc/+cyCEOmBzmAj8cUO+fCEhs Yn0LGwh+KNzuMPaqUT9a6nzNtz7b4+MEqr8JNEsIilHMupMIYm1bQk35Cuf/dU4UXV4WT53f8WY UXdXeoN/qEsZh0bWjeimo4f4/+f7rTUKmxPOyMDcjfU7lDtcAnNNzN/RbygboBV4rQbz/VG/kZn v+0u5eSTPwwI7jJwrQeW485opDNhCfqMVm+6CcxdvdzodG8DcrJCBF7zqWlUzmtDpdd4ZrRPEMb YjdGtF+m5TCjLXfG5aIUfGlSaYpJ8EtL7LsrsmjIeZBqESBLULr5lMr/fHoWwTz/AFL+KS3IYWJ 0uqMtRIJOVanohwHhrwYKsYCwxOcnAHz2FsEVflDBXVsdgKRygXoKGIL/dVBJaQY50EJk= X-Received: by 2002:a05:620a:4590:b0:8cd:91f5:7a29 with SMTP id af79cd13be357-8f8f6777defmr69990485a.53.1777397294632; Tue, 28 Apr 2026 10:28:14 -0700 (PDT) Received: from PF5YBGDS.localdomain ([163.114.130.7]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8b3e299d76asm26253676d6.48.2026.04.28.10.28.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Apr 2026 10:28:14 -0700 (PDT) From: mike.marciniszyn@gmail.com To: Alexander Duyck , Jakub Kicinski , kernel-team@meta.com, Andrew Lunn , "David S. Miller" , Eric Dumazet , Paolo Abeni , Heiner Kallweit , Russell King , Jacob Keller , Mohsin Bashir Cc: mike.marciniszyn@gmail.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next 2/4] net: mdio: Add support for RSFEC Control register for PMA Date: Tue, 28 Apr 2026 13:28:08 -0400 Message-ID: <20260428172810.175077-3-mike.marciniszyn@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260428172810.175077-1-mike.marciniszyn@gmail.com> References: <20260428172810.175077-1-mike.marciniszyn@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: "Mike Marciniszyn (Meta)" Add the constants associated with RS-FEC configuration and status as well as the indicated separated bits for DEVS1 to convey a separated PMA. Signed-off-by: Mike Marciniszyn (Meta) Reviewed-by: Andrew Lunn --- include/uapi/linux/mdio.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/include/uapi/linux/mdio.h b/include/uapi/linux/mdio.h index 8d769f100de6..b2541c948fc1 100644 --- a/include/uapi/linux/mdio.h +++ b/include/uapi/linux/mdio.h @@ -23,6 +23,10 @@ #define MDIO_MMD_DTEXS 5 /* DTE Extender Sublayer */ #define MDIO_MMD_TC 6 /* Transmission Convergence */ #define MDIO_MMD_AN 7 /* Auto-Negotiation */ +#define MDIO_MMD_SEP_PMA1 8 /* Separated PMA (1) */ +#define MDIO_MMD_SEP_PMA2 9 /* Separated PMA (2) */ +#define MDIO_MMD_SEP_PMA3 10 /* Separated PMA (3) */ +#define MDIO_MMD_SEP_PMA4 11 /* Separated PMA (4) */ #define MDIO_MMD_POWER_UNIT 13 /* PHY Power Unit */ #define MDIO_MMD_C22EXT 29 /* Clause 22 extension */ #define MDIO_MMD_VEND1 30 /* Vendor specific 1 */ @@ -63,6 +67,8 @@ * Lanes B-D are numbered 134-136. */ #define MDIO_PMA_10GBR_FSRT_CSR 147 /* 10GBASE-R fast retrain status and c= ontrol */ #define MDIO_PMA_10GBR_FECABLE 170 /* 10GBASE-R FEC ability */ +#define MDIO_PMA_RSFEC_CTRL 200 /* RSFEC control */ +#define MDIO_PMA_RSFEC_LANE_MAP 206 /* RSFEC lane mapping */ #define MDIO_PCS_10GBX_STAT1 24 /* 10GBASE-X PCS status 1 */ #define MDIO_PCS_10GBRT_STAT1 32 /* 10GBASE-R/-T PCS status 1 */ #define MDIO_PCS_10GBRT_STAT2 33 /* 10GBASE-R/-T PCS status 2 */ @@ -175,6 +181,10 @@ #define MDIO_DEVS_DTEXS MDIO_DEVS_PRESENT(MDIO_MMD_DTEXS) #define MDIO_DEVS_TC MDIO_DEVS_PRESENT(MDIO_MMD_TC) #define MDIO_DEVS_AN MDIO_DEVS_PRESENT(MDIO_MMD_AN) +#define MDIO_DEVS_SEP_PMA1 MDIO_DEVS_PRESENT(MDIO_MMD_SEP_PMA1) +#define MDIO_DEVS_SEP_PMA2 MDIO_DEVS_PRESENT(MDIO_MMD_SEP_PMA2) +#define MDIO_DEVS_SEP_PMA3 MDIO_DEVS_PRESENT(MDIO_MMD_SEP_PMA3) +#define MDIO_DEVS_SEP_PMA4 MDIO_DEVS_PRESENT(MDIO_MMD_SEP_PMA4) #define MDIO_DEVS_C22EXT MDIO_DEVS_PRESENT(MDIO_MMD_C22EXT) #define MDIO_DEVS_VEND1 MDIO_DEVS_PRESENT(MDIO_MMD_VEND1) #define MDIO_DEVS_VEND2 MDIO_DEVS_PRESENT(MDIO_MMD_VEND2) --=20 2.43.0 From nobody Wed Jun 17 01:52:45 2026 Received: from mail-qv1-f50.google.com (mail-qv1-f50.google.com [209.85.219.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9EEB243E4A6 for ; Tue, 28 Apr 2026 17:28:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777397298; cv=none; b=q/L87ShJMbQ4zgmQcgzZKaVV4XDecEGDebxIeqEroDAcJRyv679djsX/rZCASS7cK49nfUs6WuiyKGmA/JbBuZ2t4hsMfuxweTnM9rfMBCVdaL1eb/knaxl0sSs+PWl/XIWHbmNJkLdkFhnFG3mOQK+XpWuJpHseqziNRgDYxos= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777397298; c=relaxed/simple; bh=+CyEbZZ0T9f0WYppfuB5lFGjTJt8P8WMHioJ2jEjgBk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=J+2kOgorSKwKnaI0HmOfPXiPQF5USVTdc2GcQnXGT+n/bi1U555Wh21JH9ItRx4qLq4vNbjfic8wOwBM7BoE2lGrZP/RIZ/ieqYb/7p+EDnypKafBPrkxLw16eCsowK+bIo+EovGz9Cli78wUBKHRbIfsjCJI2vFSBpUCfdrSBI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=OSOumaoM; arc=none smtp.client-ip=209.85.219.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="OSOumaoM" Received: by mail-qv1-f50.google.com with SMTP id 6a1803df08f44-8a0323830beso77394116d6.0 for ; Tue, 28 Apr 2026 10:28:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777397296; x=1778002096; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=qkQzcxzDANJLoet+F0tc+63Pw984K+qaOeKMroPLmww=; b=OSOumaoMeOzJ0sIY8ymohMejfjrmSU4+XSY5+4AeD+9BaT1sBPiq4mmK9h1fZYlZU2 fi1OtemraHwoB/kW64UbFVCT8tvBMfr/SmGCmVfhTqfRQ/jVtMRTo07mGM64yRVfkwTH 8yO4Bsm8FRWF6L/nIiSBEFFMrkdvmbWFShgz0TSidyLZe7kkKDZztdEz7H77ywgelQMW zdf+WL76+/YMIKAHqYAppX90fymy9chMckDTBcXf+1iaUB0od51nOtxkL9o6cwaM72C+ 0Kkkt/apjYNu+dqChEwydkfAz17Kj2bbgfA6zrID5mwuqjAGsDmIEhZT1juty21QAAml PcVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777397296; x=1778002096; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=qkQzcxzDANJLoet+F0tc+63Pw984K+qaOeKMroPLmww=; b=MhDEMS61YslvRnfvDlOLZmNtdyt1mIqDrk8S0TO0L4cGYT5tumoRBWBt5LrkJSQYla RY3W4fBWJEw+F/uod/C5Lufb4pNGD64lkPGW3+f1At9kFDOhjKD7UIbSat37GQjQDGP/ EABCCbF4QydEF6DeH6wgfhvhMLFDjHwZ16mXmI+nzbuu4FWoOjxmHM8G66Rqrc1PLl0r DeHgGQbzd7t/MTSnYh11tYloibvD3JSRpmvUhTDzD0bgH8XYPmTFjhVqQXqOaoBao5zC Iia7sDGhX3gevmN1eduCR9+Ymi3luT1JYBxSbE6eoIgi4nh7KCy2gCebVCW04g+kcBpJ vQMg== X-Forwarded-Encrypted: i=1; AFNElJ8Ivxg5TBMrd11gF1gW27hRL47V1PjxestYqwTE9C0vMmpBDNAaueOSzgIwEyD9XJkDTVVNHmrpwUf4j8E=@vger.kernel.org X-Gm-Message-State: AOJu0YwE1doQQiZR04Q3nim1kTmSAoj0h9QTnC8d5ES1IwfJX08XY0oX 9lZAHCFCXJEcQrjIu+u6letPd3YpUkaBuFmbGIpiQ0Mjtw/wOYGVzkxF X-Gm-Gg: AeBDievyJiTY4U7wIUHAYyzXmVB1Eg/EcmDbQMKLLuWHZTfCZLNNDK25YsMjjndT2hY +t+ZL5SyVJonv2m/NApa7ZCQJDEF6iDem0qv+n4ve8nBoYlUedfG+LquqDUkilBw/M7s2/eXNVR Gh4EuklwpugVQPQk5ye7j6AVD48TN7XOrLJVUI9zAXe5C0hgDc5vc1woksDsCOkN0x8cveZmS46 KFqDmZCPINmAuctK3JQ8dJdwbaudSYKRqLoWgopGYmK2LNSdnUvscOEfbUOn4OuzzV2SwhMc0eY Zdn+9PjjnRxtxDiFYqRmdoX7eOd4nLMuXHx9vWF+45bFyKzGfgs2ChTc2ZX9qB3/qSncFYxVcjh BaI76xXaMWAhWIleDvFXMsrf82iSc3JQgjUD7wB7rxHdnQiKp4lDGU/WmuljLxVn1di2YK/yXaV G2NMxk+DMxBJe0YKjBz4tleVzaed4rwuVjz7fvKal/9kJTxT8YKL4lPH8f8uSYMuhELag= X-Received: by 2002:a05:6214:21af:b0:8ac:a57e:ec1f with SMTP id 6a1803df08f44-8b3e307a772mr65078446d6.29.1777397295547; Tue, 28 Apr 2026 10:28:15 -0700 (PDT) Received: from PF5YBGDS.localdomain ([163.114.130.7]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8b3e299d76asm26253676d6.48.2026.04.28.10.28.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Apr 2026 10:28:15 -0700 (PDT) From: mike.marciniszyn@gmail.com To: Alexander Duyck , Jakub Kicinski , kernel-team@meta.com, Andrew Lunn , "David S. Miller" , Eric Dumazet , Paolo Abeni , Heiner Kallweit , Russell King , Jacob Keller , Mohsin Bashir Cc: mike.marciniszyn@gmail.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next 3/4] net: eth: fbnic: Consolidate register reads for ids and devs Date: Tue, 28 Apr 2026 13:28:09 -0400 Message-ID: <20260428172810.175077-4-mike.marciniszyn@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260428172810.175077-1-mike.marciniszyn@gmail.com> References: <20260428172810.175077-1-mike.marciniszyn@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: "Mike Marciniszyn (Meta)" Consolidate the register reads for boiler plate registers to reduce LOC. Signed-off-by: Mike Marciniszyn (Meta) --- drivers/net/ethernet/meta/fbnic/fbnic_mdio.c | 56 ++++++++++++-------- 1 file changed, 33 insertions(+), 23 deletions(-) diff --git a/drivers/net/ethernet/meta/fbnic/fbnic_mdio.c b/drivers/net/eth= ernet/meta/fbnic/fbnic_mdio.c index d6a124889f52..18c12508a0c4 100644 --- a/drivers/net/ethernet/meta/fbnic/fbnic_mdio.c +++ b/drivers/net/ethernet/meta/fbnic/fbnic_mdio.c @@ -11,6 +11,26 @@ #define FBNIC_PCS_VENDOR BIT(9) #define FBNIC_PCS_ZERO_MASK (DW_VENDOR - FBNIC_PCS_VENDOR) =20 +static int +fbnic_mdio_ids(int id, int regnum) +{ + /* return correct IDs */ + switch (regnum) { + case MDIO_DEVID1: + return id >> 16; + case MDIO_DEVID2: + return id & 0xffff; + case MDIO_DEVS1: + return MDIO_DEVS_SEP_PMA1 | MDIO_DEVS_PMAPMD | MDIO_DEVS_PCS; + case MDIO_DEVS2: + return 0; + case MDIO_STAT2: + return MDIO_STAT2_DEVPRST_VAL; + } + + return 0; +} + static int fbnic_mdio_read_pmd(struct fbnic_dev *fbd, int addr, int regnum) { @@ -29,18 +49,6 @@ fbnic_mdio_read_pmd(struct fbnic_dev *fbd, int addr, int= regnum) } =20 switch (regnum) { - case MDIO_DEVID1: - ret =3D MP_FBNIC_XPCS_PMA_100G_ID >> 16; - break; - case MDIO_DEVID2: - ret =3D MP_FBNIC_XPCS_PMA_100G_ID & 0xffff; - break; - case MDIO_DEVS1: - ret =3D MDIO_DEVS_PMAPMD | MDIO_DEVS_PCS; - break; - case MDIO_STAT2: - ret =3D MDIO_STAT2_DEVPRST_VAL; - break; case MDIO_PMA_RXDET: /* If training isn't complete default to 0 */ if (fbd->pmd_state !=3D FBNIC_PMD_SEND_DATA) @@ -51,6 +59,7 @@ fbnic_mdio_read_pmd(struct fbnic_dev *fbd, int addr, int = regnum) (MDIO_PMD_RXDET_1 / FBNIC_AUI_MODE_R2)); break; default: + ret =3D fbnic_mdio_ids(MP_FBNIC_XPCS_PMA_100G_ID, regnum); break; } =20 @@ -75,18 +84,19 @@ fbnic_mdio_read_pcs(struct fbnic_dev *fbd, int addr, in= t regnum) return 0; =20 /* Intercept and return correct ID for PCS */ - if (regnum =3D=3D MDIO_DEVID1) - return DW_XPCS_ID >> 16; - if (regnum =3D=3D MDIO_DEVID2) - return DW_XPCS_ID & 0xffff; - if (regnum =3D=3D MDIO_DEVS1) - return MDIO_DEVS_PMAPMD | MDIO_DEVS_PCS; - - /* Swap vendor page bit for FBNIC PCS vendor page bit */ - if (regnum & DW_VENDOR) - offset ^=3D DW_VENDOR | FBNIC_PCS_VENDOR; + switch (regnum) { + case MDIO_DEVID1 ... MDIO_DEVID2: + case MDIO_DEVS1 ... MDIO_DEVS2: + ret =3D fbnic_mdio_ids(DW_XPCS_ID, regnum); + break; + default: + /* Swap vendor page bit for FBNIC PCS vendor page bit */ + if (regnum & DW_VENDOR) + offset ^=3D DW_VENDOR | FBNIC_PCS_VENDOR; =20 - ret =3D fbnic_rd32(fbd, FBNIC_PCS_PAGE(addr) + (regnum ^ offset)); + ret =3D fbnic_rd32(fbd, FBNIC_PCS_PAGE(addr) + (regnum ^ offset)); + break; + } =20 dev_dbg(fbd->dev, "SWMII PCS Rd: Addr: %d RegNum: %d Value: 0x%04x\n", --=20 2.43.0 From nobody Wed Jun 17 01:52:45 2026 Received: from mail-qk1-f174.google.com (mail-qk1-f174.google.com [209.85.222.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E358F44CAD7 for ; Tue, 28 Apr 2026 17:28:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.174 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777397299; cv=none; b=Rtd9+06Tkthoc4qcceRQeu0FdGgDbs4B5i9pOdzUaszHYqKnmtTwIWtfoQ8aht5Ov50JxCEC7/9MdFupPF9rzfLAOrVtfFAyhymaxj2ULpEEj3pL9xYJ+mLsSEltoCLcceiH7UvMnSDoJjpuhizqUCms9VLytl6CeYryuvHfyas= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777397299; c=relaxed/simple; bh=HDHSlk3KLUIPpWplLfl8Wf2wljrrBnVMe8jXLwvhSqA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=XstIuY7IVPhpp0Sc8e5yf0uILjWGI8yf1GvzDQBl4KheKQFAplBu8/iFoV2UzHhqd7XrfecfIFMAcsi/0+3APOLjaDYuQ5nd/BnmPHF0SDuEKe2ITPfaEPru0vXrKNZhBGUxdOpMtsAZSIZYF7FuZSt38rpbvTd84ip2IALyyDA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ebVff0Ad; arc=none smtp.client-ip=209.85.222.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ebVff0Ad" Received: by mail-qk1-f174.google.com with SMTP id af79cd13be357-8cb40149037so1191139185a.2 for ; Tue, 28 Apr 2026 10:28:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777397297; x=1778002097; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=zdjqUV89jaR2dHNfUhp+QYSj5dY+OQxHEYWbWKpO/FE=; b=ebVff0AdGHoWC08FQ0CctWKGvk7apeIaWk8OBqgEmw6ZoJ2o3/3Eam7q2oFrB0AhGe 4zr+tH53opazm1KfdjzZ831QTtKgjBc7iENJmqBp33inDjZFjlmnS99BRHOxLH4LFHNs bysAypyMv4U3Z5xovnqIeCs/KpbOS+n8QEb4x8qkj1yUtsWKv7Pab3jojwO/5HSkuKoO +YH3sqgazV/aoAt7WVQ8kUi74ZEXe0cnKt//JT3lZS4+9utlcjZ6qvIHoc8Z6iaTFb1Y Ztu74XoRkbclS69Wd8VKcFEpt9sO3pHrF6WI91RjcDdZ/c+iiojCq4n34W3uGrj8gBt6 9YEw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777397297; x=1778002097; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=zdjqUV89jaR2dHNfUhp+QYSj5dY+OQxHEYWbWKpO/FE=; b=rwrpxHjH2UFpVfqA9e+ul9fwBGkpZTcLNfLoWG91fJPEt8iCWZ4Bllt9kP2TzIfMDR O55Mgtf0BZkXNE+y7JnVaxl4mO/0wvc3I01CWnkssXWixbGYeH4+3WDjsCHkuG4dkAQN 7dkzKza11hhD0WQySJH9liA66TS8gG73GnCjWqeKyoep+vv6TMr9gIATT4fcYbQVSRgE 8Osur/uYu5ffYIZa2NKpmfAC7Kw93ykoxf1TOH4VdGHYSUwGXA/sanGavdz6xqbT7ILN ssFYKgMvHTqn9xbz2RYLvtUzOqhcfDgyKZ7GNca0//92Q3q/TWaoobprzOhYrqL/NOH9 XBFg== X-Forwarded-Encrypted: i=1; AFNElJ+xBt7ZEm5lcVIEDyHcyM/0Tg2Fbe3xmvdFpiuZP55woCTXKuxkcgRgPLUnhaHTu/7FVCs2H0MzL9cAOeI=@vger.kernel.org X-Gm-Message-State: AOJu0YwyQsxPZXZnwStPxw1wyyRnwPQ6mBqMhajMPf8gepFvwXEefuoF 3ZR128eP7/l/oyj99idhUv8PXknsMcHeEoaVku2ruGkt1WheC0oSsZJl X-Gm-Gg: AeBDietkL7mdokMZrPjcta1+7BDmVgOZESc/uoD/b+fgs8DzIfV9ZG6uNBmYyHzaSKh vFuc/aCCKlRSVSn2+Nmgbe+AMK0jny0aTlmY/IFzWjGj/x215Pvedaqr1XycHymBbS1lu7X8pyi wRGlDiptnSQFv+pmpproMnWI7ltvFzuIbJ0w3w2r7FX7xm38ai0Yq05AGNhMgl9caOcCnq8N9th WGQQiWkqLoCj792yV9BZcxlEA+ojW2obxfNZeFEqyDMIT1qGZt1VcF+/D1hWhHbd3CvbFd9PBwT WbUGPn/m1v9FBGW7CGEQXY2wKECzEFC4/W2UVx5jo4RzsR5B11wK2vYzD2pMrhicge1mXY+6Hhu 1qKoeOL7SKVmeaXoohAR8GFiZ2JvlV5AwwWuWaWUmJmOi4tlRK/s6A8TZYzoFNzeWAXCnwJ4lp9 7dmVFo81YQknQer1wDNN55+U7g8+rDNDBph4d5FJpJowntyqNCG8zUyPf2KT0bdXiBAEQ= X-Received: by 2002:a05:622a:580c:b0:50b:37a1:a012 with SMTP id d75a77b69052e-5100e1c6516mr55040421cf.41.1777397296798; Tue, 28 Apr 2026 10:28:16 -0700 (PDT) Received: from PF5YBGDS.localdomain ([163.114.130.7]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8b3e299d76asm26253676d6.48.2026.04.28.10.28.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Apr 2026 10:28:16 -0700 (PDT) From: mike.marciniszyn@gmail.com To: Alexander Duyck , Jakub Kicinski , kernel-team@meta.com, Andrew Lunn , "David S. Miller" , Eric Dumazet , Paolo Abeni , Heiner Kallweit , Russell King , Jacob Keller , Mohsin Bashir Cc: mike.marciniszyn@gmail.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next 4/4] net: eth: fbnic: Add pma read and write access Date: Tue, 28 Apr 2026 13:28:10 -0400 Message-ID: <20260428172810.175077-5-mike.marciniszyn@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260428172810.175077-1-mike.marciniszyn@gmail.com> References: <20260428172810.175077-1-mike.marciniszyn@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: "Mike Marciniszyn (Meta)" Document the MDIO interface topology with an ASCII diagram showing the MAC, PCS (MMD 3), FEC, Separated PMA (MMD 8), and PMD (MMD 1) blocks and their interconnects. The diagram illustrates how 4 lanes connect the MAC through PCS, FEC, and PMA, then narrow to 2 lanes at the PMD. The c45 read and write routines are enhanced to support read and write of the separated PMA for the fbnic. Co-developed-by: Alexander Duyck Signed-off-by: Alexander Duyck Signed-off-by: Mike Marciniszyn (Meta) --- drivers/net/ethernet/meta/fbnic/fbnic_csr.h | 1 + drivers/net/ethernet/meta/fbnic/fbnic_mdio.c | 71 ++++++++++++++++++++ 2 files changed, 72 insertions(+) diff --git a/drivers/net/ethernet/meta/fbnic/fbnic_csr.h b/drivers/net/ethe= rnet/meta/fbnic/fbnic_csr.h index 81794bd326e1..64b958df7774 100644 --- a/drivers/net/ethernet/meta/fbnic/fbnic_csr.h +++ b/drivers/net/ethernet/meta/fbnic/fbnic_csr.h @@ -805,6 +805,7 @@ enum { #define FBNIC_CSR_END_PCS 0x10668 /* CSR section delimiter */ =20 #define FBNIC_CSR_START_RSFEC 0x10800 /* CSR section delimiter */ +#define FBNIC_RSFEC_CONTROL(n) (0x10800 + 8 * (n)) /* 0x42000 + 32*n */ =20 /* We have 4 RSFEC engines present in our part, however we are only using = 1. * As such only CCW(0) and NCCW(0) will never be non-zero and the other diff --git a/drivers/net/ethernet/meta/fbnic/fbnic_mdio.c b/drivers/net/eth= ernet/meta/fbnic/fbnic_mdio.c index 18c12508a0c4..b01ca40e8a44 100644 --- a/drivers/net/ethernet/meta/fbnic/fbnic_mdio.c +++ b/drivers/net/ethernet/meta/fbnic/fbnic_mdio.c @@ -7,6 +7,25 @@ #include "fbnic.h" #include "fbnic_netdev.h" =20 +/* fbnic MDIO Interface Layout + * + * +-------------------+ + * | MAC | + * +-------------------+ + * | | | | <-- 25GMII, 50GMII, or CGMII + * +-------------------+ + * MMD 3 | PCS | + * +-------------------+ + * | FEC | + * +-------------------+ + * MMD 8 | Separated PMA | + * +-------------------+ + * | | <-- PMD Service Interface + * +-------------------+ + * MMD 1 | PMD | + * +-------------------+ + */ + #define DW_VENDOR BIT(15) #define FBNIC_PCS_VENDOR BIT(9) #define FBNIC_PCS_ZERO_MASK (DW_VENDOR - FBNIC_PCS_VENDOR) @@ -105,6 +124,32 @@ fbnic_mdio_read_pcs(struct fbnic_dev *fbd, int addr, i= nt regnum) return ret; } =20 +static int +fbnic_mdio_read_pma(struct fbnic_dev *fbd, int addr, int regnum) +{ + int ret =3D 0; + + /* We will need access to both PMA instances to get config info */ + if (addr >=3D 2) + return 0; + + switch (regnum) { + case MDIO_PMA_RSFEC_CTRL ... MDIO_PMA_RSFEC_LANE_MAP: + ret =3D fbnic_rd32(fbd, FBNIC_RSFEC_CONTROL(addr) + + regnum - MDIO_PMA_RSFEC_CTRL); + break; + default: + ret =3D fbnic_mdio_ids(MP_FBNIC_XPCS_PMA_100G_ID, regnum); + break; + } + + dev_dbg(fbd->dev, + "SWMII PMA Rd: Addr: %d RegNum: %d Value: 0x%04x\n", + addr, regnum, ret); + + return ret; +} + static int fbnic_mdio_read_c45(struct mii_bus *bus, int addr, int devnum, int regnum) { @@ -116,6 +161,9 @@ fbnic_mdio_read_c45(struct mii_bus *bus, int addr, int = devnum, int regnum) if (devnum =3D=3D MDIO_MMD_PCS) return fbnic_mdio_read_pcs(fbd, addr, regnum); =20 + if (devnum =3D=3D MDIO_MMD_SEP_PMA1) + return fbnic_mdio_read_pma(fbd, addr, regnum); + return 0; } =20 @@ -149,6 +197,26 @@ fbnic_mdio_write_pcs(struct fbnic_dev *fbd, int addr, = int regnum, u16 val) fbnic_wr32(fbd, FBNIC_PCS_PAGE(addr) + regnum, val); } =20 +static void +fbnic_mdio_write_pma(struct fbnic_dev *fbd, int addr, int regnum, u16 val) +{ + dev_dbg(fbd->dev, + "SWMII PMA Wr: Addr: %d RegNum: %d Value: 0x%04x\n", + addr, regnum, val); + + if (addr >=3D 2) + return; + + switch (regnum) { + case MDIO_PMA_RSFEC_CTRL ... MDIO_PMA_RSFEC_LANE_MAP: + fbnic_wr32(fbd, FBNIC_RSFEC_CONTROL(addr) + + regnum - MDIO_PMA_RSFEC_CTRL, val); + break; + default: + break; + } +} + static int fbnic_mdio_write_c45(struct mii_bus *bus, int addr, int devnum, int regnum, u16 val) @@ -161,6 +229,9 @@ fbnic_mdio_write_c45(struct mii_bus *bus, int addr, int= devnum, if (devnum =3D=3D MDIO_MMD_PCS) fbnic_mdio_write_pcs(fbd, addr, regnum, val); =20 + if (devnum =3D=3D MDIO_MMD_SEP_PMA1) + fbnic_mdio_write_pma(fbd, addr, regnum, val); + return 0; } =20 --=20 2.43.0