Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 Oct 2000 12:32:49 +0300
From:      Ruslan Ermilov <ru@FreeBSD.ORG>
To:        Antony T Curtis <antony@abacus.co.uk>
Cc:        freebsd-stable@FreeBSD.ORG
Subject:   Re: i815 AGP
Message-ID:  <20001019123249.A6627@sunbay.com>
In-Reply-To: <39EEBD05.D20E6FE@abacus.co.uk>; from antony@abacus.co.uk on Thu, Oct 19, 2000 at 10:21:09AM %2B0100
References:  <39EEBD05.D20E6FE@abacus.co.uk>

next in thread | previous in thread | raw e-mail | index | archive | help

--OXfL5xGRrasGEqWY
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Thu, Oct 19, 2000 at 10:21:09AM +0100, Antony T Curtis wrote:
> 
> The AGP kernel module I have for FreeBSD 4.1 doesn't seem to support the
> i815 AGP controller....
> 
> Does anyone know if it is safe to "hack" the current i810 driver to
> recognise the i815 chip or are they very different? If so, does someone
> know about it and is a revised handler being developed?
> 
> Thanks.
> 
> (I know this is a "cheap" chipset but they're increasingly common
> nowadays)
> 
I've committed the support for i815 to -current after I've received
the success response.  Could you please try the attached patch, and
let me know whether it works for you?

-- 
Ruslan Ermilov		Oracle Developer/DBA,
ru@sunbay.com		Sunbay Software AG,
ru@FreeBSD.org		FreeBSD committer,
+380.652.512.251	Simferopol, Ukraine

http://www.FreeBSD.org	The Power To Serve
http://www.oracle.com	Enabling The Information Age

--OXfL5xGRrasGEqWY
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=p

Index: agp_i810.c
===================================================================
RCS file: /home/ncvs/src/sys/pci/agp_i810.c,v
retrieving revision 1.1.2.1
retrieving revision 1.2
diff -u -p -r1.1.2.1 -r1.2
--- agp_i810.c	2000/07/19 09:48:04	1.1.2.1
+++ agp_i810.c	2000/10/16 08:53:00	1.2
@@ -84,6 +84,9 @@ agp_i810_match(device_t dev)
 
 	case 0x71258086:
 		return ("Intel 82810E (i810E GMCH) SVGA controller");
+
+	case 0x11328086:
+		return ("Intel 82815 (i815 GMCH) SVGA controller");
 	};
 
 	return NULL;
@@ -100,9 +103,20 @@ agp_i810_find_bridge(device_t dev)
 	u_int32_t devid;
 
 	/*
-	 * XXX assume that the bridge device's ID is one minus the vga ID.
+	 * Calculate bridge device's ID.
 	 */
-	devid = pci_get_devid(dev) - 0x10000;
+	devid = pci_get_devid(dev);
+	switch (devid) {
+	case 0x71218086:
+	case 0x71238086:
+	case 0x71258086:
+		devid -= 0x10000;
+		break;
+
+	case 0x11328086:
+		devid = 0x11308086;
+		break;
+	};
 	if (device_get_children(device_get_parent(dev), &children, &nchildren))
 		return 0;
 

--OXfL5xGRrasGEqWY--


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20001019123249.A6627>