From fbef7139a8b89a7f49ba1410593ed894b4c8b017 Mon Sep 17 00:00:00 2001 From: David Decotigny Date: Wed, 27 Apr 2011 18:32:42 +0000 Subject: [PATCH] tulip/de2104x: don't report different speeds depending on port type Initial driver reported different speeds depending on the port being used. This advertises the speed to be 10Mbps in any case, which is what it actually is on the wire. Signed-off-by: David Decotigny Signed-off-by: David S. Miller --- drivers/net/tulip/de2104x.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/drivers/net/tulip/de2104x.c b/drivers/net/tulip/de2104x.c index ab78e1d58cb6..46d5a1b15036 100644 --- a/drivers/net/tulip/de2104x.c +++ b/drivers/net/tulip/de2104x.c @@ -1518,18 +1518,17 @@ static int __de_get_settings(struct de_private *de, struct ethtool_cmd *ecmd) switch (de->media_type) { case DE_MEDIA_AUI: ecmd->port = PORT_AUI; - ethtool_cmd_speed_set(ecmd, 5); break; case DE_MEDIA_BNC: ecmd->port = PORT_BNC; - ethtool_cmd_speed_set(ecmd, 2); break; default: ecmd->port = PORT_TP; - ethtool_cmd_speed_set(ecmd, SPEED_10); break; } + ethtool_cmd_speed_set(ecmd, 10); + if (dr32(MacMode) & FullDuplex) ecmd->duplex = DUPLEX_FULL; else @@ -1549,11 +1548,8 @@ static int __de_set_settings(struct de_private *de, struct ethtool_cmd *ecmd) { u32 new_media; unsigned int media_lock; - u32 speed = ethtool_cmd_speed(ecmd); - if (speed != SPEED_10 && speed != 5 && speed != 2) - return -EINVAL; - if (de->de21040 && speed == 2) + if (ethtool_cmd_speed(ecmd) != 10) return -EINVAL; if (ecmd->duplex != DUPLEX_HALF && ecmd->duplex != DUPLEX_FULL) return -EINVAL;