summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorpeadar <peadar@FreeBSD.org>2004-03-13 16:06:32 +0000
committerpeadar <peadar@FreeBSD.org>2004-03-13 16:06:32 +0000
commitf6b97d7e9a5dacce816348b55caf3cd22f59e040 (patch)
tree340593a2842af3b782200b30913c1d58746b98a5 /sys
parent94744a8a7d7173f15f69a8b240af991f357b1daf (diff)
downloadFreeBSD-src-f6b97d7e9a5dacce816348b55caf3cd22f59e040.zip
FreeBSD-src-f6b97d7e9a5dacce816348b55caf3cd22f59e040.tar.gz
Recognise the 82845G AGP bridge, and poke it appropriately at
attach/detach time. Assigning the default behaviour to this particular device is incorrect, corrupting the video BIOS aperture, and breaking VESA support in the kernel and XFree86. Reviewed By: dfr MFC after: 1 week PR: kern/62906
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/agp/agp_intel.c5
-rw-r--r--sys/pci/agp_intel.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/sys/dev/agp/agp_intel.c b/sys/dev/agp/agp_intel.c
index 047ed57..6848661 100644
--- a/sys/dev/agp/agp_intel.c
+++ b/sys/dev/agp/agp_intel.c
@@ -111,6 +111,9 @@ agp_intel_match(device_t dev)
case 0x25788086:
return ("Intel 82875P host to AGP bridge");
+
+ case 0x25608086: /* i845G */
+ return ("Intel 82845G host to AGP bridge");
};
if (pci_get_vendor(dev) == 0x8086)
@@ -236,6 +239,7 @@ agp_intel_attach(device_t dev)
case 0x25318086: /* i860 */
case 0x25708086: /* i865 */
case 0x25788086: /* i875P */
+ case 0x25608086: /* i845G */
pci_write_config(dev, AGP_INTEL_I8XX_ERRSTS, 0x00ff, 2);
break;
@@ -278,6 +282,7 @@ agp_intel_detach(device_t dev)
& ~(1 << 1)), 1);
case 0x1a308086: /* i845 */
+ case 0x25608086: /* i845G */
case 0x33408086: /* i855 */
case 0x25708086: /* i865 */
case 0x25788086: /* i875P */
diff --git a/sys/pci/agp_intel.c b/sys/pci/agp_intel.c
index 047ed57..6848661 100644
--- a/sys/pci/agp_intel.c
+++ b/sys/pci/agp_intel.c
@@ -111,6 +111,9 @@ agp_intel_match(device_t dev)
case 0x25788086:
return ("Intel 82875P host to AGP bridge");
+
+ case 0x25608086: /* i845G */
+ return ("Intel 82845G host to AGP bridge");
};
if (pci_get_vendor(dev) == 0x8086)
@@ -236,6 +239,7 @@ agp_intel_attach(device_t dev)
case 0x25318086: /* i860 */
case 0x25708086: /* i865 */
case 0x25788086: /* i875P */
+ case 0x25608086: /* i845G */
pci_write_config(dev, AGP_INTEL_I8XX_ERRSTS, 0x00ff, 2);
break;
@@ -278,6 +282,7 @@ agp_intel_detach(device_t dev)
& ~(1 << 1)), 1);
case 0x1a308086: /* i845 */
+ case 0x25608086: /* i845G */
case 0x33408086: /* i855 */
case 0x25708086: /* i865 */
case 0x25788086: /* i875P */
OpenPOWER on IntegriCloud