From owner-FreeBSD-tech-jp@jp.FreeBSD.org Fri Jun 21 20:42:03 2002
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) id g5LBg3i87127;
	Fri, 21 Jun 2002 20:42:03 +0900 (JST)
	(envelope-from owner-FreeBSD-tech-jp@jp.FreeBSD.org)
Received: from fgwmail6.fujitsu.co.jp (fgwmail6.fujitsu.co.jp [192.51.44.36])
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) with ESMTP/inet id g5LBg3N87120
	for <FreeBSD-tech-jp@jp.FreeBSD.org>; Fri, 21 Jun 2002 20:42:03 +0900 (JST)
	(envelope-from yoshint@flab.fujitsu.co.jp)
Received: from m3.gw.fujitsu.co.jp by fgwmail6.fujitsu.co.jp (8.9.3/3.7W-MX0205-Fujitsu Gateway)
	id UAA13617 for <FreeBSD-tech-jp@jp.FreeBSD.org>; Fri, 21 Jun 2002 20:42:02 +0900 (JST)
	(envelope-from yoshint@flab.fujitsu.co.jp)
Received: from cerberus.proc.flab.fujitsu.co.jp by m3.gw.fujitsu.co.jp (8.9.3/3.7W-0206-Fujitsu Domain Master)
	id UAA13542 for <FreeBSD-tech-jp@jp.FreeBSD.org>; Fri, 21 Jun 2002 20:42:01 +0900 (JST)
	(envelope-from yoshint@flab.fujitsu.co.jp)
Received: from cerberus.proc.flab.fujitsu.co.jp (localhost [127.0.0.1])
	by cerberus.proc.flab.fujitsu.co.jp (8.12.3/8.12.3) with ESMTP id g5LBg0sb014644
	for <FreeBSD-tech-jp@jp.FreeBSD.org>; Fri, 21 Jun 2002 20:42:00 +0900 (JST)
	(envelope-from yoshint@flab.fujitsu.co.jp)
To: FreeBSD-tech-jp@jp.FreeBSD.org
From: TOMITA Yoshinori <yoshint@flab.fujitsu.co.jp>
X-Fortune: =?ISO-2022-JP?B?GyRCOiNGfCROJCQkRjpCJE8hIiUkJXMlOSVUJWwbKEI=?=
 =?ISO-2022-JP?B?GyRCITwlNyVnJXMkLDpjJCgkazBsRnwhIxsoQg==?=
X-Weather: =?ISO-2022-JP?B?GyRCTEBGfCROP0BGYEBuOCkkT0ZeO34hOUAyJEcbKEI=?=
 =?ISO-2022-JP?B?GyRCJDkbKEI=?=
X-Face: [|Q@oQ4-)'>a|hK#Wn5u?MMwDs*kTH^u&/.`JOMCIf]22\}]}Fr7`pwbU:1]f>~F(i7vJxW
 0JUQD.wjQto]`;7uMKT\?C<,J~3LpT?c|~&l7kMjEvWhoSNj)oWGORj3R"I\/AGXBkCs(w!+Cx)'Ue
 n&%HI0W0Dc7>4J"%
MIME-Version: 1.0 (generated by WEMIKO 1.14.1 - =?ISO-2022-JP?B?Ig==?=
 =?ISO-2022-JP?B?GyRCNl9KXExTQ24bKEIi?=)
Content-Type: text/plain; charset=ISO-2022-JP
Date: Fri, 21 Jun 2002 20:41:58 +0900
Message-ID: <ywlwussuad5.fsf@cerberus.proc.flab.fujitsu.co.jp>
Lines: 169
User-Agent: T-gnus/6.15.7 (based on Oort Gnus v0.07) Mule-UCS/0.84
 (=?ISO-2022-JP?B?S09VR0VUU1VEQUk6GyRCOH43bkJmGyhC?=) WEMIKO/1.14.1
 (=?ISO-2022-JP?B?GyRCNl9KXExTQ24bKEI=?=) SLIM/1.14.7
 (=?ISO-2022-JP?B?GyRCPHIwZjpMTD4bKEI=?=) APEL/10.2 MULE XEmacs/21.4 (patch
 6) (Common Lisp) (i386-unknown-freebsd4.4)
Reply-To: FreeBSD-tech-jp@jp.FreeBSD.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+020611
X-Sequence: FreeBSD-tech-jp 3298
Subject: [FreeBSD-tech-jp 3298] no atapci recognized
Errors-To: owner-FreeBSD-tech-jp@jp.FreeBSD.org
Sender: owner-FreeBSD-tech-jp@jp.FreeBSD.org
X-Originator: yoshint@flab.fujitsu.co.jp

$BIYED$H$$$$$^$9!#(B


$B$:$$$V$sD9$$$3$H;H$C$F$$$J$+$C$?(BThinkPad535$B$r!"(B24$B;~4V1?MQ%^%7%s$H$7$F(B
$BI|3h$5$;$k$Y$/!"(BFreeBSD 5.0-DP1$B$r%$%s%9%H!<%k$7$F$_$^$7$?!#$U$H5$$,IU(B
$B$/$H!"(BATA HDD$B$,!"!V(BBIOSPIO$B!W$H$$$&!"8+$k$+$i$KCY$=$&$J%b!<%I(B($B$"$H$G$=(B
$B$l$OI,$:$7$b@5$7$/$J$$$H$o$+$j$^$7$?$,(B)$B$GF0$$$F$*$j!"$A$g$C$HD4$Y$F$_(B
$B$^$7$?!#(B

$B$3$N5!<o$O!"(B
$B!&(BMobile Triton$B$H$+8F$P$l$k%A%C%W%;%C%H$r;H$C$F$$$k(B
$B!&(BWindows 95$B$G$O!"(BDMA$B%b!<%I$GF0$+$;$k(B
$B!&@N(BLinux 2.0.??$B$r;H$C$F$?$3$m$O!"(BWDMA2$B%b!<%I$GF0$$$F$$$?$h$&$J5$$,$9$k(B
  ($B>/$J$/$H$b(BPIO$B$G$O$J$+$C$?(B)
$B$H$$$&$3$H$G!"(BFreeBSD$B$G$b!"(BDMA$B$rM-8z$K$G$-$k$O$:$@$H!#(B


$B$^$:!"(Bdmesg | grep ata $B$9$k$H!"(B

| ata0 at port 0x3f6,0x1f0-0x1f7 irq 14 on isa0
| ata1 at port 0x376,0x170-0x177 irq 15 on isa0
| ad0: 38154MB <IC25N040ATCS04-0> [77520/16/63] at ata0-master BIOSPIO
| ata2 at port 0x240-0x247,0x24e irq 3 slot 0 on pccard0
| ad4: 61MB <SanDisk SDCFB-64> [490/8/32] at ata2-master BIOSPIO

$B$H$$$&$+$s$8$K$J$j!"B>$N(BPC$B$r8+Hf$Y$F$_$k$H!"!V(Batapci0$B!W$,B-$j$J$$$3$H$,(B
$B$o$+$j$^$7$?!#(B

$B4qL/$J$3$H$K!"(Bscanpci$B$H!"(Bpciconf -l$B$G=P$F$/$k%G%P%$%9$N8D?t$,0lCW$;$:(B
$B$K!"(Bscanpci$B$N$[$&$,(B1$B$DB?$/!"$=$l$,4N?4$N(BPCI ATA$B%3%s%H%m!<%i$G$7$?!#(B

| pci bus 0x0000 cardnum 0x01 function 0x01: vendor 0x8086 device 0x1230
|  Intel 82371 bus-master IDE controller
|   STATUS    0x0280  COMMAND 0x0005
|   CLASS     0x01 0x01 0x80  REVISION 0x02
|   BIST      0x00  HEADER 0x00  LATENCY 0x20  CACHE 0x00
|   BASE4     0x0000fcf1  addr 0x0000fcf0  I/O
|   BYTE_0    0xa107  BYTE_1  0xd0d0d0d0  BYTE_2  0xd0d0d0d0  BYTE_3  0xd0d0d0d0

scanpci$B$N=PNO$r$h$/$_$k$H!"(Bcardnum$B$,F1$8$G(Bfunction$B$@$10[$J$k$b$N$,!"$b(B
$B$&(B1$B$D$G$F$$$^$9!#(B

| pci bus 0x0000 cardnum 0x01 function 0x00: vendor 0x8086 device 0x122e
|  Intel 82471 Triton
|   STATUS    0x0280  COMMAND 0x0007
|   CLASS     0x06 0x01 0x00  REVISION 0x02


$B0lJ}!"(Bboot -v$B$N%m%0$G$O!"0J2<$N$h$&$J46$8$G$"$j!"$I$&$b!"(Bfunction=0$B$N(B
$B$[$&$@$1$7$+!"?t$(>e$2$i$l$F$$$J$$$h$&$G$9!#(B

| pcib0: <Host to PCI bridge> at pcibus 0 on motherboard
| pci0: physical bus=0
| found-> vendor=0x8086, dev=0x1235, revid=0x02
|         bus=0, slot=0, func=0
|         class=06-00-00, hdrtype=0x00, mfdev=0
| found-> vendor=0x8086, dev=0x122e, revid=0x02
|         bus=0, slot=1, func=0
|         class=06-01-00, hdrtype=0x00, mfdev=0
|         map[10]: type 1, range 32, base 08000000, size 21, enabled
|         map[14]: type 1, range 32, base 08200000, size 16, enabled
| found-> vendor=0x1023, dev=0x9320, revid=0xe3
|         bus=0, slot=3, func=0
|         class=03-00-00, hdrtype=0x00, mfdev=0
|         intpin=a, irq=0
|         map[10]: type 4, range 32, base 000003e0, size  2, enabled
| found-> vendor=0x1013, dev=0x1100, revid=0xe2
|         bus=0, slot=19, func=0
|         class=06-05-00, hdrtype=0x00, mfdev=0
|         intpin=a, irq=0
| pci0: <PCI bus> on pcib0
| isab0: <PCI-ISA bridge> at device 1.0 on pci0


$B$3$3$^$G$o$+$C$?$N$G!"%=!<%9$r8+$F$_$k$H!"(B
sys/dev/pci/pci.c$B$N!"(Bpci_add_children()$B$,8+$D$+$j$^$7$?!#(B

	for (s = 0; s <= maxslots; s++) {
	  	int pcifunchigh = 0;
		for (f = 0; f <= pcifunchigh; f++) {
			struct pci_devinfo *dinfo = pci_read_device(pcib,
			    busno, s, f, sizeof(struct pci_devinfo));
			if (dinfo != NULL) {
				if (dinfo->cfg.mfdev)
					pcifunchigh = PCI_FUNCMAX;

				dinfo->cfg.dev = device_add_child(dev, NULL, -1);
				device_set_ivars(dinfo->cfg.dev, dinfo);
				pci_add_resources(pcib, busno, s, f,
						  dinfo->cfg.dev);


ThinkPad535$B$,Ie$C$F$$$k$N$+$b$7$l$^$;$s$,!"$J$<$+!"(Bdinfo->cfg.mfdev$B$O(B0
$B$N$^$^$N$h$&$G$9!#(B

$B$?$a$7$K!"(Bint pcifunchigh = 2; $B$HJQ$($F!"%+!<%M%k:F9=C[$7$F$_$k$H!":#(B
$BEY$O$a$G$?$/!"(B

| atapci0: <Intel PIIX ATA controller> port 0xfcf0-0xfcff at device 1.1 on pci0
| ata0: at 0x1f0 irq 14 on atapci0
| ata1: at 0x170 irq 15 on atapci0

$B$HG'<1$5$l$^$7$?!*!D$,!"I{:nMQ$G!"(Bpcic$B$H(BVGA$B$,3F(B3$B8D$:$D!"M>7W$KG'<1$5$l(B
$B$F$7$^$$$^$7$?(B ;-) # $B$^$!!"$3$l$O!"$"$H$G$J$s$H$+$7$F2sHr$9$k$H$7$F!D(B


$B$H$$$&$3$H$G!"$d$C$H(BUDMA2$B$K$J$C$?$+$H;W$$$-$d!"(BPIO4$B;_$^$j$G$7$?!#$^$?(B
$B%=!<%9$r8+$k$H!"(Bsys/dev/ata/ata-dma.c $B$N!"0J2<$N$H$3$m!"(B

    case 0x12308086:	/* Intel PIIX */
	if (wdmamode >= 2 && apiomode >= 4) {
	    int32_t word40;

	    word40 = pci_read_config(parent, 0x40, 4);
	    word40 >>= ch->unit * 16;

	    /* Check for timing config usable for DMA on controller */
	    if (!((word40 & 0x3300) == 0x2300 &&
		  ((word40 >> (device == ATA_MASTER ? 0 : 4)) & 1) == 1))
		break;

	    error = ata_command(atadev, ATA_C_SETFEATURES, 0,
				ATA_WDMA2, ATA_C_F_SETXFER, ATA_WAIT_READY);

word40$B$NCM$r8+$?$i(B0xa107$B$G$"$j!"(B&$B%^%9%/$r$H$C$?CM$O(B0x2300$B$K$J$i$:!"(B
break$B$GH4$1$F$7$^$C$F$$$^$7$?!#(B

Windows95$B$H(BLinux$B$GF0$$$F$$$?$s$@$+$iBg>fIW$@!"$H$$$&:,5r$+$i!"(B
if$B$r%3%a%s%H%"%&%H$7$?$H$3$m!"(BUDMA2$B$GF0$/$h$&$K$J$j$^$7$?!#(B
$B:rHU$+$i$$$m$$$mF0$+$7$F$$$^$9$,!"$A$c$s$HF0$$$F$$$^$9!#(B

| ad0: 38154MB <IC25N040ATCS04-0> [77520/16/63] at ata0-master WDMA2

$B$A$J$_$K!"(Batacontrol$B$G(Bmode$B$rJQ99$7$F!"(BGENERIC kernel$B$N(Bmake$B;~4V$r!"(B
BIOSPIO$B$H(BUDMA2$B$H$GHf3S$7$F$_$^$7$?$,!"$[$H$s$I:9$O$"$j$^$;$s$G$7$?!#(B

iozone -C$B$GHf3S$7$F$_$k$H!"(BWDMA2$B$N$[$&$,$d$dB.$/$J$C$?$h$&$G$9!#(B

$B!Z(BWDMA2$B$N$H$-![(B

 KB  reclen   write rewrite    read    reread    read   write    read rewrite
512       4    4709    9289    14348    14845   11641   10193   12615   12268

    read   fwrite frewrite   fread  freread
   12351     5009     9053   10039    10184


$B!Z(BBIOSPIO$B$N$H$-![(B

 KB  reclen   write rewrite    read    reread    read   write    read rewrite
512       4    2968    4177    12464    12461   10198    8126   10476    9279
    read   fwrite frewrite   fread  freread
    9829     2446     4122    8368     8537



PCI$B$N$3$H$OA4A3$o$+$i$J$$$N$G$9$,!"5?Ld$JE@$,(B2$B$D(B

1. $B$J$<(Bscanpci$B$G$O8+$D$1$i$l$k%G%P%$%9$,!"(BFreeBSD$B$N%+!<%M%k$O8+$D$1B;(B
   $B$M$F$7$^$&$N$+!)(B
2. WDMA2$B$K$9$k!?$7$J$$$N>r7o$O!"$"$l$G$h$$$N$+!)(B

$B$H$$$&$H$3$m$G$9!#(B
$B2?$+JQ$J$3$H$r$7$F$$$kEy$"$l$P!"=u8@$$$?$@$1$k$H$"$j$,$?$$$G$9!#(B


-- 
TOMITA Yoshinori
RAM 40MB$B$O!"$+$J$j$-$D$$$G$9!#(B
