BACKPORT: drm/virtio: implement prime export
Just run drm_prime_pages_to_sg() on the ttm pages list to get an sg_table for export. The pages list is created at object initialization time, so there should be no need to handle an unpopulated page list. Add a sanity check nevertheless. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Acked-by: Noralf Trønnes <noralf@tronnes.org> Link: http://patchwork.freedesktop.org/patch/msgid/20190227144441.6755-4-kraxel@redhat.com (cherry picked from commit 98f41dc3b3eeabfc80d5d5eb1c1a6294ff59b4ec) Signed-off-by: Greg Hartman <ghartman@google.com> BUG: 139386237 Change-Id: If0ab11829ec7a6166928e26b8f75e1510742493e
This commit is contained in:
parent
a4be74b232
commit
a4f8cf10cf
1 changed files with 8 additions and 2 deletions
|
@ -30,8 +30,14 @@
|
|||
|
||||
struct sg_table *virtgpu_gem_prime_get_sg_table(struct drm_gem_object *obj)
|
||||
{
|
||||
WARN_ONCE(1, "not implemented");
|
||||
return ERR_PTR(-ENODEV);
|
||||
struct virtio_gpu_object *bo = gem_to_virtio_gpu_obj(obj);
|
||||
|
||||
if (!bo->tbo.ttm->pages || !bo->tbo.ttm->num_pages)
|
||||
/* should not happen */
|
||||
return ERR_PTR(-EINVAL);
|
||||
|
||||
return drm_prime_pages_to_sg(bo->tbo.ttm->pages,
|
||||
bo->tbo.ttm->num_pages);
|
||||
}
|
||||
|
||||
struct drm_gem_object *virtgpu_gem_prime_import_sg_table(
|
||||
|
|
Loading…
Reference in a new issue