mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-15 22:41:38 +00:00
drm/gem: Test for imported GEM buffers with helper
Add drm_gem_is_imported() that tests if a GEM object's buffer has been imported. Update the GEM code accordingly. GEM code usually tests for imports if import_attach has been set in struct drm_gem_object. But attaching a dma-buf on import requires a DMA-capable importer device, which is not the case for many serial busses like USB or I2C. The new helper tests if a GEM object's dma-buf has been created from the GEM object. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Anusha Srivatsa <asrivats@redhat.com> Reviewed-by: Christian König <christian.koenig@amd.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250226172457.217725-2-tzimmermann@suse.de
This commit is contained in:
@@ -348,7 +348,7 @@ int drm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev,
|
||||
return -ENOENT;
|
||||
|
||||
/* Don't allow imported objects to be mapped */
|
||||
if (obj->import_attach) {
|
||||
if (drm_gem_is_imported(obj)) {
|
||||
ret = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
@@ -1178,7 +1178,7 @@ void drm_gem_print_info(struct drm_printer *p, unsigned int indent,
|
||||
drm_vma_node_start(&obj->vma_node));
|
||||
drm_printf_indent(p, indent, "size=%zu\n", obj->size);
|
||||
drm_printf_indent(p, indent, "imported=%s\n",
|
||||
str_yes_no(obj->import_attach));
|
||||
str_yes_no(drm_gem_is_imported(obj)));
|
||||
|
||||
if (obj->funcs->print_info)
|
||||
obj->funcs->print_info(p, indent, obj);
|
||||
|
||||
Reference in New Issue
Block a user