summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object.h
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil-cisco@xs4all.nl>2024-01-29 08:59:23 +0100
committerHans Verkuil <hverkuil-cisco@xs4all.nl>2024-01-29 08:59:23 +0100
commitc8282f7b8523a4d37e5fefa220d93f2be06650e2 (patch)
tree6ec17a2ea545b174dc903f6135f5b6258a1c4e2e /drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object.h
parent04447d48afd365a837e23cde631517f166045b9d (diff)
parent41bccc98fb7931d63d03f326a746ac4d429c1dd3 (diff)
downloadlinux-stable-c8282f7b8523a4d37e5fefa220d93f2be06650e2.tar.gz
linux-stable-c8282f7b8523a4d37e5fefa220d93f2be06650e2.tar.bz2
linux-stable-c8282f7b8523a4d37e5fefa220d93f2be06650e2.zip
Merge tag 'v6.8-rc2'
Linux 6.8-rc2 The vb2 fixes from v6.8-rc2 are needed for the work on the new vb2 delete buffers feature. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Diffstat (limited to 'drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object.h')
-rw-r--r--drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object.h b/drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object.h
index 5f19550cc845..68d9f6116bdf 100644
--- a/drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object.h
+++ b/drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object.h
@@ -35,12 +35,10 @@ static inline int i915_gem_object_read_from_page(struct xe_bo *bo,
u32 ofs, u64 *ptr, u32 size)
{
struct ttm_bo_kmap_obj map;
- void *virtual;
+ void *src;
bool is_iomem;
int ret;
- XE_WARN_ON(size != 8);
-
ret = xe_bo_lock(bo, true);
if (ret)
return ret;
@@ -50,11 +48,12 @@ static inline int i915_gem_object_read_from_page(struct xe_bo *bo,
goto out_unlock;
ofs &= ~PAGE_MASK;
- virtual = ttm_kmap_obj_virtual(&map, &is_iomem);
+ src = ttm_kmap_obj_virtual(&map, &is_iomem);
+ src += ofs;
if (is_iomem)
- *ptr = readq((void __iomem *)(virtual + ofs));
+ memcpy_fromio(ptr, (void __iomem *)src, size);
else
- *ptr = *(u64 *)(virtual + ofs);
+ memcpy(ptr, src, size);
ttm_bo_kunmap(&map);
out_unlock: