From owner-FreeBSD-users-jp@jp.FreeBSD.org Thu Mar 28 15:47:44 2002
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) id g2S6liY24449;
	Thu, 28 Mar 2002 15:47:44 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from mail.kyoshin-p.co.jp (www.kyoshin-p.co.jp [210.146.43.35])
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) with ESMTP/inet id g2S6lgc24442
	for <FreeBSD-users-jp@jp.FreeBSD.org>; Thu, 28 Mar 2002 15:47:42 +0900 (JST)
	(envelope-from g-sugiyama@kyoshin-p.co.jp)
Date: Thu, 28 Mar 2002 15:47:36 +0900 (JST)
Message-Id: <20020328.154736.74758519.g-sugiyama@kyoshin-p.co.jp>
To: FreeBSD-users-jp@jp.FreeBSD.org
From: Genya Sugiyama <g-sugiyama@kyoshin-p.co.jp>
In-Reply-To: <020328132701.M0103488@mistral.imasy.or.jp>
References: <20020328.122428.07649577.g-sugiyama@kyoshin-p.co.jp>
	<020328132701.M0103488@mistral.imasy.or.jp>
X-Mailer: Mew version 2.1 on Emacs 20.7 / Mule 4.0 (HANANOEN)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Reply-To: FreeBSD-users-jp@jp.FreeBSD.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+020328
X-Sequence: FreeBSD-users-jp 67833
Subject: [FreeBSD-users-jp 67833] Re: ADMtek AN983B Ethernet
 onFNW-9803-T
Errors-To: owner-FreeBSD-users-jp@jp.FreeBSD.org
Sender: owner-FreeBSD-users-jp@jp.FreeBSD.org
X-Originator: g-sugiyama@kyoshin-p.co.jp


$B?y;3$H?=$7$^$9!#(B

$B1n4]$5$s(B wrote:
mistral>   $BF1$8%+!<%I$rF10l(BLAN$B$G;H$*$&$H;W$&$H!"F0$+$J$$$G$9$M(B :-)
mistral> # $BF0$+$J$$$H$$$&$+!"LLGr$$$3$H$K$J$j$=$&$H$$$&$+!#$d$C$?$3$H$J$$(B
mistral> # $B$G$9$,!#(B
$B$d$j$?$/$J$$$1$I!"$d$C$F$7$^$&$+$b(B...$B!#(B

mistral>   $B4JC1$G$9$N$G!"$d$j$^$7$g$&!#(B
mistral>   % send-pr
mistral>   $B!D!D4JC1$G$7$g!)(B ($B$3$i(B)
$B$h$7!"(B%send-pr
$B$o$C!"$A$g$C$HIT0B(B...

mistral>   $B$^$M$h$&$,$J$K$7$h$&$,!"%Q%C%A$,$J$1$l$P1J1s$K%5%]!<%H$5$l$J$$(B
mistral> $B$^$^$G$9!#@$$N$?$a?M$N$?$a<+J,$N$?$a$K(B send-pr $B$7$F$$$?$@$1$k$H(B
mistral> $B=u$+$j$^$9!#(B
mistral> # $B$;$C$+$/9W8%$G$-$k<jCJ$H%M%?$,$"$k$N$K!"$b$C$?$$$J$$!"$H;d$O;W(B
mistral> # $B$$$^$9!#(B
$B3N$K!#(B
$B$3$l$rN.$7$?$N$b!"%R%g%C$H$7$F5$$E$+$:$K$=$N$^$^MxMQ$5$l$F$$$k%R%H$b$$$k(B
$B$+$bCN$l$J$$$H;W$C$FN.$7$?$N$@$7!"$3$3$O$J$$F,$r$R$M$C$FD)@o$7$F$_$k$3$H(B
$B$@(B -> $B<+J,(B
$B$=$&$G$9$h$M!A!":#8e<+J,$G(B relrese $B$K9g$o$;$F!"%Q%C%A$"$F$k$N$b$?$V$sK:(B
$B$l$k$7(B...$B!#(B
$B$"$j$,$H$&$4$6$$$^$9!#(B

$B0J2<!"J?Ln$5$s$N%Q%C%A%3%T!<$KDI2C$7!"JQ99$7$?$b$N$rIm$1$F$*$-$^$9!#(B
($B$7$+$7!"J?Ln$5$s$b=q$$$F$$$?$1$I!"$b$C$H%9%^!<%H$J2r7h$O$J$$$N$+$J!A$H(B
$B;W$&$N$G$9$,(B...)

*** /usr/src/sys/pci/if_dcreg.h.org	Tue Feb 26 22:35:49 2002
--- /usr/src/sys/pci/if_dcreg.h	Thu Mar 28 09:29:18 2002
***************
*** 77,82 ****
--- 77,84 ----
  #define DC_TYPE_PNIC		0xA	/* 82c168/82c169 PNIC I */
  #define DC_TYPE_CONEXANT        0xC     /* Conexant LANfinity RS7112 */
  
+ #define DC_TYPE_AN983		0xFF	/* ADMtek AN983B CentaurB */
+ 
  #define DC_IS_MACRONIX(x)			\
  	(x->dc_type == DC_TYPE_98713 ||		\
  	 x->dc_type == DC_TYPE_98713A ||	\
***************
*** 84,89 ****
--- 86,92 ----
  
  #define DC_IS_ADMTEK(x)				\
  	(x->dc_type == DC_TYPE_AL981 ||		\
+ 	 x->dc_type == DC_TYPE_AN983 ||		\
  	 x->dc_type == DC_TYPE_AN985)
  
  #define DC_IS_INTEL(x)		(x->dc_type == DC_TYPE_21143)


*** /usr/src/sys/pci/if_dc.c.org	Tue Feb 26 22:35:49 2002
--- /usr/src/sys/pci/if_dc.c	Thu Mar 28 09:27:06 2002
***************
*** 1669,1675 ****
  {
  	int			s, tmp = 0;
  	u_char			eaddr[ETHER_ADDR_LEN];
! 	u_int32_t		command;
  	struct dc_softc		*sc;
  	struct ifnet		*ifp;
  	u_int32_t		revision;
--- 1669,1675 ----
  {
  	int			s, tmp = 0;
  	u_char			eaddr[ETHER_ADDR_LEN];
! 	u_int32_t		command, reg;
  	struct dc_softc		*sc;
  	struct ifnet		*ifp;
  	u_int32_t		revision;
***************
*** 1775,1781 ****
  		break;
  	case DC_DEVICEID_AN985:
  	case DC_DEVICEID_EN2242:
! 		sc->dc_type = DC_TYPE_AN985;
  		sc->dc_flags |= DC_TX_USE_TX_INTR;
  		sc->dc_flags |= DC_TX_ADMTEK_WAR;
  		sc->dc_pmode = DC_PMODE_MII;
--- 1775,1791 ----
  		break;
  	case DC_DEVICEID_AN985:
  	case DC_DEVICEID_EN2242:
! 		reg = pci_read_config(dev, DC_PCI_CSID, 4);
! 		/* printf("CSID=%08x\n", reg); */
! 		switch (reg) {
! 		case 0x980314ea: /* FNW-9803-T */
! 		case 0xa11b1259: /* Corega */
! 			sc->dc_type = DC_TYPE_AN983;
! 			break;
! 		default:
! 			sc->dc_type = DC_TYPE_AN985;
! 			break;
! 		}
  		sc->dc_flags |= DC_TX_USE_TX_INTR;
  		sc->dc_flags |= DC_TX_ADMTEK_WAR;
  		sc->dc_pmode = DC_PMODE_MII;
***************
*** 1900,1905 ****
--- 1910,1916 ----
  		dc_read_eeprom(sc, (caddr_t)&eaddr, DC_EE_NODEADDR, 3, 0);
  		break;
  	case DC_TYPE_AL981:
+ 	case DC_TYPE_AN983:
  	case DC_TYPE_AN985:
  		dc_read_eeprom(sc, (caddr_t)&eaddr, DC_AL_EE_NODEADDR, 3, 0);
  		break;


$B0J>e(B
