* [PATCH 1/3] mdio: Advertise pause (flow control) settings even if autoneg is off
@ 2009-10-12 19:26 Ben Hutchings
2009-10-13 7:01 ` David Miller
0 siblings, 1 reply; 2+ messages in thread
From: Ben Hutchings @ 2009-10-12 19:26 UTC (permalink / raw)
To: David Miller; +Cc: netdev, linux-net-drivers
Currently, if pause autoneg is off we do not set either pause
advertising flag. If autonegotiation of speed and duplex settings is
enabled, there is no way for the link partner to distinguish this from
our refusing to use pause frames.
We should instead set the advertising flags according to the forced
mode so that the link partner can follow our lead. This is consistent
with the behaviour of other drivers.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
---
drivers/net/mdio.c | 8 +++-----
1 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/net/mdio.c b/drivers/net/mdio.c
index 21f8754..c0db9d7 100644
--- a/drivers/net/mdio.c
+++ b/drivers/net/mdio.c
@@ -344,11 +344,9 @@ void mdio45_ethtool_spauseparam_an(const struct mdio_if_info *mdio,
old_adv = mdio->mdio_read(mdio->dev, mdio->prtad, MDIO_MMD_AN,
MDIO_AN_ADVERTISE);
- adv = old_adv & ~(ADVERTISE_PAUSE_CAP | ADVERTISE_PAUSE_ASYM);
- if (ecmd->autoneg)
- adv |= mii_advertise_flowctrl(
- (ecmd->rx_pause ? FLOW_CTRL_RX : 0) |
- (ecmd->tx_pause ? FLOW_CTRL_TX : 0));
+ adv = ((old_adv & ~(ADVERTISE_PAUSE_CAP | ADVERTISE_PAUSE_ASYM)) |
+ mii_advertise_flowctrl((ecmd->rx_pause ? FLOW_CTRL_RX : 0) |
+ (ecmd->tx_pause ? FLOW_CTRL_TX : 0)));
if (adv != old_adv) {
mdio->mdio_write(mdio->dev, mdio->prtad, MDIO_MMD_AN,
MDIO_AN_ADVERTISE, adv);
--
Ben Hutchings, Senior Software Engineer, Solarflare Communications
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH 1/3] mdio: Advertise pause (flow control) settings even if autoneg is off
2009-10-12 19:26 [PATCH 1/3] mdio: Advertise pause (flow control) settings even if autoneg is off Ben Hutchings
@ 2009-10-13 7:01 ` David Miller
0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2009-10-13 7:01 UTC (permalink / raw)
To: bhutchings; +Cc: netdev, linux-net-drivers
From: Ben Hutchings <bhutchings@solarflare.com>
Date: Mon, 12 Oct 2009 20:26:17 +0100
> Currently, if pause autoneg is off we do not set either pause
> advertising flag. If autonegotiation of speed and duplex settings is
> enabled, there is no way for the link partner to distinguish this from
> our refusing to use pause frames.
>
> We should instead set the advertising flags according to the forced
> mode so that the link partner can follow our lead. This is consistent
> with the behaviour of other drivers.
>
> Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Applied to net-next-2.6
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-10-13 7:01 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-12 19:26 [PATCH 1/3] mdio: Advertise pause (flow control) settings even if autoneg is off Ben Hutchings
2009-10-13 7:01 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).