提交 877fdacf 编写于 作者: Z Zhenyu Wang 提交者: Eric Anholt

agp/intel: set 40-bit dma mask on Sandybridge

Signed-off-by: NZhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: NEric Anholt <eric@anholt.net>
上级 156dadc1
...@@ -825,7 +825,8 @@ static const struct intel_driver_description { ...@@ -825,7 +825,8 @@ static const struct intel_driver_description {
static int __devinit intel_gmch_probe(struct pci_dev *pdev, static int __devinit intel_gmch_probe(struct pci_dev *pdev,
struct agp_bridge_data *bridge) struct agp_bridge_data *bridge)
{ {
int i; int i, mask;
bridge->driver = NULL; bridge->driver = NULL;
for (i = 0; intel_agp_chipsets[i].name != NULL; i++) { for (i = 0; intel_agp_chipsets[i].name != NULL; i++) {
...@@ -845,14 +846,19 @@ static int __devinit intel_gmch_probe(struct pci_dev *pdev, ...@@ -845,14 +846,19 @@ static int __devinit intel_gmch_probe(struct pci_dev *pdev,
dev_info(&pdev->dev, "Intel %s Chipset\n", intel_agp_chipsets[i].name); dev_info(&pdev->dev, "Intel %s Chipset\n", intel_agp_chipsets[i].name);
if (bridge->driver->mask_memory == intel_i965_mask_memory) { if (bridge->driver->mask_memory == intel_gen6_mask_memory)
if (pci_set_dma_mask(intel_private.pcidev, DMA_BIT_MASK(36))) mask = 40;
dev_err(&intel_private.pcidev->dev, else if (bridge->driver->mask_memory == intel_i965_mask_memory)
"set gfx device dma mask 36bit failed!\n"); mask = 36;
else else
pci_set_consistent_dma_mask(intel_private.pcidev, mask = 32;
DMA_BIT_MASK(36));
} if (pci_set_dma_mask(intel_private.pcidev, DMA_BIT_MASK(mask)))
dev_err(&intel_private.pcidev->dev,
"set gfx device dma mask %d-bit failed!\n", mask);
else
pci_set_consistent_dma_mask(intel_private.pcidev,
DMA_BIT_MASK(mask));
return 1; return 1;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册