diff options
author | David Woodhouse <dwmw2@infradead.org> | 2009-11-18 05:22:46 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2009-11-18 19:34:30 -0500 |
commit | ec402ba97a6479dd80488b4404a73275e894289f (patch) | |
tree | d55b61a66d15b861d73193d8ac0e2b7a22a382c3 /drivers | |
parent | 799dd75b1a8380a967c929a4551895788c374b31 (diff) |
agp/intel-agp: Set dma_mask for capable chipsets before agp_add_bridge()
We should set this before calling agp_add_bridge() so that it's done
before we map the scratch page too.
This should probably fix the regression reported as k.o. bug #14627.
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/char/agp/intel-agp.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/char/agp/intel-agp.c b/drivers/char/agp/intel-agp.c index 4068467ce7b9..10e1f0390bbb 100644 --- a/drivers/char/agp/intel-agp.c +++ b/drivers/char/agp/intel-agp.c | |||
@@ -1161,12 +1161,6 @@ static int intel_i915_configure(void) | |||
1161 | 1161 | ||
1162 | intel_i9xx_setup_flush(); | 1162 | intel_i9xx_setup_flush(); |
1163 | 1163 | ||
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; | 1164 | return 0; |
1171 | } | 1165 | } |
1172 | 1166 | ||
@@ -2456,6 +2450,11 @@ static int __devinit agp_intel_probe(struct pci_dev *pdev, | |||
2456 | &bridge->mode); | 2450 | &bridge->mode); |
2457 | } | 2451 | } |
2458 | 2452 | ||
2453 | if (bridge->driver->mask_memory == intel_i965_mask_memory) | ||
2454 | if (pci_set_dma_mask(intel_private.pcidev, DMA_BIT_MASK(36))) | ||
2455 | dev_err(&intel_private.pcidev->dev, | ||
2456 | "set gfx device dma mask 36bit failed!\n"); | ||
2457 | |||
2459 | pci_set_drvdata(pdev, bridge); | 2458 | pci_set_drvdata(pdev, bridge); |
2460 | return agp_add_bridge(bridge); | 2459 | return agp_add_bridge(bridge); |
2461 | } | 2460 | } |