drm/qxl: change the way slot is detected
authorFrediano Ziglio <fziglio@redhat.com>
Fri, 18 Jan 2019 12:20:01 +0000 (13:20 +0100)
committerGerd Hoffmann <kraxel@redhat.com>
Mon, 28 Jan 2019 13:24:52 +0000 (14:24 +0100)
Instead of relaying on surface type use the actual placement.
This allow to have different placement for a single type of
surface.

Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
Acked-by: Noralf Trønnes <noralf@tronnes.org>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20190118122020.27596-5-kraxel@redhat.com
[ kraxel: rebased, adapted to upstream changes ]

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
drivers/gpu/drm/qxl/qxl_drv.h

index f9dddfe7d988c836194eccebdf4d7aa5f0e4fd16..d015d4fff15844612744638652ec14415626641d 100644 (file)
@@ -311,7 +311,8 @@ static inline uint64_t
 qxl_bo_physical_address(struct qxl_device *qdev, struct qxl_bo *bo,
                        unsigned long offset)
 {
-       struct qxl_memslot *slot = bo->type == QXL_GEM_DOMAIN_VRAM
+       struct qxl_memslot *slot =
+               (bo->tbo.mem.mem_type == TTM_PL_VRAM)
                ? &qdev->main_slot : &qdev->surfaces_slot;
 
        /* TODO - need to hold one of the locks to read tbo.offset */