changelog shortlog tags branches changeset file revisions annotate raw help

Mercurial > hg > plan9front / sys/src/9/pc/ether82563.c

revision 4416: 75f7cec8082a
parent 4407: 4f5e39163a18
child 4641: 500435752b4d
     1.1--- a/sys/src/9/pc/ether82563.c
     1.2+++ b/sys/src/9/pc/ether82563.c
     1.3@@ -456,36 +456,36 @@ enum {
     1.4 	Fflashea= 1<<4,
     1.5 	F79phy	= 1<<5,
     1.6 	Fnofct	= 1<<6,
     1.7+	Fbadcsum= 1<<7,
     1.8 };
     1.9 
    1.10 typedef struct Ctlrtype Ctlrtype;
    1.11 struct Ctlrtype {
    1.12-	int	type;
    1.13+	char	*name;
    1.14 	int	mtu;
    1.15 	int	flag;
    1.16-	char	*name;
    1.17 };
    1.18 
    1.19 static Ctlrtype cttab[Nctlrtype] = {
    1.20-	i82563,		9014,	Fpba,		"i82563",
    1.21-	i82566,		1514,	Fload,		"i82566",
    1.22-	i82567,		9234,	Fload,		"i82567",
    1.23-	i82567m,	1514,	Fload,		"i82567m",
    1.24-	i82571,		9234,	Fpba,		"i82571",
    1.25-	i82572,		9234,	Fpba,		"i82572",
    1.26-	i82573,		8192,	Fert,		"i82573",		/* terrible perf above 8k */
    1.27-	i82574,		9018,	0,		"i82574",
    1.28-	i82575,		9728,	F75|Fflashea,	"i82575",
    1.29-	i82576,		9728,	F75,		"i82576",
    1.30-	i82577,		4096,	Fload|Fert,	"i82577",
    1.31-	i82577m,	1514,	Fload|Fert,	"i82577",
    1.32-	i82578,		4096,	Fload|Fert,	"i82578",
    1.33-	i82578m,	1514,	Fload|Fert,	"i82578",
    1.34-	i82579,		9018,	Fload|Fert|F79phy|Fnofct,	"i82579",
    1.35-	i82580,		9728,	F75|F79phy,	"i82580",
    1.36-	i82583,		1514,	0,		"i82583",
    1.37-	i218,		9728,	F79phy|Fnofct|Fload|Fert,	"i218",
    1.38-	i350,		9728,	F75|F79phy|Fnofct,	"i350",
    1.39+[i82563]	"i82563",	9014,	Fpba,
    1.40+[i82566]	"i82566",	1514,	Fload,
    1.41+[i82567]	"i82567",	9234,	Fload,
    1.42+[i82567m]	"i82567m",	1514,	Fload,
    1.43+[i82571]	"i82571",	9234,	Fpba,
    1.44+[i82572]	"i82572",	9234,	Fpba,
    1.45+[i82573]	"i82573",	8192,	Fert,		/* terrible perf above 8k */
    1.46+[i82574]	"i82574",	9018,	0,
    1.47+[i82575]	"i82575",	9728,	F75|Fflashea,
    1.48+[i82576]	"i82576",	9728,	F75,
    1.49+[i82577]	"i82577",	4096,	Fload|Fert,
    1.50+[i82577m]	"i82577",	1514,	Fload|Fert,
    1.51+[i82578]	"i82578",	4096,	Fload|Fert,
    1.52+[i82578m]	"i82578",	1514,	Fload|Fert,
    1.53+[i82579]	"i82579",	9018,	Fload|Fert|F79phy|Fnofct,
    1.54+[i82580]	"i82580",	9728,	F75|F79phy,
    1.55+[i82583]	"i82583",	1514,	0,
    1.56+[i218]		"i218",		9728,	Fload|Fert|F79phy|Fnofct|Fbadcsum,
    1.57+[i350]		"i350",		9728,	F75|F79phy|Fnofct,
    1.58 };
    1.59 
    1.60 typedef void (*Freefn)(Block*);
    1.61@@ -1655,9 +1655,13 @@ i82563reset(Ctlr *ctlr)
    1.62 	else
    1.63 		r = eeload(ctlr);
    1.64 	if(r != 0 && r != 0xbaba){
    1.65-		print("%s: bad eeprom checksum - %#.4ux\n",
    1.66-			cname(ctlr), r);
    1.67-		return -1;
    1.68+		print("%s: bad eeprom checksum - %#.4ux", cname(ctlr), r);
    1.69+		if(cttab[ctlr->type].flag & Fbadcsum)
    1.70+			print("; ignored\n");
    1.71+		else {
    1.72+			print("\n");
    1.73+			return -1;
    1.74+		}
    1.75 	}
    1.76 
    1.77 	ra = ctlr->ra;