summaryrefslogtreecommitdiff
path: root/amdgpu/amdgpu.h
diff options
context:
space:
mode:
authorChristian König <christian.koenig@amd.com>2015-06-24 14:17:57 +0200
committerAlex Deucher <alexander.deucher@amd.com>2015-08-05 13:47:51 -0400
commit0f37bc90294176eeb7245d00998de1822c0d6db9 (patch)
treec7a390f313981508e881ef5608ae95926208a62f /amdgpu/amdgpu.h
parentcf5646001e4ef6963515457e6234ffb3407874c8 (diff)
downloadlibdrm-0f37bc90294176eeb7245d00998de1822c0d6db9.tar.gz
libdrm-0f37bc90294176eeb7245d00998de1822c0d6db9.tar.bz2
libdrm-0f37bc90294176eeb7245d00998de1822c0d6db9.zip
amdgpu: add CS dependencies v2
This allows the driver to specify on which previous CS to wait. v2: fix spelling in comment Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (v1) Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Diffstat (limited to 'amdgpu/amdgpu.h')
-rw-r--r--amdgpu/amdgpu.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/amdgpu/amdgpu.h b/amdgpu/amdgpu.h
index c4c0cd44..deaa092b 100644
--- a/amdgpu/amdgpu.h
+++ b/amdgpu/amdgpu.h
@@ -252,6 +252,30 @@ struct amdgpu_gds_resource_info {
};
/**
+ * Structure describing CS dependency
+ *
+ * \sa amdgpu_cs_request, amdgpu_cs_submit()
+ *
+*/
+struct amdgpu_cs_dep_info {
+ /** Context to which the fence belongs */
+ amdgpu_context_handle context;
+
+ /** To which HW IP type the fence belongs */
+ uint32_t ip_type;
+
+ /** IP instance index if there are several IPs of the same type. */
+ uint32_t ip_instance;
+
+ /** Ring index of the HW IP */
+ uint32_t ring;
+
+ /** Specify fence for which we need to check
+ * submission status.*/
+ uint64_t fence;
+};
+
+/**
* Structure describing IB
*
* \sa amdgpu_cs_request, amdgpu_cs_submit()
@@ -301,6 +325,18 @@ struct amdgpu_cs_request {
*/
amdgpu_bo_list_handle resources;
+ /**
+ * Number of dependencies this Command submission needs to
+ * wait for before starting execution.
+ */
+ uint32_t number_of_dependencies;
+
+ /**
+ * Array of dependencies which need to be met before
+ * execution can start.
+ */
+ struct amdgpu_cs_dep_info *dependencies;
+
/** Number of IBs to submit in the field ibs. */
uint32_t number_of_ibs;