From e855dcec9a271f076056879e921d8c311e31b5e0 Mon Sep 17 00:00:00 2001 From: Scott Feldman Date: Fri, 26 Sep 2003 21:51:47 -0400 Subject: [PATCH] [e100] PRO/10+ not configured properly * PRO/10+ (10 Mbps-only card) was not configured properly so it didn't pass traffic. --- drivers/net/e100/e100_config.c | 2 +- drivers/net/e100/e100_config.h | 1 + drivers/net/e100/e100_main.c | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/net/e100/e100_config.c b/drivers/net/e100/e100_config.c index d9df35677a7ca..1ffaecd952a7d 100644 --- a/drivers/net/e100/e100_config.c +++ b/drivers/net/e100/e100_config.c @@ -60,7 +60,7 @@ static const u8 def_config[] = { * All other init functions will only set values that are * different from the 82557 default. */ -static void __devinit +void __devinit e100_config_init_82557(struct e100_private *bdp) { /* initialize config block */ diff --git a/drivers/net/e100/e100_config.h b/drivers/net/e100/e100_config.h index 5d1e194ff25be..8db152b032eeb 100644 --- a/drivers/net/e100/e100_config.h +++ b/drivers/net/e100/e100_config.h @@ -151,6 +151,7 @@ /* function prototypes */ extern void e100_config_init(struct e100_private *bdp); +extern void e100_config_init_82557(struct e100_private *bdp); extern unsigned char e100_force_config(struct e100_private *bdp); extern unsigned char e100_config(struct e100_private *bdp); extern void e100_config_fc(struct e100_private *bdp); diff --git a/drivers/net/e100/e100_main.c b/drivers/net/e100/e100_main.c index d04f63dc45853..43a82cec28a57 100644 --- a/drivers/net/e100/e100_main.c +++ b/drivers/net/e100/e100_main.c @@ -1404,6 +1404,9 @@ e100_hw_init(struct e100_private *bdp) bdp->flags |= DF_UCODE_LOADED; } + if ((u8) bdp->rev_id < D101A4_REV_ID) + e100_config_init_82557(bdp); + if (!e100_config(bdp)) goto err; -- 2.53.0