···1895 if (IS_GEN2(dev))1896 dma_set_coherent_mask(&dev->pdev->dev, DMA_BIT_MASK(30));1897000000000001898 mmio_bar = IS_GEN2(dev) ? 1 : 0;1899 dev_priv->regs = pci_iomap(dev->pdev, mmio_bar, 0);1900 if (!dev_priv->regs) {
···1895 if (IS_GEN2(dev))1896 dma_set_coherent_mask(&dev->pdev->dev, DMA_BIT_MASK(30));18971898+ /* 965GM sometimes incorrectly writes to hardware status page (HWS)1899+ * using 32bit addressing, overwriting memory if HWS is located1900+ * above 4GB.1901+ *1902+ * The documentation also mentions an issue with undefined1903+ * behaviour if any general state is accessed within a page above 4GB,1904+ * which also needs to be handled carefully.1905+ */1906+ if (IS_BROADWATER(dev) || IS_CRESTLINE(dev))1907+ dma_set_coherent_mask(&dev->pdev->dev, DMA_BIT_MASK(32));1908+1909 mmio_bar = IS_GEN2(dev) ? 1 : 0;1910 dev_priv->regs = pci_iomap(dev->pdev, mmio_bar, 0);1911 if (!dev_priv->regs) {