diff options
author | Gurchetan Singh <gurchetansingh@chromium.org> | 2021-09-21 16:20:18 -0700 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2021-09-29 09:22:30 +0200 |
commit | 7547675b84bf452542463db29adb113cadb7dd6d (patch) | |
tree | 8392c8e8880f144523cc175f86561168650311e9 /drivers | |
parent | 4fb530e5caf7cb666948db65f245b350ce520436 (diff) | |
download | linux-7547675b84bf452542463db29adb113cadb7dd6d.tar.gz linux-7547675b84bf452542463db29adb113cadb7dd6d.tar.bz2 linux-7547675b84bf452542463db29adb113cadb7dd6d.zip |
drm/virtio: implement context init: track {ring_idx, emit_fence_info} in virtio_gpu_fence
Each fence should be associated with a [fence ID, fence_context,
seqno]. The seqno number is just the fence id.
To get the fence context, we add the ring_idx to the 3D context's
base_fence_ctx. The ring_idx is between 0 and 31, inclusive.
Each 3D context will have it's own base_fence_ctx. The ring_idx will
be emitted to host userspace, when emit_fence_info is true.
Signed-off-by: Gurchetan Singh <gurchetansingh@chromium.org>
Acked-by: Lingfeng Yang <lfy@google.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20210921232024.817-7-gurchetansingh@chromium.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/drm/virtio/virtgpu_drv.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.h b/drivers/gpu/drm/virtio/virtgpu_drv.h index 9996abf60e3a..401aec1a5efb 100644 --- a/drivers/gpu/drm/virtio/virtgpu_drv.h +++ b/drivers/gpu/drm/virtio/virtgpu_drv.h @@ -139,7 +139,9 @@ struct virtio_gpu_fence_driver { struct virtio_gpu_fence { struct dma_fence f; + uint32_t ring_idx; uint64_t fence_id; + bool emit_fence_info; struct virtio_gpu_fence_driver *drv; struct list_head node; }; |