summaryrefslogtreecommitdiffstats
path: root/drivers/net/tulip/de2104x.c
diff options
context:
space:
mode:
authorDavid Decotigny <decot@google.com>2011-04-27 20:32:42 +0200
committerDavid S. Miller <davem@davemloft.net>2011-04-29 23:03:02 +0200
commitfbef7139a8b89a7f49ba1410593ed894b4c8b017 (patch)
treecbfc96f3723dac944f3b72ae1b493c740dd7355d /drivers/net/tulip/de2104x.c
parentacenic: Fix using the specified speed when configuring NIC (diff)
downloadlinux-fbef7139a8b89a7f49ba1410593ed894b4c8b017.tar.xz
linux-fbef7139a8b89a7f49ba1410593ed894b4c8b017.zip
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 <decot@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/tulip/de2104x.c')
-rw-r--r--drivers/net/tulip/de2104x.c10
1 files 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;