From mdharnois@home.com  Sat Aug  5 17:50:05 2000
Return-Path: <mdharnois@home.com>
Received: from c1030098-a.wtrlo1.ia.home.com (c1030098-a.wtrlo1.ia.home.com [24.14.126.45])
	by hub.freebsd.org (Postfix) with ESMTP id 5826837BBB5
	for <FreeBSD-gnats-submit@freebsd.org>; Sat,  5 Aug 2000 17:50:04 -0700 (PDT)
	(envelope-from mdharnois@home.com)
Received: (from mdharnois@localhost)
	by c1030098-a.wtrlo1.ia.home.com (8.9.3/8.9.3) id TAA00947;
	Sat, 5 Aug 2000 19:50:03 -0500 (CDT)
	(envelope-from mdharnois)
Message-Id: <200008060050.TAA00947@c1030098-a.wtrlo1.ia.home.com>
Date: Sat, 5 Aug 2000 19:50:03 -0500 (CDT)
From: mdharnois@home.com
To: FreeBSD-gnats-submit@freebsd.org
Subject: IDE on Intel 815E looks like Intel ICH (yay!)
X-Send-Pr-Version: 3.2

>Number:         20437
>Category:       kern
>Synopsis:       IDE on Intel 815E looks like Intel ICH (yay!)
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    sos
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sat Aug 05 18:00:01 PDT 2000
>Closed-Date:    Tue Nov 14 01:02:05 PST 2000
>Last-Modified:  Tue Nov 14 01:02:35 PST 2000
>Originator:     Michael Harnois
>Release:        FreeBSD 5.0-CURRENT i386
>Organization:
>Environment:

	ASUS CUSL2 with Intel 815E (Solana), Maxtor 51536U3

>Description:

	It appears that the IDE hardware of the Intel 815E, the ICH2, will
	work with the same code presently in place for the Intel ICH (as far
	as UDMA66, at least; obviously additional code will be required for
	the UDMA100 which the chipset is capable of. I ascertained this
	amazing fact by replacing all instances of the ID for the ICH
	(0x24118086) with the IDE for the ICH2 (0x244b8086) with these results:
	
	ata0-master: success setting up UDMA4 mode on ICH chip
	ad0: <Maxtor 51536U3/DA6207V0> ATA-5 disk at ata0 as master
	ad0: 14655MB (30015216 sectors), 29777 cyls, 16 heads, 63 S/T, 512 B/S
	ad0: 16 secs/int, 1 depth queue, UDMA66
	ad0: piomode=4 dmamode=2 udmamode=4 cblid=1
	Creating DISK ad0
	ata1-master: success setting up UDMA2 mode on ICH chip
	ad2: <QUANTUM BIGFOOT TS12.7A/A21.0G00> ATA-4 disk at ata1 as master
	ad2: 12243MB (25075008 sectors), 24876 cyls, 16 heads, 63 S/T, 512 B/S
	ad2: 16 secs/int, 1 depth queue, UDMA33
	ad2: piomode=4 dmamode=2 udmamode=2 cblid=0
	Creating DISK ad2
	ata1-slave: piomode=4 dmamode=2 udmamode=-1 dmaflag=1
	ata1-slave: success setting up WDMA2 mode on ICH chip
	

>How-To-Repeat:

	

>Fix:

--- ata-dma.c.orig	Sat Aug  5 19:43:23 2000
+++ ata-dma.c	Sat Aug  5 19:46:40 2000
@@ -101,6 +101,7 @@
 
     switch (scp->chiptype) {
 
+    case 0x244b8086:
     case 0x24118086:    /* Intel ICH */
 	if (udmamode >= 4) {
 	    int32_t mask48, new48;
@@ -139,6 +140,7 @@
 	    if (bootverbose)
 		ata_printf(scp, device, "%s setting up UDMA2 mode on %s chip\n",
 			   (error) ? "failed" : "success",
+			   (scp->chiptype == 0x244b8086) ? "ICH2" : 
 			   (scp->chiptype == 0x24118086) ? "ICH" : 
 			    (scp->chiptype == 0x24218086) ? "ICH0" :"PIIX4");
 	    if (!error) {
@@ -179,6 +181,7 @@
 		ata_printf(scp, device, "%s setting up WDMA2 mode on %s chip\n",
 			   (error) ? "failed" : "success",
 			   (scp->chiptype == 0x70108086) ? "PIIX3" : 
+			    (scp->chiptype == 0x244b8086) ? "ICH2" :
 			    (scp->chiptype == 0x24118086) ? "ICH" :
 			     (scp->chiptype == 0x24218086) ? "ICH0" :"PIIX4");
 	    if (!error) {

--- ata-all.c.orig	Sat Aug  5 19:43:07 2000
+++ ata-all.c	Sat Aug  5 19:44:22 2000
@@ -254,6 +254,9 @@
     case 0x71998086:
 	return "Intel PIIX4 ATA33 controller";
 
+    case 0x244b8086:
+	return "Intel ICH2 ATA100 controller";
+
     case 0x24118086:
 	return "Intel ICH ATA66 controller";

>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->sos 
Responsible-Changed-By: sheldonh 
Responsible-Changed-When: Mon Aug 7 04:38:12 PDT 2000 
Responsible-Changed-Why:  
Soren's driver. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=20437 
State-Changed-From-To: open->closed 
State-Changed-By: sos 
State-Changed-When: Tue Nov 14 01:02:05 PST 2000 
State-Changed-Why:  
4.2 has support for all the ICH? chips. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=20437 
>Unformatted:
