diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2013-08-15 00:02:33 +0200 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2013-08-19 10:46:35 +1000 |
commit | 7106bf96f81b0c207aaab4b46aa2acc5cab334d4 (patch) | |
tree | 782617e44aac3d710293f32272c6055ceec98e3c /include/drm | |
parent | 01ce605a7bd8f4aaaf3c0accdaa5e106982b698c (diff) | |
download | lwn-7106bf96f81b0c207aaab4b46aa2acc5cab334d4.tar.gz lwn-7106bf96f81b0c207aaab4b46aa2acc5cab334d4.zip |
drm/prime: add a bit of documentation about gem_obj->import_attach
Lifetime rules seem to be solid around ->import_attach. So this patch
just properly documents them.
Note that pointing directly at the attachment might have issues for
devices that have multiple struct device *dev parts constituting the
logical gpu and so might need multiple attachment points. Similarly
for drm devices which don't need a dma attachment at all (like udl).
But fixing that up is material for different patches.
Reviewed-by: Rob Clark <robdclark@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'include/drm')
-rw-r--r-- | include/drm/drmP.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/include/drm/drmP.h b/include/drm/drmP.h index 5ebed3ea10ba..5dc98947375c 100644 --- a/include/drm/drmP.h +++ b/include/drm/drmP.h @@ -665,7 +665,16 @@ struct drm_gem_object { /* dma buf exported from this GEM object */ struct dma_buf *export_dma_buf; - /* dma buf attachment backing this object */ + /** + * import_attach - dma buf attachment backing this object + * + * Any foreign dma_buf imported as a gem object has this set to the + * attachment point for the device. This is invariant over the lifetime + * of a gem object. + * + * The driver's ->gem_free_object callback is responsible for cleaning + * up the dma_buf attachment and references acquired at import time. + */ struct dma_buf_attachment *import_attach; }; |