[<prev] [next>] [day] [month] [year] [list]
Message-ID: <460260EC.2040806@netinsight.net>
Date: Thu, 22 Mar 2007 11:56:44 +0100
From: Seved Torstendahl <seved.torstendahl@...insight.net>
To: akpm@...l.org
CC: jgarzik@...ox.com, netdev@...r.kernel.org
Subject: PROBLEM: can't initiate empty e100 eeprom
When we receive new CPU bourds the EEPROM for one Ethernet port is unprogrammed
i.e. contains only FF. The first thing to do is to perform some accepence tests
and to set the MAC address on this port using the tool eepro100-diag.
This worked with earlier kernels but now the e100.c driver refuses to do this.
The new module parameter eeprom_bad_csum_allow solves half the problem but
the check is_valid_ether_addr(...) at line 2669 fails and then the device
is removed (our line number due to other changes).
Suggestion: let the module parameter control this test as in the patch below.
We don't want to use a DOS tool!
Regards
Seved Torstendahl
--
Seved Torstendahl Net Insight AB
Senior SW System Architect Box 42093, S-126 14 Stockholm, SWEDEN
tel: + 46 8 685 04 38 Visiting Address: Västberga Allé 9, Hägersten
fax: + 46 8 685 04 20 http://www.netinsight.net
Index: e100.c
===================================================================
RCS file: /cvs/new-sw/kernel/kernel/drivers/net/e100.c,v
retrieving revision 1.2
diff -u -r1.2 e100.c
--- e100.c 23 Oct 2006 13:58:36 -0000 1.2
+++ e100.c 22 Mar 2007 10:09:22 -0000
@@ -2666,7 +2666,8 @@
memcpy(netdev->dev_addr, nic->eeprom, ETH_ALEN);
memcpy(netdev->perm_addr, nic->eeprom, ETH_ALEN);
- if(!is_valid_ether_addr(netdev->perm_addr)) {
+ /* invalid MAC address (ff:ff:ff:ff:ff:ff) accepted, changed at installation */
+ if (!eeprom_bad_csum_allow && (!is_valid_ether_addr(netdev->perm_addr))) {
DPRINTK(PROBE, ERR, "Invalid MAC address from "
"EEPROM, aborting.\n");
err = -EAGAIN;
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists