diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c index e5b138b..4aa50b5 100644 --- a/drivers/gpu/drm/i915/i915_dma.c +++ b/drivers/gpu/drm/i915/i915_dma.c @@ -1380,6 +1380,14 @@ int i915_driver_load(struct drm_device *dev, unsigned long flags) goto free_priv; } + if (IS_I965G(dev)) { + if (pci_set_dma_mask(dev->pdev, DMA_BIT_MASK(36))) { + DRM_ERROR("failed to set 36 bit dma mask!\n"); + ret = -EIO; + goto free_priv; + } + } + dev_priv->regs = ioremap(base, size); if (!dev_priv->regs) { DRM_ERROR("failed to map registers\n");