aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/agp/intel-agp.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/char/agp/intel-agp.c')
-rw-r--r--drivers/char/agp/intel-agp.c127
1 files changed, 67 insertions, 60 deletions
diff --git a/drivers/char/agp/intel-agp.c b/drivers/char/agp/intel-agp.c
index 4068467ce7b9..8a713f1e9653 100644
--- a/drivers/char/agp/intel-agp.c
+++ b/drivers/char/agp/intel-agp.c
@@ -8,6 +8,7 @@
8#include <linux/kernel.h> 8#include <linux/kernel.h>
9#include <linux/pagemap.h> 9#include <linux/pagemap.h>
10#include <linux/agp_backend.h> 10#include <linux/agp_backend.h>
11#include <asm/smp.h>
11#include "agp.h" 12#include "agp.h"
12 13
13/* 14/*
@@ -36,10 +37,10 @@
36#define PCI_DEVICE_ID_INTEL_82965GME_IG 0x2A12 37#define PCI_DEVICE_ID_INTEL_82965GME_IG 0x2A12
37#define PCI_DEVICE_ID_INTEL_82945GME_HB 0x27AC 38#define PCI_DEVICE_ID_INTEL_82945GME_HB 0x27AC
38#define PCI_DEVICE_ID_INTEL_82945GME_IG 0x27AE 39#define PCI_DEVICE_ID_INTEL_82945GME_IG 0x27AE
39#define PCI_DEVICE_ID_INTEL_IGDGM_HB 0xA010 40#define PCI_DEVICE_ID_INTEL_PINEVIEW_M_HB 0xA010
40#define PCI_DEVICE_ID_INTEL_IGDGM_IG 0xA011 41#define PCI_DEVICE_ID_INTEL_PINEVIEW_M_IG 0xA011
41#define PCI_DEVICE_ID_INTEL_IGDG_HB 0xA000 42#define PCI_DEVICE_ID_INTEL_PINEVIEW_HB 0xA000
42#define PCI_DEVICE_ID_INTEL_IGDG_IG 0xA001 43#define PCI_DEVICE_ID_INTEL_PINEVIEW_IG 0xA001
43#define PCI_DEVICE_ID_INTEL_G33_HB 0x29C0 44#define PCI_DEVICE_ID_INTEL_G33_HB 0x29C0
44#define PCI_DEVICE_ID_INTEL_G33_IG 0x29C2 45#define PCI_DEVICE_ID_INTEL_G33_IG 0x29C2
45#define PCI_DEVICE_ID_INTEL_Q35_HB 0x29B0 46#define PCI_DEVICE_ID_INTEL_Q35_HB 0x29B0
@@ -50,19 +51,20 @@
50#define PCI_DEVICE_ID_INTEL_B43_IG 0x2E42 51#define PCI_DEVICE_ID_INTEL_B43_IG 0x2E42
51#define PCI_DEVICE_ID_INTEL_GM45_HB 0x2A40 52#define PCI_DEVICE_ID_INTEL_GM45_HB 0x2A40
52#define PCI_DEVICE_ID_INTEL_GM45_IG 0x2A42 53#define PCI_DEVICE_ID_INTEL_GM45_IG 0x2A42
53#define PCI_DEVICE_ID_INTEL_IGD_E_HB 0x2E00 54#define PCI_DEVICE_ID_INTEL_EAGLELAKE_HB 0x2E00
54#define PCI_DEVICE_ID_INTEL_IGD_E_IG 0x2E02 55#define PCI_DEVICE_ID_INTEL_EAGLELAKE_IG 0x2E02
55#define PCI_DEVICE_ID_INTEL_Q45_HB 0x2E10 56#define PCI_DEVICE_ID_INTEL_Q45_HB 0x2E10
56#define PCI_DEVICE_ID_INTEL_Q45_IG 0x2E12 57#define PCI_DEVICE_ID_INTEL_Q45_IG 0x2E12
57#define PCI_DEVICE_ID_INTEL_G45_HB 0x2E20 58#define PCI_DEVICE_ID_INTEL_G45_HB 0x2E20
58#define PCI_DEVICE_ID_INTEL_G45_IG 0x2E22 59#define PCI_DEVICE_ID_INTEL_G45_IG 0x2E22
59#define PCI_DEVICE_ID_INTEL_G41_HB 0x2E30 60#define PCI_DEVICE_ID_INTEL_G41_HB 0x2E30
60#define PCI_DEVICE_ID_INTEL_G41_IG 0x2E32 61#define PCI_DEVICE_ID_INTEL_G41_IG 0x2E32
61#define PCI_DEVICE_ID_INTEL_IGDNG_D_HB 0x0040 62#define PCI_DEVICE_ID_INTEL_IRONLAKE_D_HB 0x0040
62#define PCI_DEVICE_ID_INTEL_IGDNG_D_IG 0x0042 63#define PCI_DEVICE_ID_INTEL_IRONLAKE_D_IG 0x0042
63#define PCI_DEVICE_ID_INTEL_IGDNG_M_HB 0x0044 64#define PCI_DEVICE_ID_INTEL_IRONLAKE_M_HB 0x0044
64#define PCI_DEVICE_ID_INTEL_IGDNG_MA_HB 0x0062 65#define PCI_DEVICE_ID_INTEL_IRONLAKE_MA_HB 0x0062
65#define PCI_DEVICE_ID_INTEL_IGDNG_M_IG 0x0046 66#define PCI_DEVICE_ID_INTEL_IRONLAKE_MC2_HB 0x006a
67#define PCI_DEVICE_ID_INTEL_IRONLAKE_M_IG 0x0046
66 68
67/* cover 915 and 945 variants */ 69/* cover 915 and 945 variants */
68#define IS_I915 (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_E7221_HB || \ 70#define IS_I915 (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_E7221_HB || \
@@ -82,21 +84,22 @@
82#define IS_G33 (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G33_HB || \ 84#define IS_G33 (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G33_HB || \
83 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q35_HB || \ 85 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q35_HB || \
84 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q33_HB || \ 86 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q33_HB || \
85 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDGM_HB || \ 87 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_PINEVIEW_M_HB || \
86 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDG_HB) 88 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_PINEVIEW_HB)
87 89
88#define IS_IGD (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDGM_HB || \ 90#define IS_PINEVIEW (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_PINEVIEW_M_HB || \
89 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDG_HB) 91 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_PINEVIEW_HB)
90 92
91#define IS_G4X (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGD_E_HB || \ 93#define IS_G4X (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_EAGLELAKE_HB || \
92 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q45_HB || \ 94 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q45_HB || \
93 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G45_HB || \ 95 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G45_HB || \
94 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_GM45_HB || \ 96 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_GM45_HB || \
95 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G41_HB || \ 97 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G41_HB || \
96 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_B43_HB || \ 98 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_B43_HB || \
97 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDNG_D_HB || \ 99 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IRONLAKE_D_HB || \
98 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDNG_M_HB || \ 100 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IRONLAKE_M_HB || \
99 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDNG_MA_HB) 101 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IRONLAKE_MA_HB || \
102 agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IRONLAKE_MC2_HB)
100 103
101extern int agp_memory_reserved; 104extern int agp_memory_reserved;
102 105
@@ -176,6 +179,7 @@ static struct _intel_private {
176 * popup and for the GTT. 179 * popup and for the GTT.
177 */ 180 */
178 int gtt_entries; /* i830+ */ 181 int gtt_entries; /* i830+ */
182 int gtt_total_size;
179 union { 183 union {
180 void __iomem *i9xx_flush_page; 184 void __iomem *i9xx_flush_page;
181 void *i8xx_flush_page; 185 void *i8xx_flush_page;
@@ -651,7 +655,7 @@ static void intel_i830_init_gtt_entries(void)
651 size = 512; 655 size = 512;
652 } 656 }
653 size += 4; /* add in BIOS popup space */ 657 size += 4; /* add in BIOS popup space */
654 } else if (IS_G33 && !IS_IGD) { 658 } else if (IS_G33 && !IS_PINEVIEW) {
655 /* G33's GTT size defined in gmch_ctrl */ 659 /* G33's GTT size defined in gmch_ctrl */
656 switch (gmch_ctrl & G33_PGETBL_SIZE_MASK) { 660 switch (gmch_ctrl & G33_PGETBL_SIZE_MASK) {
657 case G33_PGETBL_SIZE_1M: 661 case G33_PGETBL_SIZE_1M:
@@ -667,7 +671,7 @@ static void intel_i830_init_gtt_entries(void)
667 size = 512; 671 size = 512;
668 } 672 }
669 size += 4; 673 size += 4;
670 } else if (IS_G4X || IS_IGD) { 674 } else if (IS_G4X || IS_PINEVIEW) {
671 /* On 4 series hardware, GTT stolen is separate from graphics 675 /* On 4 series hardware, GTT stolen is separate from graphics
672 * stolen, ignore it in stolen gtt entries counting. However, 676 * stolen, ignore it in stolen gtt entries counting. However,
673 * 4KB of the stolen memory doesn't get mapped to the GTT. 677 * 4KB of the stolen memory doesn't get mapped to the GTT.
@@ -812,12 +816,6 @@ static void intel_i830_setup_flush(void)
812 intel_i830_fini_flush(); 816 intel_i830_fini_flush();
813} 817}
814 818
815static void
816do_wbinvd(void *null)
817{
818 wbinvd();
819}
820
821/* The chipset_flush interface needs to get data that has already been 819/* The chipset_flush interface needs to get data that has already been
822 * flushed out of the CPU all the way out to main memory, because the GPU 820 * flushed out of the CPU all the way out to main memory, because the GPU
823 * doesn't snoop those buffers. 821 * doesn't snoop those buffers.
@@ -834,12 +832,10 @@ static void intel_i830_chipset_flush(struct agp_bridge_data *bridge)
834 832
835 memset(pg, 0, 1024); 833 memset(pg, 0, 1024);
836 834
837 if (cpu_has_clflush) { 835 if (cpu_has_clflush)
838 clflush_cache_range(pg, 1024); 836 clflush_cache_range(pg, 1024);
839 } else { 837 else if (wbinvd_on_all_cpus() != 0)
840 if (on_each_cpu(do_wbinvd, NULL, 1) != 0) 838 printk(KERN_ERR "Timed out waiting for cache flush.\n");
841 printk(KERN_ERR "Timed out waiting for cache flush.\n");
842 }
843} 839}
844 840
845/* The intel i830 automatically initializes the agp aperture during POST. 841/* The intel i830 automatically initializes the agp aperture during POST.
@@ -1151,7 +1147,7 @@ static int intel_i915_configure(void)
1151 readl(intel_private.registers+I810_PGETBL_CTL); /* PCI Posting. */ 1147 readl(intel_private.registers+I810_PGETBL_CTL); /* PCI Posting. */
1152 1148
1153 if (agp_bridge->driver->needs_scratch_page) { 1149 if (agp_bridge->driver->needs_scratch_page) {
1154 for (i = intel_private.gtt_entries; i < current_size->num_entries; i++) { 1150 for (i = intel_private.gtt_entries; i < intel_private.gtt_total_size; i++) {
1155 writel(agp_bridge->scratch_page, intel_private.gtt+i); 1151 writel(agp_bridge->scratch_page, intel_private.gtt+i);
1156 } 1152 }
1157 readl(intel_private.gtt+i-1); /* PCI Posting. */ 1153 readl(intel_private.gtt+i-1); /* PCI Posting. */
@@ -1161,12 +1157,6 @@ static int intel_i915_configure(void)
1161 1157
1162 intel_i9xx_setup_flush(); 1158 intel_i9xx_setup_flush();
1163 1159
1164#ifdef USE_PCI_DMA_API
1165 if (pci_set_dma_mask(intel_private.pcidev, DMA_BIT_MASK(36)))
1166 dev_err(&intel_private.pcidev->dev,
1167 "set gfx device dma mask 36bit failed!\n");
1168#endif
1169
1170 return 0; 1160 return 0;
1171} 1161}
1172 1162
@@ -1312,6 +1302,8 @@ static int intel_i915_create_gatt_table(struct agp_bridge_data *bridge)
1312 if (!intel_private.gtt) 1302 if (!intel_private.gtt)
1313 return -ENOMEM; 1303 return -ENOMEM;
1314 1304
1305 intel_private.gtt_total_size = gtt_map_size / 4;
1306
1315 temp &= 0xfff80000; 1307 temp &= 0xfff80000;
1316 1308
1317 intel_private.registers = ioremap(temp, 128 * 4096); 1309 intel_private.registers = ioremap(temp, 128 * 4096);
@@ -1356,14 +1348,15 @@ static void intel_i965_get_gtt_range(int *gtt_offset, int *gtt_size)
1356{ 1348{
1357 switch (agp_bridge->dev->device) { 1349 switch (agp_bridge->dev->device) {
1358 case PCI_DEVICE_ID_INTEL_GM45_HB: 1350 case PCI_DEVICE_ID_INTEL_GM45_HB:
1359 case PCI_DEVICE_ID_INTEL_IGD_E_HB: 1351 case PCI_DEVICE_ID_INTEL_EAGLELAKE_HB:
1360 case PCI_DEVICE_ID_INTEL_Q45_HB: 1352 case PCI_DEVICE_ID_INTEL_Q45_HB:
1361 case PCI_DEVICE_ID_INTEL_G45_HB: 1353 case PCI_DEVICE_ID_INTEL_G45_HB:
1362 case PCI_DEVICE_ID_INTEL_G41_HB: 1354 case PCI_DEVICE_ID_INTEL_G41_HB:
1363 case PCI_DEVICE_ID_INTEL_B43_HB: 1355 case PCI_DEVICE_ID_INTEL_B43_HB:
1364 case PCI_DEVICE_ID_INTEL_IGDNG_D_HB: 1356 case PCI_DEVICE_ID_INTEL_IRONLAKE_D_HB:
1365 case PCI_DEVICE_ID_INTEL_IGDNG_M_HB: 1357 case PCI_DEVICE_ID_INTEL_IRONLAKE_M_HB:
1366 case PCI_DEVICE_ID_INTEL_IGDNG_MA_HB: 1358 case PCI_DEVICE_ID_INTEL_IRONLAKE_MA_HB:
1359 case PCI_DEVICE_ID_INTEL_IRONLAKE_MC2_HB:
1367 *gtt_offset = *gtt_size = MB(2); 1360 *gtt_offset = *gtt_size = MB(2);
1368 break; 1361 break;
1369 default: 1362 default:
@@ -1398,6 +1391,8 @@ static int intel_i965_create_gatt_table(struct agp_bridge_data *bridge)
1398 if (!intel_private.gtt) 1391 if (!intel_private.gtt)
1399 return -ENOMEM; 1392 return -ENOMEM;
1400 1393
1394 intel_private.gtt_total_size = gtt_size / 4;
1395
1401 intel_private.registers = ioremap(temp, 128 * 4096); 1396 intel_private.registers = ioremap(temp, 128 * 4096);
1402 if (!intel_private.registers) { 1397 if (!intel_private.registers) {
1403 iounmap(intel_private.gtt); 1398 iounmap(intel_private.gtt);
@@ -2343,14 +2338,14 @@ static const struct intel_driver_description {
2343 NULL, &intel_g33_driver }, 2338 NULL, &intel_g33_driver },
2344 { PCI_DEVICE_ID_INTEL_Q33_HB, PCI_DEVICE_ID_INTEL_Q33_IG, 0, "Q33", 2339 { PCI_DEVICE_ID_INTEL_Q33_HB, PCI_DEVICE_ID_INTEL_Q33_IG, 0, "Q33",
2345 NULL, &intel_g33_driver }, 2340 NULL, &intel_g33_driver },
2346 { PCI_DEVICE_ID_INTEL_IGDGM_HB, PCI_DEVICE_ID_INTEL_IGDGM_IG, 0, "IGD", 2341 { PCI_DEVICE_ID_INTEL_PINEVIEW_M_HB, PCI_DEVICE_ID_INTEL_PINEVIEW_M_IG, 0, "Pineview",
2347 NULL, &intel_g33_driver }, 2342 NULL, &intel_g33_driver },
2348 { PCI_DEVICE_ID_INTEL_IGDG_HB, PCI_DEVICE_ID_INTEL_IGDG_IG, 0, "IGD", 2343 { PCI_DEVICE_ID_INTEL_PINEVIEW_HB, PCI_DEVICE_ID_INTEL_PINEVIEW_IG, 0, "Pineview",
2349 NULL, &intel_g33_driver }, 2344 NULL, &intel_g33_driver },
2350 { PCI_DEVICE_ID_INTEL_GM45_HB, PCI_DEVICE_ID_INTEL_GM45_IG, 0, 2345 { PCI_DEVICE_ID_INTEL_GM45_HB, PCI_DEVICE_ID_INTEL_GM45_IG, 0,
2351 "Mobile IntelĀ® GM45 Express", NULL, &intel_i965_driver }, 2346 "GM45", NULL, &intel_i965_driver },
2352 { PCI_DEVICE_ID_INTEL_IGD_E_HB, PCI_DEVICE_ID_INTEL_IGD_E_IG, 0, 2347 { PCI_DEVICE_ID_INTEL_EAGLELAKE_HB, PCI_DEVICE_ID_INTEL_EAGLELAKE_IG, 0,
2353 "Intel Integrated Graphics Device", NULL, &intel_i965_driver }, 2348 "Eaglelake", NULL, &intel_i965_driver },
2354 { PCI_DEVICE_ID_INTEL_Q45_HB, PCI_DEVICE_ID_INTEL_Q45_IG, 0, 2349 { PCI_DEVICE_ID_INTEL_Q45_HB, PCI_DEVICE_ID_INTEL_Q45_IG, 0,
2355 "Q45/Q43", NULL, &intel_i965_driver }, 2350 "Q45/Q43", NULL, &intel_i965_driver },
2356 { PCI_DEVICE_ID_INTEL_G45_HB, PCI_DEVICE_ID_INTEL_G45_IG, 0, 2351 { PCI_DEVICE_ID_INTEL_G45_HB, PCI_DEVICE_ID_INTEL_G45_IG, 0,
@@ -2359,12 +2354,14 @@ static const struct intel_driver_description {
2359 "B43", NULL, &intel_i965_driver }, 2354 "B43", NULL, &intel_i965_driver },
2360 { PCI_DEVICE_ID_INTEL_G41_HB, PCI_DEVICE_ID_INTEL_G41_IG, 0, 2355 { PCI_DEVICE_ID_INTEL_G41_HB, PCI_DEVICE_ID_INTEL_G41_IG, 0,
2361 "G41", NULL, &intel_i965_driver }, 2356 "G41", NULL, &intel_i965_driver },
2362 { PCI_DEVICE_ID_INTEL_IGDNG_D_HB, PCI_DEVICE_ID_INTEL_IGDNG_D_IG, 0, 2357 { PCI_DEVICE_ID_INTEL_IRONLAKE_D_HB, PCI_DEVICE_ID_INTEL_IRONLAKE_D_IG, 0,
2363 "IGDNG/D", NULL, &intel_i965_driver }, 2358 "Ironlake/D", NULL, &intel_i965_driver },
2364 { PCI_DEVICE_ID_INTEL_IGDNG_M_HB, PCI_DEVICE_ID_INTEL_IGDNG_M_IG, 0, 2359 { PCI_DEVICE_ID_INTEL_IRONLAKE_M_HB, PCI_DEVICE_ID_INTEL_IRONLAKE_M_IG, 0,
2365 "IGDNG/M", NULL, &intel_i965_driver }, 2360 "Ironlake/M", NULL, &intel_i965_driver },
2366 { PCI_DEVICE_ID_INTEL_IGDNG_MA_HB, PCI_DEVICE_ID_INTEL_IGDNG_M_IG, 0, 2361 { PCI_DEVICE_ID_INTEL_IRONLAKE_MA_HB, PCI_DEVICE_ID_INTEL_IRONLAKE_M_IG, 0,
2367 "IGDNG/MA", NULL, &intel_i965_driver }, 2362 "Ironlake/MA", NULL, &intel_i965_driver },
2363 { PCI_DEVICE_ID_INTEL_IRONLAKE_MC2_HB, PCI_DEVICE_ID_INTEL_IRONLAKE_M_IG, 0,
2364 "Ironlake/MC2", NULL, &intel_i965_driver },
2368 { 0, 0, 0, NULL, NULL, NULL } 2365 { 0, 0, 0, NULL, NULL, NULL }
2369}; 2366};
2370 2367
@@ -2456,6 +2453,15 @@ static int __devinit agp_intel_probe(struct pci_dev *pdev,
2456 &bridge->mode); 2453 &bridge->mode);
2457 } 2454 }
2458 2455
2456 if (bridge->driver->mask_memory == intel_i965_mask_memory) {
2457 if (pci_set_dma_mask(intel_private.pcidev, DMA_BIT_MASK(36)))
2458 dev_err(&intel_private.pcidev->dev,
2459 "set gfx device dma mask 36bit failed!\n");
2460 else
2461 pci_set_consistent_dma_mask(intel_private.pcidev,
2462 DMA_BIT_MASK(36));
2463 }
2464
2459 pci_set_drvdata(pdev, bridge); 2465 pci_set_drvdata(pdev, bridge);
2460 return agp_add_bridge(bridge); 2466 return agp_add_bridge(bridge);
2461} 2467}
@@ -2541,8 +2547,8 @@ static struct pci_device_id agp_intel_pci_table[] = {
2541 ID(PCI_DEVICE_ID_INTEL_82945G_HB), 2547 ID(PCI_DEVICE_ID_INTEL_82945G_HB),
2542 ID(PCI_DEVICE_ID_INTEL_82945GM_HB), 2548 ID(PCI_DEVICE_ID_INTEL_82945GM_HB),
2543 ID(PCI_DEVICE_ID_INTEL_82945GME_HB), 2549 ID(PCI_DEVICE_ID_INTEL_82945GME_HB),
2544 ID(PCI_DEVICE_ID_INTEL_IGDGM_HB), 2550 ID(PCI_DEVICE_ID_INTEL_PINEVIEW_M_HB),
2545 ID(PCI_DEVICE_ID_INTEL_IGDG_HB), 2551 ID(PCI_DEVICE_ID_INTEL_PINEVIEW_HB),
2546 ID(PCI_DEVICE_ID_INTEL_82946GZ_HB), 2552 ID(PCI_DEVICE_ID_INTEL_82946GZ_HB),
2547 ID(PCI_DEVICE_ID_INTEL_82G35_HB), 2553 ID(PCI_DEVICE_ID_INTEL_82G35_HB),
2548 ID(PCI_DEVICE_ID_INTEL_82965Q_HB), 2554 ID(PCI_DEVICE_ID_INTEL_82965Q_HB),
@@ -2553,14 +2559,15 @@ static struct pci_device_id agp_intel_pci_table[] = {
2553 ID(PCI_DEVICE_ID_INTEL_Q35_HB), 2559 ID(PCI_DEVICE_ID_INTEL_Q35_HB),
2554 ID(PCI_DEVICE_ID_INTEL_Q33_HB), 2560 ID(PCI_DEVICE_ID_INTEL_Q33_HB),
2555 ID(PCI_DEVICE_ID_INTEL_GM45_HB), 2561 ID(PCI_DEVICE_ID_INTEL_GM45_HB),
2556 ID(PCI_DEVICE_ID_INTEL_IGD_E_HB), 2562 ID(PCI_DEVICE_ID_INTEL_EAGLELAKE_HB),
2557 ID(PCI_DEVICE_ID_INTEL_Q45_HB), 2563 ID(PCI_DEVICE_ID_INTEL_Q45_HB),
2558 ID(PCI_DEVICE_ID_INTEL_G45_HB), 2564 ID(PCI_DEVICE_ID_INTEL_G45_HB),
2559 ID(PCI_DEVICE_ID_INTEL_G41_HB), 2565 ID(PCI_DEVICE_ID_INTEL_G41_HB),
2560 ID(PCI_DEVICE_ID_INTEL_B43_HB), 2566 ID(PCI_DEVICE_ID_INTEL_B43_HB),
2561 ID(PCI_DEVICE_ID_INTEL_IGDNG_D_HB), 2567 ID(PCI_DEVICE_ID_INTEL_IRONLAKE_D_HB),
2562 ID(PCI_DEVICE_ID_INTEL_IGDNG_M_HB), 2568 ID(PCI_DEVICE_ID_INTEL_IRONLAKE_M_HB),
2563 ID(PCI_DEVICE_ID_INTEL_IGDNG_MA_HB), 2569 ID(PCI_DEVICE_ID_INTEL_IRONLAKE_MA_HB),
2570 ID(PCI_DEVICE_ID_INTEL_IRONLAKE_MC2_HB),
2564 { } 2571 { }
2565}; 2572};
2566 2573