--- a/drivers/gpu/drm/panfrost/panfrost_drv.c +++ a/drivers/gpu/drm/panfrost/panfrost_drv.c @@ -563,10 +563,6 @@ static int panfrost_probe(struct platform_device *pdev) return -ENODEV; pfdev->coherent = device_get_dma_attr(&pdev->dev) == DEV_DMA_COHERENT; - if (!pfdev->coherent && of_device_is_compatible(of_root, "baikal,baikal-m")) { - pfdev->coherent = true; - dev_warn(&pdev->dev, "marking as DMA coherent on BE-M1000"); - } /* Allocate and initialize the DRM device. */ ddev = drm_dev_alloc(&panfrost_drm_driver, &pdev->dev); --- a/drivers/gpu/drm/panfrost/panfrost_mmu.c +++ a/drivers/gpu/drm/panfrost/panfrost_mmu.c @@ -136,6 +136,10 @@ static void panfrost_mmu_enable(struct panfrost_device *pfdev, struct panfrost_m /* Need to revisit mem attrs. * NC is the default, Mali driver is inner WT. */ + if (panfrost_model_eq(pfdev, 0x620)) { + memattr &= ~0xf0f0f0ULL; + memattr |= 0x404040; + } mmu_write(pfdev, AS_MEMATTR_LO(as_nr), lower_32_bits(memattr)); mmu_write(pfdev, AS_MEMATTR_HI(as_nr), upper_32_bits(memattr));