Subject: kern/8188: Add support for 3CXEM556B-INT
To: None <gnats-bugs@gnats.netbsd.org>
From: None <GBC01623@nifty.ne.jp>
List: netbsd-bugs
Date: 08/10/1999 23:20:55
>Number: 8188
>Category: kern
>Synopsis: Add support for 3CXEM556B-INT
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: kern-bug-people (Kernel Bug People)
>State: open
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Tue Aug 10 23:20:01 1999
>Last-Modified:
>Originator: Noriyuki KOIZUMI
>Organization:
>Release: NetBSD-current 19990808
>Environment:
NetBSD note 1.4J NetBSD 1.4J (GENERIC) #0: Mon Aug 9 14:48:50 JST 1999 koizumi@note:/usr/tmp/sys/arch/i386/compile/GENERIC i386
>Description:
Add support for 3Com/Megahertz 3CXEM556B-INT PC Card.
("3CXEM556B-INT" is International Version)
This card is changed Product-ID from "0x0035" (3CXEM556) to "0x003d"
(3CXEM556B-INT). I think two card is same. (Because I change Product-ID
from "0x0035" to "0x003d" and build new kernel, 3CXEM556B-INT work fine.)
>How-To-Repeat:
>Fix:
diff -x CVS -Ncr pcmcia.orig/com_pcmcia.c pcmcia/com_pcmcia.c
*** pcmcia.orig/com_pcmcia.c Tue Jun 29 09:05:09 1999
--- pcmcia/com_pcmcia.c Wed Aug 11 00:54:47 1999
***************
*** 347,353 ****
return ret;
if ((psc->sc_pf->sc->card.product == PCMCIA_PRODUCT_3COM_3C562) ||
! (psc->sc_pf->sc->card.product == PCMCIA_PRODUCT_3COM_3CXEM556)) {
int reg;
/* turn off the ethernet-disable bit */
--- 347,354 ----
return ret;
if ((psc->sc_pf->sc->card.product == PCMCIA_PRODUCT_3COM_3C562) ||
! (psc->sc_pf->sc->card.product == PCMCIA_PRODUCT_3COM_3CXEM556) ||
! (psc->sc_pf->sc->card.product == PCMCIA_PRODUCT_3COM_3CXEM556B)) {
int reg;
/* turn off the ethernet-disable bit */
diff -x CVS -Ncr pcmcia.orig/if_ep_pcmcia.c pcmcia/if_ep_pcmcia.c
*** pcmcia.orig/if_ep_pcmcia.c Tue Jun 29 09:05:09 1999
--- pcmcia/if_ep_pcmcia.c Wed Aug 11 00:55:41 1999
***************
*** 159,164 ****
--- 159,168 ----
0, 0,
PCMCIA_STR_3COM_3CXEM556 },
+ { PCMCIA_PRODUCT_3COM_3CXEM556B, ELINK_CHIPSET_3C509,
+ 0, 0,
+ PCMCIA_STR_3COM_3CXEM556B },
+
{ PCMCIA_PRODUCT_3COM_3C574, ELINK_CHIPSET_ROADRUNNER,
ELINK_FLAGS_MII, 0,
PCMCIA_STR_3COM_3C574 },
***************
*** 231,237 ****
return (ret);
if ((psc->sc_pf->sc->card.product == PCMCIA_PRODUCT_3COM_3C562) ||
! (psc->sc_pf->sc->card.product == PCMCIA_PRODUCT_3COM_3CXEM556)) {
int reg;
/* turn off the serial-disable bit */
--- 235,242 ----
return (ret);
if ((psc->sc_pf->sc->card.product == PCMCIA_PRODUCT_3COM_3C562) ||
! (psc->sc_pf->sc->card.product == PCMCIA_PRODUCT_3COM_3CXEM556) ||
! (psc->sc_pf->sc->card.product == PCMCIA_PRODUCT_3COM_3CXEM556B)) {
int reg;
/* turn off the serial-disable bit */
diff -x CVS -Ncr pcmcia.orig/pcmcia_cis_quirks.c pcmcia/pcmcia_cis_quirks.c
*** pcmcia.orig/pcmcia_cis_quirks.c Tue Dec 29 21:16:03 1998
--- pcmcia/pcmcia_cis_quirks.c Wed Aug 11 00:57:51 1999
***************
*** 117,122 ****
--- 117,126 ----
&pcmcia_3cxem556_func0, &pcmcia_3cxem556_func0_cfe0 },
{ PCMCIA_VENDOR_3COM, PCMCIA_PRODUCT_3COM_3CXEM556, PCMCIA_CIS_INVALID,
&pcmcia_3cxem556_func1, &pcmcia_3cxem556_func1_cfe0 },
+ { PCMCIA_VENDOR_3COM, PCMCIA_PRODUCT_3COM_3CXEM556B, PCMCIA_CIS_INVALID,
+ &pcmcia_3cxem556_func0, &pcmcia_3cxem556_func0_cfe0 },
+ { PCMCIA_VENDOR_3COM, PCMCIA_PRODUCT_3COM_3CXEM556B, PCMCIA_CIS_INVALID,
+ &pcmcia_3cxem556_func1, &pcmcia_3cxem556_func1_cfe0 },
{ PCMCIA_VENDOR_INVALID, PCMCIA_PRODUCT_INVALID, PCMCIA_CIS_SVEC_LANCARD
,
&pcmcia_sveclancard_func0, &pcmcia_sveclancard_func0_cfe0 },
};
diff -x CVS -Ncr pcmcia.orig/pcmciadevs pcmcia/pcmciadevs
*** pcmcia.orig/pcmciadevs Sun Aug 8 21:49:57 1999
--- pcmcia/pcmciadevs Wed Aug 11 01:04:26 1999
***************
*** 75,80 ****
--- 75,81 ----
product 3COM 3C589 0x0589 3Com 3c589 10Mbps Ethernet
product 3COM 3C574 0x0574 3Com 3c574-TX 10/100Mbps Ethernet
product 3COM 3CXEM556 0x0035 3Com/Megahertz 3CXEM556 Ethernet/Modem
+ product 3COM 3CXEM556B 0x003d 3Com/Megahertz 3CXEM556B-INT Ethe
rnet/Modem
/* Compex Products */
product COMPEX LINKPORT_ENET_B 0x0100 Compex Linkport ENET-B Ethernet
diff -x CVS -Ncr pcmcia.orig/pcmciadevs.h pcmcia/pcmciadevs.h
*** pcmcia.orig/pcmciadevs.h Sun Aug 8 21:49:57 1999
--- pcmcia/pcmciadevs.h Wed Aug 11 01:05:14 1999
***************
*** 1,4 ****
! /* $NetBSD: pcmciadevs.h,v 1.44 1999/08/06 06:39:57 cgd Exp $ */
/*
* THIS FILE AUTOMATICALLY GENERATED. DO NOT EDIT.
--- 1,4 ----
! /* $NetBSD$ */
/*
* THIS FILE AUTOMATICALLY GENERATED. DO NOT EDIT.
***************
*** 94,99 ****
--- 94,102 ----
#define PCMCIA_CIS_3COM_3CXEM556 { NULL, NULL, NULL, NULL }
#define PCMCIA_PRODUCT_3COM_3CXEM556 0x0035
#define PCMCIA_STR_3COM_3CXEM556 "3Com/Megahertz 3CXEM556 Etherne
t/Modem"
+ #define PCMCIA_CIS_3COM_3CXEM556B { NULL, NULL, NULL, NULL }
+ #define PCMCIA_PRODUCT_3COM_3CXEM556B 0x003d
+ #define PCMCIA_STR_3COM_3CXEM556B "3Com/Megahertz 3CXEM556B-INT Et
hernet/Modem"
/* Compex Products */
#define PCMCIA_CIS_COMPEX_LINKPORT_ENET_B { NULL, NULL, NULL, NULL
}
diff -x CVS -Ncr pcmcia.orig/pcmciadevs_data.h pcmcia/pcmciadevs_data.h
*** pcmcia.orig/pcmciadevs_data.h Sun Aug 8 21:49:57 1999
--- pcmcia/pcmciadevs_data.h Wed Aug 11 01:05:14 1999
***************
*** 1,4 ****
! /* $NetBSD: pcmciadevs_data.h,v 1.44 1999/08/06 06:39:57 cgd Exp $ */
/*
* THIS FILE AUTOMATICALLY GENERATED. DO NOT EDIT.
--- 1,4 ----
! /* $NetBSD$ */
/*
* THIS FILE AUTOMATICALLY GENERATED. DO NOT EDIT.
***************
*** 85,90 ****
--- 85,97 ----
0,
"3Com Corporation",
"3Com/Megahertz 3CXEM556 Ethernet/Modem" },
+ },
+ {
+ PCMCIA_VENDOR_3COM, PCMCIA_PRODUCT_3COM_3CXEM556B,
+ PCMCIA_CIS_3COM_3CXEM556B,
+ 0,
+ "3Com Corporation",
+ "3Com/Megahertz 3CXEM556B-INT Ethernet/Modem" },
},
{
PCMCIA_VENDOR_COMPEX, PCMCIA_PRODUCT_COMPEX_LINKPORT_ENET_B,
>Audit-Trail:
>Unformatted: