URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=3b715fb99dee536683bcfbbdbdb4b7b71816da13
Author: Maíra Canal <[email protected]>
Date: Mon Aug 14 12:06:07 2023 -0300
v3dv: enable CPU jobs in the simulator
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f11a458a508be463aeec6220f1c2293e90034dab
Author: Maíra Canal <[email protected]>
Date: Wed Aug 30 10:49:15 2023 -0300
v3d/v3dv: move V3D_CSD definitions to a separate file
Both OpenGL and Vulkan drivers share the same V3D_CSD definitions.
Therefore, move it to a common place instead of duplicating.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=35b4dcb2f26cca138df0a17a95f386ebcde974ec
Author: Maíra Canal <[email protected]>
Date: Tue Aug 15 07:21:46 2023 -0300
v3dv: use the copy performance query results user extension
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8913c134e45fc8a4ffea70f0247e3712dcfe5c0b
Author: Maíra Canal <[email protected]>
Date: Tue Aug 15 07:21:16 2023 -0300
drm-uapi: extend interface for copy performance query CPU job
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=43258ad44b5de7f1aa2aee61af7082b4fd9be444
Author: Maíra Canal <[email protected]>
Date: Tue Aug 15 07:20:23 2023 -0300
v3dv: use the reset performance query user extension
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=b2db2e3f33d375da982167f96bbe9cc6792d399e
Author: Maíra Canal <[email protected]>
Date: Tue Dec 12 20:41:49 2023 -0300
v3dv: don't start iterating performance queries at zero
Currently, the function handle_reset_query_cpu_job() starts to iterate
between the performance queries in the zero-index. This is not correct,
as we should start iterating the performance queries at first, which
is a index indicated by info->first.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=6089982a8239278656dacf5739ed16b40b050372
Author: Maíra Canal <[email protected]>
Date: Tue Aug 15 07:19:06 2023 -0300
drm-uapi: extend interface for the reset performance query CPU job
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=4a9da29016cdebd472fea67db78c5afaabbe1d4e
Author: Maíra Canal <[email protected]>
Date: Tue Jul 25 17:44:52 2023 -0300
v3dv: use the copy timestamp query results user extension
The copy timestamp query user extension allows the creation of a CPU job
that copies the results of a timestamp query to a BO with the possibility
to indicate the timestamp availability with a availability bit.
By using the copy timestamp query user extension, it will be possible to
use the multisync user extension to synchronize this type of job, which
currently possible with the user space implementation without stalling.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=a990defab30a49cf615cef9347d95a3fff729cea
Author: Maíra Canal <[email protected]>
Date: Tue Jul 25 17:38:02 2023 -0300
drm-uapi: extend interface for copy timestamp results CPU job
Extend the UAPI to support the copy timestamp results user extension for the
CPU job. This user extension will allow the creation of a CPU job that
copies the results of a timestamp query to a BO with the possibility to
indicate the timestamp availability with a availability bit.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d1d52ebdc9676be617bda63ce1fc585ca76ed6df
Author: Maíra Canal <[email protected]>
Date: Tue Jul 25 08:27:32 2023 -0300
v3dv: use the reset timestamp user extension
The reset timestamp user extension allows the creation of a CPU job that
resets a timestamp query by updating its value in the timestamp BO and
resetting the availability syncobj.
Using the reset timestamp user extension, it will be possible to use the
multisync user extension to synchronize this type of job, which is not
currently possible with the user space implementation without stalling.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7af9b47471e5201a8cd8e027c18955640fca0065
Author: Maíra Canal <[email protected]>
Date: Tue Jul 25 08:04:20 2023 -0300
drm-uapi: extend interface for reset timestamp CPU job
Extend the UAPI to support the reset timestamp user extension for the
CPU job. This user extension will allow the creation of a CPU job that
resets a timestamp query by updating the timestamp BO and reseting the
timestamp's availability syncobj.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=17e03ebacd89a5b2312aa878075c34d6ab651b01
Author: Maíra Canal <[email protected]>
Date: Tue Jul 25 07:48:30 2023 -0300
v3dv: use the timestamp query user extension
The timestamp query user extension allows the creation of a CPU job that
calculates the timestamp by updating its values in a BO with the appropriate
offsets and signalling the availability syncobjs.
The CPU job should be serialized so it only executes after all previously
submitted work has completed. This is accomplished by setting job->serialize
to V3DV_BARRIER_ALL before setting the multi-sync extension.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d48aaa47734c3a983e4d52ea053cfdf65424827f
Author: Maíra Canal <[email protected]>
Date: Tue Jul 25 07:38:48 2023 -0300
drm-uapi: extend interface for timestamp query CPU job
Extend the UAPI to support the timestamp query user extension for the
CPU job. This user extension will allow the creation of a CPU job that
calculates the query timestamp by updating a timestamp BO with its value
and signaling the availability syncobj.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2e32644e35f34c70d8c038c66243b7cf633bc5bc
Author: Maíra Canal <[email protected]>
Date: Mon Aug 7 14:13:54 2023 -0300
v3dv: occlusion queries aren't handled with a CPU job
A CPU job of type V3DV_JOB_TYPE_CPU_RESET_QUERIES is only created for
performance and timestamp queries. Occlusion queries are handled with a
compute job. Therefore, there is no need to handle occlusion queries in
the CPU job.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2a0d196abf1cd85e18ff0adfd05703ed4838d779
Author: Iago Toral Quiroga <[email protected]>
Date: Tue Jul 11 09:21:56 2023 +0200
v3dv: switch timestamp queries to using BO memory
Signed-off-by: Iago Toral Quiroga <[email protected]>
Reviewed-by: Maíra Canal <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e404ccba5b4b0f8f0c43ae29c102aed7b2e6afff
Author: Maíra Canal <[email protected]>
Date: Sat Jul 8 16:19:48 2023 -0300
v3dv: use the indirect CSD user extension
The indirect CSD user extension allows the creation of a CSD
job linked to a CPU job. When we submit the CPU job, the CPU job
will run when the indirect CSD dependency is completed, map the
indirect buffer to read the CSD dispatch parameters and reconfigure
the CSD job accordingly.
Using the indirect CSD user extension, allows us to use the multisync
user extension to synchronize this type of job, which is not currently
possible from user-space without stalling.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=b1134775e0729f124b4b5a60a3e40f917116473f
Author: Maíra Canal <[email protected]>
Date: Mon Jul 17 11:17:08 2023 -0300
v3dv: create a CPU queue type
We will be introducing a new type of queue, a CPU queue. This queue will
be responsible for handling the CPU jobs, such as timestamp queries and
indirect CSD dispatch.
Therefore, add a CPU queue to the enum v3dv_queue_type and its
respective barrier.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e1623082985c9ec5dc0bd2449685c606fc0f8d52
Author: Maíra Canal <[email protected]>
Date: Thu Aug 3 07:34:59 2023 -0300
v3dv: check CPU queue availability
Include a check to assure that the kernel driver supports the CPU queue.
Also, indicate that, currently, the simulator doesn't have support for
the CPU queue.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2589998e05346f9e86d1fc1d1cf38b979ecf46f6
Author: Maíra Canal <[email protected]>
Date: Wed Jun 28 09:03:59 2023 -0300
drm-uapi: extend interface for indirect CSD CPU job
Extend the UAPI to support CPU job in the kernel space using an user
extension design and also add support for the indirect CSD job
extension. This user extension will allow the creation of a CSD
job linked to a CPU job. The CPU job will wait for the indirect CSD job
dependencies and, once they are signaled, it will update the CSD job
parameters.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d2a6383c647a753df19006fa5635668ecdfc9c47
Author: Maíra Canal <[email protected]>
Date: Tue Aug 22 11:01:49 2023 -0300
v3dv: allow set_multisync() to accept more wait syncobjs
Currently, set_multisync() doesn't allow using external syncobjs as
in_syncs objects in the multisync extension. Add the possibility to use
external syncobjs as in_syncs. This will ease the synchronization of CPU
jobs, as they sometimes depend on external syncobjs, such as
query availability syncobjs.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f01d702d4a6bda42f6afaff2d863fa1903184c5f
Author: Maíra Canal <[email protected]>
Date: Mon Jul 24 06:50:04 2023 -0300
v3dv: allow different in/out sync queues
Allow in syncs and out syncs to be configured based on different queues.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=3a3acac8c5d39cfd680dcd0e07a8216468e003f6
Author: Maíra Canal <[email protected]>
Date: Sat Jul 1 18:53:12 2023 -0300
v3dv: move multisync functions to the beginning of the file
With the support of CPU jobs by the kernelspace, now the CPU job
functions will also use the multisync extension. Therefore, move the
multisync functions to the beginning of the file to allow the CPU job
functions to call them.
Signed-off-by: Maíra Canal <[email protected]>
Reviewed-by: Iago Toral Quiroga <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26448>