diff options
author | Cong Liu <liucong2@kylinos.cn> | 2022-03-24 18:49:28 +0800 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2022-03-25 12:28:28 +0100 |
commit | 59ab4ee012f0166873ae15d235b2450f21dcb5e7 (patch) | |
tree | 6b047c5e99c5aebb683f5559f3bbbcac29199add /drivers/gpu/drm/qxl/qxl_ttm.c | |
parent | ec3cbb30893be248d180dd748ee9148d408a99d1 (diff) | |
download | linux-59ab4ee012f0166873ae15d235b2450f21dcb5e7.tar.gz linux-59ab4ee012f0166873ae15d235b2450f21dcb5e7.tar.bz2 linux-59ab4ee012f0166873ae15d235b2450f21dcb5e7.zip |
drm/qxl: fix qxl can't use in arm64
qxl use ioremap to map ram_header and rom, in the arm64 implementation,
the device is mapped as DEVICE_nGnRE, it can not support unaligned
access. and qxl is a virtual device, it can be treated more like RAM
than actual MMIO registers. use ioremap_wc() replace it.
Signed-off-by: Cong Liu <liucong2@kylinos.cn>
Acked-by: Christian König <christian.koenig@amd.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20220324104928.2959545-1-liucong2@kylinos.cn
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/qxl/qxl_ttm.c')
-rw-r--r-- | drivers/gpu/drm/qxl/qxl_ttm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/qxl/qxl_ttm.c b/drivers/gpu/drm/qxl/qxl_ttm.c index b2e33d5ba5d0..95df5750f47f 100644 --- a/drivers/gpu/drm/qxl/qxl_ttm.c +++ b/drivers/gpu/drm/qxl/qxl_ttm.c @@ -82,13 +82,13 @@ int qxl_ttm_io_mem_reserve(struct ttm_device *bdev, case TTM_PL_VRAM: mem->bus.is_iomem = true; mem->bus.offset = (mem->start << PAGE_SHIFT) + qdev->vram_base; - mem->bus.caching = ttm_cached; + mem->bus.caching = ttm_write_combined; break; case TTM_PL_PRIV: mem->bus.is_iomem = true; mem->bus.offset = (mem->start << PAGE_SHIFT) + qdev->surfaceram_base; - mem->bus.caching = ttm_cached; + mem->bus.caching = ttm_write_combined; break; default: return -EINVAL; |