From nobody Thu Nov 14 07:08:12 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8DDE1C46467 for ; Thu, 19 Jan 2023 13:09:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231194AbjASNJC (ORCPT ); Thu, 19 Jan 2023 08:09:02 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48630 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230391AbjASNIF (ORCPT ); Thu, 19 Jan 2023 08:08:05 -0500 Received: from mail.3ffe.de (0001.3ffe.de [159.69.201.130]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 910E95F3A5; Thu, 19 Jan 2023 05:08:00 -0800 (PST) Received: from mwalle01.kontron.local. (unknown [213.135.10.150]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mail.3ffe.de (Postfix) with ESMTPSA id 4F8C518D8; Thu, 19 Jan 2023 14:07:58 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=walle.cc; s=mail2022082101; t=1674133678; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=khuF9D5aRrU+RqS5yxEYYs8dKhh0RK9DJlZz4Fdm+kU=; b=ELaQzDQS/Rb8IAB9R0Pt+rIRCMsEkAtSuwUypOhzEYItq8wf5369kWuR3b1vmg/r7hqSXq jrzs/i2jaDREjQI+27CQpIrMmgERRMP8mPnjtB6gnkma/7Q8z3r586D0X0yj6MYPVI/guN dFxfFIVmDq1JyKHS5rTkjoUM8S9Y02KS5A+K3BVFI4xYCNXoQc/wiaKvsrLJNM+HzmAbts Mrtgx/u7YFnMyB42Y2ZmYxQGn02c8oJX8s5BSx+kCkmpVdWHA5Rxoi6xj8IiTwzWdUeb2Y KjSAmnVlGA8Wtmk1B2LBtx1KeQ6RimYPHHgIUwGqCrBCT2PNkj+o9vj9RbjntQ== From: Michael Walle To: Woojung Huh , UNGLinuxDriver@microchip.com, Andrew Lunn , Florian Fainelli , Vladimir Oltean , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , =?UTF-8?q?Cl=C3=A9ment=20L=C3=A9ger?= , =?UTF-8?q?Andreas=20F=C3=A4rber?= , Manivannan Sadhasivam , Felix Fietkau , John Crispin , Sean Wang , Mark Lee , Lorenzo Bianconi , Matthias Brugger , Wells Lu , Jiawen Wu , Mengyuan Lou , Heiner Kallweit , Russell King , Tobias Waldekranz Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-actions@lists.infradead.org, linux-mediatek@lists.infradead.org, Michael Walle Subject: [PATCH RESEND net-next 1/4] net: phy: Remove fallback to old C45 method Date: Thu, 19 Jan 2023 14:06:57 +0100 Message-Id: <20230119130700.440601-2-michael@walle.cc> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230119130700.440601-1-michael@walle.cc> References: <20230119130700.440601-1-michael@walle.cc> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Spam: Yes Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Andrew Lunn Now that all MDIO bus drivers which support C45 implement the c45 specific ops, remove the fallback to the old method. Signed-off-by: Andrew Lunn Signed-off-by: Michael Walle Reviewed-by: Russell King (Oracle) --- drivers/net/phy/mdio_bus.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/drivers/net/phy/mdio_bus.c b/drivers/net/phy/mdio_bus.c index 132dd1f905f4..f5e319549f67 100644 --- a/drivers/net/phy/mdio_bus.c +++ b/drivers/net/phy/mdio_bus.c @@ -844,11 +844,6 @@ int __mdiobus_modify_changed(struct mii_bus *bus, int = addr, u32 regnum, } EXPORT_SYMBOL_GPL(__mdiobus_modify_changed); =20 -static u32 mdiobus_c45_addr(int devad, u16 regnum) -{ - return MII_ADDR_C45 | devad << MII_DEVADDR_C45_SHIFT | regnum; -} - /** * __mdiobus_c45_read - Unlocked version of the mdiobus_c45_read function * @bus: the mii_bus struct @@ -869,7 +864,7 @@ int __mdiobus_c45_read(struct mii_bus *bus, int addr, i= nt devad, u32 regnum) if (bus->read_c45) retval =3D bus->read_c45(bus, addr, devad, regnum); else - retval =3D bus->read(bus, addr, mdiobus_c45_addr(devad, regnum)); + retval =3D -EOPNOTSUPP; =20 trace_mdio_access(bus, 1, addr, regnum, retval, retval); mdiobus_stats_acct(&bus->stats[addr], true, retval); @@ -900,8 +895,7 @@ int __mdiobus_c45_write(struct mii_bus *bus, int addr, = int devad, u32 regnum, if (bus->write_c45) err =3D bus->write_c45(bus, addr, devad, regnum, val); else - err =3D bus->write(bus, addr, mdiobus_c45_addr(devad, regnum), - val); + err =3D -EOPNOTSUPP; =20 trace_mdio_access(bus, 0, addr, regnum, val, err); mdiobus_stats_acct(&bus->stats[addr], false, err); --=20 2.30.2 From nobody Thu Nov 14 07:08:12 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id C7721C004D4 for ; Thu, 19 Jan 2023 13:09:08 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230268AbjASNJH (ORCPT ); Thu, 19 Jan 2023 08:09:07 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47604 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230463AbjASNIF (ORCPT ); Thu, 19 Jan 2023 08:08:05 -0500 Received: from mail.3ffe.de (0001.3ffe.de [IPv6:2a01:4f8:c0c:9d57::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 57AD2613C1; Thu, 19 Jan 2023 05:08:01 -0800 (PST) Received: from mwalle01.kontron.local. (unknown [213.135.10.150]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mail.3ffe.de (Postfix) with ESMTPSA id 17FA41A00; Thu, 19 Jan 2023 14:07:59 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=walle.cc; s=mail2022082101; t=1674133679; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=8ucNqQrBv58FmJgsbqN8x3M/G1cfrpq7tqtLwGp8Zts=; b=BO/W7ryvR8JDotAf4gWdeS8Dhl59cGsFoi2/VnxatK00UV12d84+KVEVwGfDL8trZQBnc+ 49hLDoUSNcQCQtN4ZVeOAI0dyEb+tNHVH1L8GNuYlK+07FEsRD3IRwEQZ5B/adTcnrzazY HmDIqU/fUL97iMbwdSjzRRA0kOypKtd15rrc/7qZAdyJRUQumxYBxBGm6d53iZtp4z6V3n HwP+BjH8gf176YsJHMPazgLiq1kx4TNoXJTop86c7QkTOAueyZsuTW7tzMcpeJRYRRXmkH RV1t7L68Q23HalVppN3uKO0DLIapfih8QyyqhJ5svBPlhCLRnlxVS4vNivCqiQ== From: Michael Walle To: Woojung Huh , UNGLinuxDriver@microchip.com, Andrew Lunn , Florian Fainelli , Vladimir Oltean , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , =?UTF-8?q?Cl=C3=A9ment=20L=C3=A9ger?= , =?UTF-8?q?Andreas=20F=C3=A4rber?= , Manivannan Sadhasivam , Felix Fietkau , John Crispin , Sean Wang , Mark Lee , Lorenzo Bianconi , Matthias Brugger , Wells Lu , Jiawen Wu , Mengyuan Lou , Heiner Kallweit , Russell King , Tobias Waldekranz Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-actions@lists.infradead.org, linux-mediatek@lists.infradead.org, Michael Walle Subject: [PATCH RESEND net-next 2/4] net: ngbe: Drop mdiobus_c45_regad() Date: Thu, 19 Jan 2023 14:06:58 +0100 Message-Id: <20230119130700.440601-3-michael@walle.cc> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230119130700.440601-1-michael@walle.cc> References: <20230119130700.440601-1-michael@walle.cc> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Spam: Yes Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" With the new C45 MDIO access API, there is no encoding of the register number anymore and thus the masking isn't necessary anymore. Remove it. Signed-off-by: Michael Walle Reviewed-by: Russell King (Oracle) --- drivers/net/ethernet/wangxun/ngbe/ngbe_mdio.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/wangxun/ngbe/ngbe_mdio.c b/drivers/net/et= hernet/wangxun/ngbe/ngbe_mdio.c index ba33a57b42c2..c9ddbbc3fa4f 100644 --- a/drivers/net/ethernet/wangxun/ngbe/ngbe_mdio.c +++ b/drivers/net/ethernet/wangxun/ngbe/ngbe_mdio.c @@ -92,7 +92,7 @@ static int ngbe_phy_read_reg_mdi_c45(struct mii_bus *bus,= int phy_addr, int devn =20 wr32(wx, NGBE_MDIO_CLAUSE_SELECT, 0x0); /* setup and write the address cycle command */ - command =3D NGBE_MSCA_RA(mdiobus_c45_regad(regnum)) | + command =3D NGBE_MSCA_RA(regnum) | NGBE_MSCA_PA(phy_addr) | NGBE_MSCA_DA(devnum); wr32(wx, NGBE_MSCA, command); @@ -121,7 +121,7 @@ static int ngbe_phy_write_reg_mdi_c45(struct mii_bus *b= us, int phy_addr, =20 wr32(wx, NGBE_MDIO_CLAUSE_SELECT, 0x0); /* setup and write the address cycle command */ - command =3D NGBE_MSCA_RA(mdiobus_c45_regad(regnum)) | + command =3D NGBE_MSCA_RA(regnum) | NGBE_MSCA_PA(phy_addr) | NGBE_MSCA_DA(devnum); wr32(wx, NGBE_MSCA, command); --=20 2.30.2 From nobody Thu Nov 14 07:08:12 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id CC271C00A5A for ; Thu, 19 Jan 2023 13:09:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231209AbjASNJL (ORCPT ); Thu, 19 Jan 2023 08:09:11 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48670 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229900AbjASNIF (ORCPT ); Thu, 19 Jan 2023 08:08:05 -0500 Received: from mail.3ffe.de (0001.3ffe.de [159.69.201.130]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4CD4261896; Thu, 19 Jan 2023 05:08:02 -0800 (PST) Received: from mwalle01.kontron.local. (unknown [213.135.10.150]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mail.3ffe.de (Postfix) with ESMTPSA id CE88C1A07; Thu, 19 Jan 2023 14:07:59 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=walle.cc; s=mail2022082101; t=1674133680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=KB9q2klnkcEtMLmw33Oo0QuC0liZTfwwOM7ryE/7LOs=; b=W3xTjohztJGbXmy3C4u8IpeO8WIju8y6jS2QjgV3yMJCcfEXSd3ETq7Z4OZhilXOOdMzmu 2+FxZ9xPwbZnvOSBQl2UxSX83+1u50X728rQuuGR4OLvs0i/zqvShDClDGNiuFheptSiXD DfFlCJh3lPXpvvyPuraZEMn+PBB2FgovkCTsx01k82hbUB4erF0wAJsX1HHp5H4bUcZn89 3U4w72R4WseRtujUm8DPMxwXj07OZey/1a5d43QQ/xEdnyBBgNCiOwVICGYlMWqeSq0KKQ aJ7sxUSDqqgiEALb31v+Mqu+8Wp1yhNM5TYHyaqfdJ0/b4jGLwFrmZ4anjOHOA== From: Michael Walle To: Woojung Huh , UNGLinuxDriver@microchip.com, Andrew Lunn , Florian Fainelli , Vladimir Oltean , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , =?UTF-8?q?Cl=C3=A9ment=20L=C3=A9ger?= , =?UTF-8?q?Andreas=20F=C3=A4rber?= , Manivannan Sadhasivam , Felix Fietkau , John Crispin , Sean Wang , Mark Lee , Lorenzo Bianconi , Matthias Brugger , Wells Lu , Jiawen Wu , Mengyuan Lou , Heiner Kallweit , Russell King , Tobias Waldekranz Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-actions@lists.infradead.org, linux-mediatek@lists.infradead.org, Michael Walle Subject: [PATCH RESEND net-next 3/4] net: Remove C45 check in C22 only MDIO bus drivers Date: Thu, 19 Jan 2023 14:06:59 +0100 Message-Id: <20230119130700.440601-4-michael@walle.cc> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230119130700.440601-1-michael@walle.cc> References: <20230119130700.440601-1-michael@walle.cc> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Spam: Yes Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Andrew Lunn The MDIO core should not pass a C45 request via the C22 API call any more. So remove the tests from the drivers. Signed-off-by: Andrew Lunn Signed-off-by: Michael Walle Reviewed-by: Russell King (Oracle) --- drivers/net/dsa/microchip/ksz_common.c | 6 ------ drivers/net/dsa/rzn1_a5psw.c | 6 ------ drivers/net/dsa/sja1105/sja1105_mdio.c | 6 ------ drivers/net/ethernet/actions/owl-emac.c | 6 ------ drivers/net/ethernet/engleder/tsnep_main.c | 6 ------ drivers/net/ethernet/marvell/mvmdio.c | 6 ------ drivers/net/ethernet/mediatek/mtk_star_emac.c | 6 ------ .../net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_mdio.c | 6 ------ drivers/net/ethernet/sunplus/spl2sw_mdio.c | 6 ------ drivers/net/mdio/mdio-i2c.c | 6 ------ drivers/net/mdio/mdio-ipq8064.c | 8 -------- drivers/net/mdio/mdio-mscc-miim.c | 6 ------ drivers/net/mdio/mdio-mvusb.c | 6 ------ 13 files changed, 80 deletions(-) diff --git a/drivers/net/dsa/microchip/ksz_common.c b/drivers/net/dsa/micro= chip/ksz_common.c index 5e1e5bd555d2..28d26e80e256 100644 --- a/drivers/net/dsa/microchip/ksz_common.c +++ b/drivers/net/dsa/microchip/ksz_common.c @@ -1777,9 +1777,6 @@ static int ksz_sw_mdio_read(struct mii_bus *bus, int = addr, int regnum) u16 val; int ret; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - ret =3D dev->dev_ops->r_phy(dev, addr, regnum, &val); if (ret < 0) return ret; @@ -1792,9 +1789,6 @@ static int ksz_sw_mdio_write(struct mii_bus *bus, int= addr, int regnum, { struct ksz_device *dev =3D bus->priv; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - return dev->dev_ops->w_phy(dev, addr, regnum, val); } =20 diff --git a/drivers/net/dsa/rzn1_a5psw.c b/drivers/net/dsa/rzn1_a5psw.c index ed413d555bec..919027cf2012 100644 --- a/drivers/net/dsa/rzn1_a5psw.c +++ b/drivers/net/dsa/rzn1_a5psw.c @@ -781,9 +781,6 @@ static int a5psw_mdio_read(struct mii_bus *bus, int phy= _id, int phy_reg) u32 cmd, status; int ret; =20 - if (phy_reg & MII_ADDR_C45) - return -EOPNOTSUPP; - cmd =3D A5PSW_MDIO_COMMAND_READ; cmd |=3D FIELD_PREP(A5PSW_MDIO_COMMAND_REG_ADDR, phy_reg); cmd |=3D FIELD_PREP(A5PSW_MDIO_COMMAND_PHY_ADDR, phy_id); @@ -809,9 +806,6 @@ static int a5psw_mdio_write(struct mii_bus *bus, int ph= y_id, int phy_reg, struct a5psw *a5psw =3D bus->priv; u32 cmd; =20 - if (phy_reg & MII_ADDR_C45) - return -EOPNOTSUPP; - cmd =3D FIELD_PREP(A5PSW_MDIO_COMMAND_REG_ADDR, phy_reg); cmd |=3D FIELD_PREP(A5PSW_MDIO_COMMAND_PHY_ADDR, phy_id); =20 diff --git a/drivers/net/dsa/sja1105/sja1105_mdio.c b/drivers/net/dsa/sja11= 05/sja1105_mdio.c index 2fcb601cb4eb..01f1cb719042 100644 --- a/drivers/net/dsa/sja1105/sja1105_mdio.c +++ b/drivers/net/dsa/sja1105/sja1105_mdio.c @@ -235,9 +235,6 @@ static int sja1105_base_tx_mdio_read(struct mii_bus *bu= s, int phy, int reg) u32 tmp; int rc; =20 - if (reg & MII_ADDR_C45) - return -EOPNOTSUPP; - rc =3D sja1105_xfer_u32(priv, SPI_READ, regs->mdio_100base_tx + reg, &tmp, NULL); if (rc < 0) @@ -254,9 +251,6 @@ static int sja1105_base_tx_mdio_write(struct mii_bus *b= us, int phy, int reg, const struct sja1105_regs *regs =3D priv->info->regs; u32 tmp =3D val; =20 - if (reg & MII_ADDR_C45) - return -EOPNOTSUPP; - return sja1105_xfer_u32(priv, SPI_WRITE, regs->mdio_100base_tx + reg, &tmp, NULL); } diff --git a/drivers/net/ethernet/actions/owl-emac.c b/drivers/net/ethernet= /actions/owl-emac.c index cd4d71b83c33..c6f8f852bff1 100644 --- a/drivers/net/ethernet/actions/owl-emac.c +++ b/drivers/net/ethernet/actions/owl-emac.c @@ -1275,9 +1275,6 @@ static int owl_emac_mdio_read(struct mii_bus *bus, in= t addr, int regnum) u32 data, tmp; int ret; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - data =3D OWL_EMAC_BIT_MAC_CSR10_SB; data |=3D OWL_EMAC_VAL_MAC_CSR10_OPCODE_RD << OWL_EMAC_OFF_MAC_CSR10_OPCO= DE; =20 @@ -1305,9 +1302,6 @@ owl_emac_mdio_write(struct mii_bus *bus, int addr, in= t regnum, u16 val) struct owl_emac_priv *priv =3D bus->priv; u32 data, tmp; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - data =3D OWL_EMAC_BIT_MAC_CSR10_SB; data |=3D OWL_EMAC_VAL_MAC_CSR10_OPCODE_WR << OWL_EMAC_OFF_MAC_CSR10_OPCO= DE; =20 diff --git a/drivers/net/ethernet/engleder/tsnep_main.c b/drivers/net/ether= net/engleder/tsnep_main.c index 5a909c1c11bc..e9dfefba5973 100644 --- a/drivers/net/ethernet/engleder/tsnep_main.c +++ b/drivers/net/ethernet/engleder/tsnep_main.c @@ -130,9 +130,6 @@ static int tsnep_mdiobus_read(struct mii_bus *bus, int = addr, int regnum) u32 md; int retval; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - md =3D ECM_MD_READ; if (!adapter->suppress_preamble) md |=3D ECM_MD_PREAMBLE; @@ -154,9 +151,6 @@ static int tsnep_mdiobus_write(struct mii_bus *bus, int= addr, int regnum, u32 md; int retval; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - md =3D ECM_MD_WRITE; if (!adapter->suppress_preamble) md |=3D ECM_MD_PREAMBLE; diff --git a/drivers/net/ethernet/marvell/mvmdio.c b/drivers/net/ethernet/m= arvell/mvmdio.c index 2d654a40af13..8662543ca5c8 100644 --- a/drivers/net/ethernet/marvell/mvmdio.c +++ b/drivers/net/ethernet/marvell/mvmdio.c @@ -146,9 +146,6 @@ static int orion_mdio_smi_read(struct mii_bus *bus, int= mii_id, u32 val; int ret; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - ret =3D orion_mdio_wait_ready(&orion_mdio_smi_ops, bus); if (ret < 0) return ret; @@ -177,9 +174,6 @@ static int orion_mdio_smi_write(struct mii_bus *bus, in= t mii_id, struct orion_mdio_dev *dev =3D bus->priv; int ret; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - ret =3D orion_mdio_wait_ready(&orion_mdio_smi_ops, bus); if (ret < 0) return ret; diff --git a/drivers/net/ethernet/mediatek/mtk_star_emac.c b/drivers/net/et= hernet/mediatek/mtk_star_emac.c index 7050351250b7..02c03325911f 100644 --- a/drivers/net/ethernet/mediatek/mtk_star_emac.c +++ b/drivers/net/ethernet/mediatek/mtk_star_emac.c @@ -1378,9 +1378,6 @@ static int mtk_star_mdio_read(struct mii_bus *mii, in= t phy_id, int regnum) unsigned int val, data; int ret; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - mtk_star_mdio_rwok_clear(priv); =20 val =3D (regnum << MTK_STAR_OFF_PHY_CTRL0_PREG); @@ -1407,9 +1404,6 @@ static int mtk_star_mdio_write(struct mii_bus *mii, i= nt phy_id, struct mtk_star_priv *priv =3D mii->priv; unsigned int val; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - mtk_star_mdio_rwok_clear(priv); =20 val =3D data; diff --git a/drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_mdio.c b/d= rivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_mdio.c index 7ac06fd31011..654190263535 100644 --- a/drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_mdio.c +++ b/drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_mdio.c @@ -213,9 +213,6 @@ static int mlxbf_gige_mdio_read(struct mii_bus *bus, in= t phy_add, int phy_reg) int ret; u32 val; =20 - if (phy_reg & MII_ADDR_C45) - return -EOPNOTSUPP; - /* Send mdio read request */ cmd =3D mlxbf_gige_mdio_create_cmd(priv->mdio_gw, 0, phy_add, phy_reg, MLXBF_GIGE_MDIO_CL22_READ); @@ -249,9 +246,6 @@ static int mlxbf_gige_mdio_write(struct mii_bus *bus, i= nt phy_add, u32 cmd; int ret; =20 - if (phy_reg & MII_ADDR_C45) - return -EOPNOTSUPP; - /* Send mdio write request */ cmd =3D mlxbf_gige_mdio_create_cmd(priv->mdio_gw, val, phy_add, phy_reg, MLXBF_GIGE_MDIO_CL22_WRITE); diff --git a/drivers/net/ethernet/sunplus/spl2sw_mdio.c b/drivers/net/ether= net/sunplus/spl2sw_mdio.c index 733ae1704269..c8ef17e34f3c 100644 --- a/drivers/net/ethernet/sunplus/spl2sw_mdio.c +++ b/drivers/net/ethernet/sunplus/spl2sw_mdio.c @@ -61,9 +61,6 @@ static int spl2sw_mii_read(struct mii_bus *bus, int addr,= int regnum) { struct spl2sw_common *comm =3D bus->priv; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - return spl2sw_mdio_access(comm, SPL2SW_MDIO_READ_CMD, addr, regnum, 0); } =20 @@ -72,9 +69,6 @@ static int spl2sw_mii_write(struct mii_bus *bus, int addr= , int regnum, u16 val) struct spl2sw_common *comm =3D bus->priv; int ret; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - ret =3D spl2sw_mdio_access(comm, SPL2SW_MDIO_WRITE_CMD, addr, regnum, val= ); if (ret < 0) return ret; diff --git a/drivers/net/mdio/mdio-i2c.c b/drivers/net/mdio/mdio-i2c.c index 9577a1842997..1e0c206d0f2e 100644 --- a/drivers/net/mdio/mdio-i2c.c +++ b/drivers/net/mdio/mdio-i2c.c @@ -297,9 +297,6 @@ static int i2c_mii_read_rollball(struct mii_bus *bus, i= nt phy_id, int reg) int bus_addr, ret; u16 val; =20 - if (!(reg & MII_ADDR_C45)) - return -EOPNOTSUPP; - bus_addr =3D i2c_mii_phy_addr(phy_id); if (bus_addr !=3D ROLLBALL_PHY_I2C_ADDR) return 0xffff; @@ -331,9 +328,6 @@ static int i2c_mii_write_rollball(struct mii_bus *bus, = int phy_id, int reg, int bus_addr, ret; u8 buf[6]; =20 - if (!(reg & MII_ADDR_C45)) - return -EOPNOTSUPP; - bus_addr =3D i2c_mii_phy_addr(phy_id); if (bus_addr !=3D ROLLBALL_PHY_I2C_ADDR) return 0; diff --git a/drivers/net/mdio/mdio-ipq8064.c b/drivers/net/mdio/mdio-ipq806= 4.c index 37e0d8b6da07..fd9716960106 100644 --- a/drivers/net/mdio/mdio-ipq8064.c +++ b/drivers/net/mdio/mdio-ipq8064.c @@ -57,10 +57,6 @@ ipq8064_mdio_read(struct mii_bus *bus, int phy_addr, int= reg_offset) u32 ret_val; int err; =20 - /* Reject clause 45 */ - if (reg_offset & MII_ADDR_C45) - return -EOPNOTSUPP; - miiaddr |=3D ((phy_addr << MII_ADDR_SHIFT) & MII_ADDR_MASK) | ((reg_offset << MII_REG_SHIFT) & MII_REG_MASK); =20 @@ -81,10 +77,6 @@ ipq8064_mdio_write(struct mii_bus *bus, int phy_addr, in= t reg_offset, u16 data) u32 miiaddr =3D MII_WRITE | MII_BUSY | MII_CLKRANGE_250_300M; struct ipq8064_mdio *priv =3D bus->priv; =20 - /* Reject clause 45 */ - if (reg_offset & MII_ADDR_C45) - return -EOPNOTSUPP; - regmap_write(priv->base, MII_DATA_REG_ADDR, data); =20 miiaddr |=3D ((phy_addr << MII_ADDR_SHIFT) & MII_ADDR_MASK) | diff --git a/drivers/net/mdio/mdio-mscc-miim.c b/drivers/net/mdio/mdio-mscc= -miim.c index 51f68daac152..c87e991d1a17 100644 --- a/drivers/net/mdio/mdio-mscc-miim.c +++ b/drivers/net/mdio/mdio-mscc-miim.c @@ -108,9 +108,6 @@ static int mscc_miim_read(struct mii_bus *bus, int mii_= id, int regnum) u32 val; int ret; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - ret =3D mscc_miim_wait_pending(bus); if (ret) goto out; @@ -154,9 +151,6 @@ static int mscc_miim_write(struct mii_bus *bus, int mii= _id, struct mscc_miim_dev *miim =3D bus->priv; int ret; =20 - if (regnum & MII_ADDR_C45) - return -EOPNOTSUPP; - ret =3D mscc_miim_wait_pending(bus); if (ret < 0) goto out; diff --git a/drivers/net/mdio/mdio-mvusb.c b/drivers/net/mdio/mdio-mvusb.c index d5eabddfdf51..68fc55906e78 100644 --- a/drivers/net/mdio/mdio-mvusb.c +++ b/drivers/net/mdio/mdio-mvusb.c @@ -34,9 +34,6 @@ static int mvusb_mdio_read(struct mii_bus *mdio, int dev,= int reg) struct mvusb_mdio *mvusb =3D mdio->priv; int err, alen; =20 - if (dev & MII_ADDR_C45) - return -EOPNOTSUPP; - mvusb->buf[MVUSB_CMD_ADDR] =3D cpu_to_le16(0xa400 | (dev << 5) | reg); =20 err =3D usb_bulk_msg(mvusb->udev, usb_sndbulkpipe(mvusb->udev, 2), @@ -57,9 +54,6 @@ static int mvusb_mdio_write(struct mii_bus *mdio, int dev= , int reg, u16 val) struct mvusb_mdio *mvusb =3D mdio->priv; int alen; =20 - if (dev & MII_ADDR_C45) - return -EOPNOTSUPP; - mvusb->buf[MVUSB_CMD_ADDR] =3D cpu_to_le16(0x8000 | (dev << 5) | reg); mvusb->buf[MVUSB_CMD_VAL] =3D cpu_to_le16(val); =20 --=20 2.30.2 From nobody Thu Nov 14 07:08:12 2024 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id CBD79C00A5A for ; Thu, 19 Jan 2023 13:09:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231215AbjASNJR (ORCPT ); Thu, 19 Jan 2023 08:09:17 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47966 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230482AbjASNIF (ORCPT ); Thu, 19 Jan 2023 08:08:05 -0500 Received: from mail.3ffe.de (0001.3ffe.de [159.69.201.130]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1A39366ECF; Thu, 19 Jan 2023 05:08:02 -0800 (PST) Received: from mwalle01.kontron.local. (unknown [213.135.10.150]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mail.3ffe.de (Postfix) with ESMTPSA id 95AB41A20; Thu, 19 Jan 2023 14:08:00 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=walle.cc; s=mail2022082101; t=1674133680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=mcR19n1jDxBUupnqYv6z29UpOBYVbpXsCvGX6v7zcG0=; b=NDLWWYBkTVutRYnfjXhxKtQozJCPobbGKm41FWp+lv8xA3rDIuiWCWKrv9GVJp96TIMats YGVT1PCNvNvAIQpAdLGx1udVKsm/uaFfQrMU/5uVfVmvD3+ysuMEyqVFm3RHlurOjDsJ8g 6DrjmliJLYEjoFZ/xuPUk1XOT5nPSnI6HQT5wYO2ZMgmp9YMp1xXc1ievjfY6aBoenlMG4 RFIcC+hEwPLqaFh2rM6rWXHcUZrCon7GsHMb7GGg2DDO+m7QkAg64xnEED8KniBp6RUcoU Echz3WDK71FeMKCMeY2fhmEn9LtTglFMY14GzppjgyQVDldVqeq3X4v5Ln+Njg== From: Michael Walle To: Woojung Huh , UNGLinuxDriver@microchip.com, Andrew Lunn , Florian Fainelli , Vladimir Oltean , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , =?UTF-8?q?Cl=C3=A9ment=20L=C3=A9ger?= , =?UTF-8?q?Andreas=20F=C3=A4rber?= , Manivannan Sadhasivam , Felix Fietkau , John Crispin , Sean Wang , Mark Lee , Lorenzo Bianconi , Matthias Brugger , Wells Lu , Jiawen Wu , Mengyuan Lou , Heiner Kallweit , Russell King , Tobias Waldekranz Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-actions@lists.infradead.org, linux-mediatek@lists.infradead.org, Michael Walle Subject: [PATCH RESEND net-next 4/4] net: mdio: Remove support for building C45 muxed addresses Date: Thu, 19 Jan 2023 14:07:00 +0100 Message-Id: <20230119130700.440601-5-michael@walle.cc> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20230119130700.440601-1-michael@walle.cc> References: <20230119130700.440601-1-michael@walle.cc> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Spam: Yes Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Andrew Lunn The old way of performing a C45 bus transfer created a special register value and passed it to the MDIO bus driver, in the hope it would see the MII_ADDR_C45 bit set, and perform a C45 transfer. Now that there is a clear separation of C22 and C45, this scheme is no longer used. Remove all the #defines and helpers, to prevent any code being added which tries to use it. Signed-off-by: Andrew Lunn Signed-off-by: Michael Walle Reviewed-by: Russell King (Oracle) --- include/linux/mdio.h | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/include/linux/mdio.h b/include/linux/mdio.h index 220f3ca8702d..c0da30d63b1d 100644 --- a/include/linux/mdio.h +++ b/include/linux/mdio.h @@ -10,14 +10,6 @@ #include #include =20 -/* Or MII_ADDR_C45 into regnum for read/write on mii_bus to enable the 21 = bit - * IEEE 802.3ae clause 45 addressing mode used by 10GIGE phy chips. - */ -#define MII_ADDR_C45 (1<<30) -#define MII_DEVADDR_C45_SHIFT 16 -#define MII_DEVADDR_C45_MASK GENMASK(20, 16) -#define MII_REGADDR_C45_MASK GENMASK(15, 0) - struct gpio_desc; struct mii_bus; struct reset_control; @@ -463,16 +455,6 @@ static inline int mdiodev_modify_changed(struct mdio_d= evice *mdiodev, mask, set); } =20 -static inline u16 mdiobus_c45_regad(u32 regnum) -{ - return FIELD_GET(MII_REGADDR_C45_MASK, regnum); -} - -static inline u16 mdiobus_c45_devad(u32 regnum) -{ - return FIELD_GET(MII_DEVADDR_C45_MASK, regnum); -} - static inline int mdiodev_c45_modify(struct mdio_device *mdiodev, int deva= d, u32 regnum, u16 mask, u16 set) { --=20 2.30.2