[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3dd35d97-0c06-4154-b01b-92d452e51d53@lunn.ch>
Date: Wed, 17 Jan 2024 21:56:14 +0100
From: Andrew Lunn <andrew@...n.ch>
To: Diogo Ivo <diogo.ivo@...mens.com>
Cc: danishanwar@...com, rogerq@...nel.org, davem@...emloft.net,
edumazet@...gle.com, kuba@...nel.org, pabeni@...hat.com,
dan.carpenter@...aro.org, robh@...nel.org,
linux-arm-kernel@...ts.infradead.org, netdev@...r.kernel.org,
Jan Kiszka <jan.kiszka@...mens.com>
Subject: Re: [PATCH v2 7/8] net: ti: iccsg-prueth: Add necessary functions
for SR1.0 support
> +static void emac_change_port_speed_duplex_sr1(struct prueth_emac *emac)
> +{
> + u32 cmd = ICSSG_PSTATE_SPEED_DUPLEX_CMD, val;
> + struct prueth *prueth = emac->prueth;
> + int slice = prueth_emac_slice(emac);
> +
> + /* only full duplex supported for now */
> + if (emac->duplex != DUPLEX_FULL)
> + return;
You should tell phylib this, after connecting to the PHY. If you look
around you will find code like:
engleder/tsnep_main.c: phy_remove_link_mode(phydev, ETHTOOL_LINK_MODE_10baseT_Half_BIT);
engleder/tsnep_main.c: phy_remove_link_mode(phydev, ETHTOOL_LINK_MODE_100baseT_Half_BIT);
engleder/tsnep_main.c: phy_remove_link_mode(phydev, ETHTOOL_LINK_MODE_1000baseT_Half_BIT);
The PHY will then not advertise the half duplex modes, and probably
ethtool will be disallowed to force a half duplex mode.
Andrwe
Powered by blists - more mailing lists