On 17/09/2025 20:18, Adrián Larumbe wrote:
> This patch series brings the notion of JM contexts into Panfrost.
> UM will be able to create contexts, get a handle for them and attach
> it to a job submission. Contexts describe basic HW resource assignment
> to jobs, but at the moment that includes priorities only.
>
> There's a MR for a Mesa commit series that makes use of these changes:
> https://lore.kernel.org/dri-devel/20250904001054.147465-1-adrian.larumbe@collabora.com/
>
> Discussion of the previous patch series revision can be found at:
> https://lore.kernel.org/dri-devel/20250912132002.304187-1-adrian.larumbe@collabora.com/
Pushed to drm-misc-next.
Thanks,
Steve
>
> Changelog:
> v4:
> - Iterate over all the indices for the scheduler entity array when creating,
> releasing or otherwise destroying a job context, in case someone would want to
> implement compute support in the future.
> - Add R-b tags to other patches.
> v3:
> - Cut down number of available contexts per file to 64.
> - Conservatively restored JS thread priority back to 8.
> - Rework of the context destruction and scheduler entity release
> logic to avoid races and that no new jobs are run after ctx destruction.
> - Refactor privilege checks when allowing high context priorities.
> - Checked that uapi struct padding fields are zeroed in ioctls
>
> v2:
> - Core and L2 cache affinities are not longer part of the context uAPI
> - Individual JS priorites are no longer possible, and the same context
> priority is applied onto all the JS and scheduler entities.
> - Minor changes in the debugfs knob to reflect all the above.
>
> Boris Brezillon (4):
> drm/panfrost: Introduce uAPI for JM context creation
> drm/panfrost: Introduce JM contexts for manging job resources
> drm/panfrost: Expose JM context IOCTLs to UM
> drm/panfrost: Display list of device JM contexts over debugfs
>
> drivers/gpu/drm/panfrost/panfrost_device.h | 11 +-
> drivers/gpu/drm/panfrost/panfrost_drv.c | 150 +++++++++++++++-
> drivers/gpu/drm/panfrost/panfrost_job.c | 195 +++++++++++++++++----
> drivers/gpu/drm/panfrost/panfrost_job.h | 25 ++-
> include/uapi/drm/panfrost_drm.h | 50 ++++++
> 5 files changed, 391 insertions(+), 40 deletions(-)
>
>
> base-commit: a3ae3384be7704fcf41279f13190bd8a11204bea
> --
> 2.51.0