From owner-FreeBSD-users-jp@jp.freebsd.org  Tue Apr  9 20:37:20 1996
Received: by mail.jp.freebsd.org (8.7.3+2.6Wbeta5/8.7.3) id UAA18720
	Tue, 9 Apr 1996 20:37:20 +0900 (JST)
Received: by mail.jp.freebsd.org (8.7.3+2.6Wbeta5/8.7.3) with SMTP id UAA18715
	for <FreeBSD-users-jp@jp.freebsd.org>; Tue, 9 Apr 1996 20:37:16 +0900 (JST)
Received: from seidns.sumiden.co.jp by seigate.sumiden.co.jp (8.6.9+2.4W/R8-seigate-1.3-02/08/96) with ESMTP
	id UAA25200; Tue, 9 Apr 1996 20:36:43 +0900
Received: by seidns.sumiden.co.jp (8.6.9+2.4W/R8-seidns-1.0-12/11/95)
	id UAA06924; Tue, 9 Apr 1996 20:36:43 +0900
Received: from optsei.sumiden.co.jp by seidns.sumiden.co.jp (8.6.9+2.4W/R8-seidns-inspection-1.1-02/08/96) with ESMTP
	id UAA06920; Tue, 9 Apr 1996 20:36:42 +0900
Received: from silvy.sed.sumiden.co.jp by optsei.sumiden.co.jp (8.6.9+2.4W/R8-sumiden-generic/seiux-1.2-12/11/95) with SMTP
	id UAA09061; Tue, 9 Apr 1996 20:36:02 +0900
Received: by silvy.sed.sumiden.co.jp (5.61/6.4J.6-SYSTEMM-1.5)
	id AA19028; Tue, 9 Apr 96 20:36:36 +0900
Date: Tue, 9 Apr 96 20:36:36 +0900
Message-Id: <9604091136.AA19028@silvy.sed.sumiden.co.jp>
To: FreeBSD-users-jp@jp.freebsd.org
From: okayama@sed.sumiden.co.jp (Touji Okayama)
X-Mailer: mnews [version 1.19PL2] 1996-01/26(Fri)
Reply-To: FreeBSD-users-jp@jp.freebsd.org
X-Distribute: distribute [version 2.1 (Alpha) patchlevel=19]
X-Sequence: FreeBSD-users-jp 996
Subject: [FreeBSD-users-jp 996] Takram DC-390U worked on FreeBSD
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org

$B2,;3!w=;M'EE9)$G$9!#(B

$B@h$K!"4V@\E*$K(B fj.os.bsd.freebsd $B$GJs9p$5$l$^$7$?$,!"(BTekram DC-390U $B$,(B 
FreeBSD 2.2-960323-SNAP $B$GF0:n$7$^$7$?!#(B
$B%+!<%M%k(B(sys/pci/ncr.c) $B$r<c43=q$-49$($^$7$?!#(B

$B"(JdB-!'(B
DC-390U $B$O!"(Bsymbios($B5l(Bncr) 53c875 chip $B$r;HMQ$7$?(B PCI SCSI card $B$G!"(B
Fast-20 (Ultra-narrow-SCSI) $BBP1~$G$9!#(B
$BL50u(B DC-390 $B$O!"(BAMD $B$N@P$J$N$G!"K\7o$H$O4X78$"$j$^$;$s!#(B

SC-200 $BEy$N(B ncr810 $B$r;HMQ$7$?%+!<%I$G$O!"(BFast-SCSI $B$NF14|E>Aw$N%/%m%C%/(B 
10MHz $B$r:n$k$?$a$K!"(B40MHz $B$N?e>=$r:\$;$F$$$F!"(Bncr.c $B$G$O(B $B$3$N%/%m%C%/(B 
40MHz $B$,7h$a$&$A$K$J$C$F$$$^$9!#$H$3$m$,!"(BDC-390U $B$G$O!"(BFast-20 $BBP1~$N$?(B
$B$a!"(B80MHz $B$N?e>=$,:\$C$F$$$^$9!#$h$C$F!"(B80MHz $B$KBP1~$7$?@5$7$$J,<~Hf$r(B 
ncr875 $B$K@_Dj$9$k$h$&$KJQ99$9$l$PF0$-$^$9!#(B

$B>e5-$NLdBj$O!"(BSCSI $BF14|E>Aw$N(B synchronous negotiation $B$K4XO"$9$k$b$N$J$N(B
$B$G!"(Basynchronous device (CD-ROM) $BEy$O$=$N$^$^$G$bF0$/$O$:$G$9!#(B

$B0J2<$K%Q%C%A$rIU$1$^$9!#(B
$B!t%/%$%C%/%O%C%/!uL5J]>Z$G$9!#(B

$B$3$N%Q%C%A$O!"(B960323-SNAP $BMQ$G$9$,!"(B2.1.0-R $B$K$b$=$N$^$^Ev$?$j$^$9!#(B
2.1.0-R $B$G$NF0:n3NG'$O$7$F$$$^$;$s!#(B

$BC"$7!"$3$N$^$^$G$O!"(BFast-SCSI(10MB/s) $B$H$7$FF0$/$@$1$G!"K\5$$G(B Fast-20 
$B$KBP1~$9$k$?$a$K$O!"$b$&>/$7$$$8$kI,MW$,$"$j$^$9!#(B

$B!t8=:_$O!"$^$@(B Fast-20 $B$N%I%i%$%V$J$s$FF~<j$G$-$J$$$N$G!"$^$"LdBj$J$$$G(B
$B!t$7$g$&!#(B

3310$B9TIU6a$N!"(BNCR_875_ID $B$r(B comment out $B$7$F$$$kItJ,$O!"(Bwide SCSI $B$r(B 
disable $B$7$F$$$^$9!#(BDC390U $B$O(B narrow $B$G$9$+$i!#(B
comment out $B$7$J$/$F$bF0$/$h$&$G$9$,!"N)$A>e$,$j$K<c43;~4V$,$+$+$j$^$9!#(B
$B!t(Bwide scsi $B$G!"(B15 device $B$r(B probe $B$7$K9T$/$?$a$H;W$o$l$k(B

http://www.symbios.com $B$K$"$k(B sample code $B$r;29M$K$7$^$7$?$,!"$3$l$r8+$k(B
$B$H!"(B875 $B@_Dj$N$H$3$m$G(B 810 $B$G$O@_Dj$7$J$$2x$7$$%l%8%9%?$,$$$/$D$+$"$j$^(B
$B$9!#$5$i$K$3$l$rAH$_9~$a$P!"%Q%U%)!<%^%s%9$,>e$,$k$+$b!#(B

$B$Q$C$A(B ---- $B$Q$C$A(B ---- $B$Q$C$A(B ---- $B$Q$C$A(B ---- $B$Q$C$A(B ---- $B$Q$C$A(B 
--- ncr.c.original	Mon Apr  8 22:36:50 1996
+++ ncr.c	Mon Apr  8 22:36:50 1996
@@ -1203,6 +1203,7 @@
 static	void	ncr_exception	(ncb_p np);
 static	void	ncr_free_ccb	(ncb_p np, ccb_p cp, int flags);
 static	void	ncr_getclock	(ncb_p np);
+static	void	ncr_getclock_80M	(ncb_p np);
 static	ccb_p	ncr_get_ccb	(ncb_p np, u_long flags, u_long t,u_long l);
 static  u_int32_t ncr_info	(int unit);
 static	void	ncr_init	(ncb_p np, char * msg, u_long code);
@@ -3311,7 +3312,9 @@
 	switch (pci_conf_read (config_id, PCI_ID_REG)) {
 #endif /* __NetBSD__ */
 	case NCR_825_ID:
+/*
 	case NCR_875_ID:
+*/
 		np->maxwide = 1;
 		break;
 	default:
@@ -3354,7 +3357,10 @@
 	**	Find the right value for scntl3.
 	*/
 
-	ncr_getclock (np);
+	if ( pci_conf_read (config_id, PCI_ID_REG) == NCR_875_ID )
+		ncr_getclock_80M (np);
+	else
+		ncr_getclock (np);
 
 	/*
 	**	Reset chip.
@@ -6777,6 +6783,13 @@
 	if (DEBUG_FLAGS & DEBUG_TIMING)
 		printf ("%s: sclk=%d async=%d sync=%d (ns) scntl3=0x%x\n",
 		ncr_name (np), ns_clock, np->ns_async, np->ns_sync, np->rv_scntl3);
+}
+
+static void ncr_getclock_80M( ncb_p np )
+{
+	np->ns_sync = 25;
+	np->ns_async = 50;
+	np->rv_scntl3 = 0x35;
 }
 
 /*=========================================================================*/
$B$Q$C$A(B ---- $B$Q$C$A(B ---- $B$Q$C$A(B ---- $B$Q$C$A(B ---- $B$Q$C$A(B ---- $B$Q$C$A(B 

----
$B2,;3F#<#!w=;M'EE9)(B	okayama@sed.sumiden.co.jp
