drm/qxl: don't touch mem.bus.offset
authorChristian König <christian.koenig@amd.com>
Mon, 7 Sep 2020 08:45:52 +0000 (10:45 +0200)
committerChristian König <christian.koenig@amd.com>
Tue, 8 Sep 2020 08:42:39 +0000 (10:42 +0200)
This is internal to TTM and should not be used by drivers directly.

Drop the call to qxl_ttm_io_mem_reserve() and use mem->start instead.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Link: https://patchwork.freedesktop.org/patch/389456/
drivers/gpu/drm/qxl/qxl_object.c

index f838b6d..b2a1fa6 100644 (file)
@@ -167,6 +167,7 @@ int qxl_bo_kmap(struct qxl_bo *bo, void **ptr)
 void *qxl_bo_kmap_atomic_page(struct qxl_device *qdev,
                              struct qxl_bo *bo, int page_offset)
 {
+       unsigned long offset;
        void *rptr;
        int ret;
        struct io_mapping *map;
@@ -178,9 +179,8 @@ void *qxl_bo_kmap_atomic_page(struct qxl_device *qdev,
        else
                goto fallback;
 
-       ret = qxl_ttm_io_mem_reserve(bo->tbo.bdev, &bo->tbo.mem);
-
-       return io_mapping_map_atomic_wc(map, bo->tbo.mem.bus.offset + page_offset);
+       offset = bo->tbo.mem.start << PAGE_SHIFT;
+       return io_mapping_map_atomic_wc(map, offset + page_offset);
 fallback:
        if (bo->kptr) {
                rptr = bo->kptr + (page_offset * PAGE_SIZE);