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>

authored by

David Woodhouse and committed by
Dave Airlie
ec402ba9 799dd75b

+5 -6
+5 -6
drivers/char/agp/intel-agp.c
··· 1161 1161 1162 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 1164 return 0; 1171 1165 } 1172 1166 ··· 2449 2455 bridge->capndx+PCI_AGP_STATUS, 2450 2456 &bridge->mode); 2451 2457 } 2458 + 2459 + if (bridge->driver->mask_memory == intel_i965_mask_memory) 2460 + if (pci_set_dma_mask(intel_private.pcidev, DMA_BIT_MASK(36))) 2461 + dev_err(&intel_private.pcidev->dev, 2462 + "set gfx device dma mask 36bit failed!\n"); 2452 2463 2453 2464 pci_set_drvdata(pdev, bridge); 2454 2465 return agp_add_bridge(bridge);