diff mbox

[PATCHv3,6/7] tulip/de2104x: don't report different speeds depending on port type

Message ID 1303954043-17440-7-git-send-email-decot@google.com
State Superseded, archived
Delegated to: David Miller
Headers show

Commit Message

david decotigny April 28, 2011, 1:27 a.m. UTC
Initial driver reports different speeds depending on the port being
used. This patch 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>
---
 drivers/net/tulip/de2104x.c |   10 +++-------
 1 files changed, 3 insertions(+), 7 deletions(-)

Comments

Ben Hutchings April 28, 2011, 2:13 a.m. UTC | #1
On Wed, 2011-04-27 at 18:27 -0700, David Decotigny wrote:
> Initial driver reports different speeds depending on the port being
> used. This patch 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>
Reviewed-by: Ben Hutchings <bhutchings@solarflare.com>
diff mbox

Patch

diff --git a/drivers/net/tulip/de2104x.c b/drivers/net/tulip/de2104x.c
index ab78e1d..46d5a1b 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;