diff options
Diffstat (limited to 'drivers/char/agp/intel-agp.c')
| -rw-r--r-- | drivers/char/agp/intel-agp.c | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/drivers/char/agp/intel-agp.c b/drivers/char/agp/intel-agp.c index ddf5def1b0da..710af89b176d 100644 --- a/drivers/char/agp/intel-agp.c +++ b/drivers/char/agp/intel-agp.c | |||
| @@ -819,13 +819,16 @@ static const struct intel_driver_description { | |||
| 819 | "Sandybridge", NULL, &intel_gen6_driver }, | 819 | "Sandybridge", NULL, &intel_gen6_driver }, |
| 820 | { PCI_DEVICE_ID_INTEL_SANDYBRIDGE_M_HB, PCI_DEVICE_ID_INTEL_SANDYBRIDGE_M_IG, | 820 | { PCI_DEVICE_ID_INTEL_SANDYBRIDGE_M_HB, PCI_DEVICE_ID_INTEL_SANDYBRIDGE_M_IG, |
| 821 | "Sandybridge", NULL, &intel_gen6_driver }, | 821 | "Sandybridge", NULL, &intel_gen6_driver }, |
| 822 | { PCI_DEVICE_ID_INTEL_SANDYBRIDGE_M_HB, PCI_DEVICE_ID_INTEL_SANDYBRIDGE_M_D0_IG, | ||
| 823 | "Sandybridge", NULL, &intel_gen6_driver }, | ||
| 822 | { 0, 0, NULL, NULL, NULL } | 824 | { 0, 0, NULL, NULL, NULL } |
| 823 | }; | 825 | }; |
| 824 | 826 | ||
| 825 | static int __devinit intel_gmch_probe(struct pci_dev *pdev, | 827 | static int __devinit intel_gmch_probe(struct pci_dev *pdev, |
| 826 | struct agp_bridge_data *bridge) | 828 | struct agp_bridge_data *bridge) |
| 827 | { | 829 | { |
| 828 | int i; | 830 | int i, mask; |
| 831 | |||
| 829 | bridge->driver = NULL; | 832 | bridge->driver = NULL; |
| 830 | 833 | ||
| 831 | for (i = 0; intel_agp_chipsets[i].name != NULL; i++) { | 834 | for (i = 0; intel_agp_chipsets[i].name != NULL; i++) { |
| @@ -845,14 +848,19 @@ static int __devinit intel_gmch_probe(struct pci_dev *pdev, | |||
| 845 | 848 | ||
| 846 | dev_info(&pdev->dev, "Intel %s Chipset\n", intel_agp_chipsets[i].name); | 849 | dev_info(&pdev->dev, "Intel %s Chipset\n", intel_agp_chipsets[i].name); |
| 847 | 850 | ||
| 848 | if (bridge->driver->mask_memory == intel_i965_mask_memory) { | 851 | if (bridge->driver->mask_memory == intel_gen6_mask_memory) |
| 849 | if (pci_set_dma_mask(intel_private.pcidev, DMA_BIT_MASK(36))) | 852 | mask = 40; |
| 850 | dev_err(&intel_private.pcidev->dev, | 853 | else if (bridge->driver->mask_memory == intel_i965_mask_memory) |
| 851 | "set gfx device dma mask 36bit failed!\n"); | 854 | mask = 36; |
| 852 | else | 855 | else |
| 853 | pci_set_consistent_dma_mask(intel_private.pcidev, | 856 | mask = 32; |
| 854 | DMA_BIT_MASK(36)); | 857 | |
| 855 | } | 858 | if (pci_set_dma_mask(intel_private.pcidev, DMA_BIT_MASK(mask))) |
| 859 | dev_err(&intel_private.pcidev->dev, | ||
| 860 | "set gfx device dma mask %d-bit failed!\n", mask); | ||
| 861 | else | ||
| 862 | pci_set_consistent_dma_mask(intel_private.pcidev, | ||
| 863 | DMA_BIT_MASK(mask)); | ||
| 856 | 864 | ||
| 857 | return 1; | 865 | return 1; |
| 858 | } | 866 | } |
