Skip to content

Commit

Permalink
tulip/de2104x: don't report different speeds depending on port type
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
David Decotigny authored and David S. Miller committed Apr 29, 2011
1 parent 1258c07 commit fbef713
Showing 1 changed file with 3 additions and 7 deletions.
10 changes: 3 additions & 7 deletions drivers/net/tulip/de2104x.c
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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;
Expand Down

0 comments on commit fbef713

Please sign in to comment.