[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200314214800.GF8622@lunn.ch>
Date: Sat, 14 Mar 2020 22:48:00 +0100
From: Andrew Lunn <andrew@...n.ch>
To: Russell King <rmk+kernel@...linux.org.uk>
Cc: Florian Fainelli <f.fainelli@...il.com>,
Heiner Kallweit <hkallweit1@...il.com>,
"David S. Miller" <davem@...emloft.net>, netdev@...r.kernel.org
Subject: Re: [PATCH net-next 3/3] net: phylink: pcs: add 802.3 clause 45
helpers
On Sat, Mar 14, 2020 at 10:31:34AM +0000, Russell King wrote:
> Implement helpers for PCS accessed via the MII bus using 802.3 clause
> 45 cycles for 10GBASE-R. Only link up/down is supported, 10G full
> duplex is assumed.
>
> Signed-off-by: Russell King <rmk+kernel@...linux.org.uk>
> ---
> drivers/net/phy/phylink.c | 30 ++++++++++++++++++++++++++++++
> include/linux/phylink.h | 2 ++
> 2 files changed, 32 insertions(+)
>
> diff --git a/drivers/net/phy/phylink.c b/drivers/net/phy/phylink.c
> index 7ca427c46d9f..bff570f59d5c 100644
> --- a/drivers/net/phy/phylink.c
> +++ b/drivers/net/phy/phylink.c
> @@ -2247,4 +2247,34 @@ void phylink_mii_c22_pcs_an_restart(struct mdio_device *pcs)
> }
> EXPORT_SYMBOL_GPL(phylink_mii_c22_pcs_an_restart);
>
> +#define C45_ADDR(d,a) (MII_ADDR_C45 | (d) << 16 | (a))
Hi Russell
That seems like a macro that should be made global.
dsa/mv88e6xxx/serdes.c: int reg_c45 = MII_ADDR_C45 | device << 16 | reg;
dsa/mv88e6xxx/serdes.c: int reg_c45 = MII_ADDR_C45 | device << 16 | reg;
ethernet/intel/ixgbe/ixgbe_main.c: regnum |= (devad << 16) | MII_ADDR_C45;
ethernet/intel/ixgbe/ixgbe_main.c: regnum |= (devad << 16) | MII_ADDR_C45;
phy/phylink.c: devad = MII_ADDR_C45 | devad << 16 | reg;
phy/phylink.c: devad = MII_ADDR_C45 | devad << 16 | reg;
phy/phylink.c: devad = MII_ADDR_C45 | devad << 16 | reg;
phy/phylink.c: devad = MII_ADDR_C45 | devad << 16 | reg;
phy/phy-core.c: u32 addr = MII_ADDR_C45 | (devad << 16) | (regnum & 0xffff);
phy/phy-core.c: u32 addr = MII_ADDR_C45 | (devad << 16) | (regnum & 0xffff);
phy/phy_device.c: reg_addr = MII_ADDR_C45 | dev_addr << 16 | MDIO_DEVS2;
phy/phy_device.c: reg_addr = MII_ADDR_C45 | dev_addr << 16 | MDIO_DEVS1;
phy/phy_device.c: reg_addr = MII_ADDR_C45 | i << 16 | MII_PHYSID1;
phy/phy_device.c: reg_addr = MII_ADDR_C45 | i << 16 | MII_PHYSID2;
phy/phy.c: devad = MII_ADDR_C45 | devad << 16 | mii_data->reg_num;
phy/phy.c: devad = MII_ADDR_C45 | devad << 16 | mii_data->reg_num;
phy/bcm87xx.c: u32 regnum = MII_ADDR_C45 | (devid << 16) | reg;
I'm not suggesting you convert all these cases, just make the macro
available and we can make more use of it later.
Thanks
Andrew
Powered by blists - more mailing lists