Skip to content

Commit

Permalink
niu: Fix probing regression for maramba on-board chips.
Browse files Browse the repository at this point in the history
Changeset 7f7c407 ("niu: Determine
the # of ports from the card's VPD data") caused maramba on-board
NIU ports to stop probing properly.

The old code had a fallback that would use a num_ports value of
4 if all the probing methods failed, but that was removed.

This restores the fallback of 4 ports, to get things working
again.

Bump driver version and release date.

Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
David S. Miller committed May 4, 2008
1 parent e544ff0 commit be0c007
Showing 1 changed file with 7 additions and 4 deletions.
11 changes: 7 additions & 4 deletions drivers/net/niu.c
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/* niu.c: Neptune ethernet driver.
*
* Copyright (C) 2007 David S. Miller (davem@davemloft.net)
* Copyright (C) 2007, 2008 David S. Miller (davem@davemloft.net)
*/

#include <linux/module.h>
Expand Down Expand Up @@ -33,8 +33,8 @@

#define DRV_MODULE_NAME "niu"
#define PFX DRV_MODULE_NAME ": "
#define DRV_MODULE_VERSION "0.8"
#define DRV_MODULE_RELDATE "April 24, 2008"
#define DRV_MODULE_VERSION "0.9"
#define DRV_MODULE_RELDATE "May 4, 2008"

static char version[] __devinitdata =
DRV_MODULE_NAME ".c:v" DRV_MODULE_VERSION " (" DRV_MODULE_RELDATE ")\n";
Expand Down Expand Up @@ -7264,8 +7264,11 @@ static int __devinit niu_get_and_validate_port(struct niu *np)
parent->num_ports = nr64(ESPC_NUM_PORTS_MACS) &
ESPC_NUM_PORTS_MACS_VAL;

/* All of the current probing methods fail on
* Maramba on-board parts.
*/
if (!parent->num_ports)
return -ENODEV;
parent->num_ports = 4;
}
}
}
Expand Down

0 comments on commit be0c007

Please sign in to comment.