Re: [PATCH v8 00/20] Imagination Technologies PowerVR DRM driver

From: Frank Binns
Date: Wed Nov 01 2023 - 06:15:54 EST


Hi Maxime,

On Tue, 2023-10-31 at 17:31 +0100, Maxime Ripard wrote:
> Hi Sarah, Faith, Frank,
>
> On Tue, Oct 31, 2023 at 03:12:37PM +0000, Sarah Walker wrote:
> > This patch series adds the initial DRM driver for Imagination Technologies PowerVR
> > GPUs, starting with those based on our Rogue architecture. It's worth pointing
> > out that this is a new driver, written from the ground up, rather than a
> > refactored version of our existing downstream driver (pvrsrvkm).
> >
> > This new DRM driver supports:
> > - GEM shmem allocations
> > - dma-buf / PRIME
> > - Per-context userspace managed virtual address space
> > - DRM sync objects (binary and timeline)
> > - Power management suspend / resume
> > - GPU job submission (geometry, fragment, compute, transfer)
> > - META firmware processor
> > - MIPS firmware processor
> > - GPU hang detection and recovery
> >
> > Currently our main focus is on the AXE-1-16M GPU. Testing so far has been done
> > using a TI SK-AM62 board (AXE-1-16M GPU). The driver has also been confirmed to
> > work on the BeaglePlay board. Firmware for the AXE-1-16M can befound here:
> > https://gitlab.freedesktop.org/frankbinns/linux-firmware/-/tree/powervr
> >
> > A Vulkan driver that works with our downstream kernel driver has already been
> > merged into Mesa [1][2]. Support for this new DRM driver is being maintained in
> > a merge request [3], with the branch located here:
> > https://gitlab.freedesktop.org/frankbinns/mesa/-/tree/powervr-winsys
> >
> > Job stream formats are documented at:
> > https://gitlab.freedesktop.org/mesa/mesa/-/blob/f8d2b42ae65c2f16f36a43e0ae39d288431e4263/src/imagination/csbgen/rogue_kmd_stream.xml
> >
> > The Vulkan driver is progressing towards Vulkan 1.0. The current combination of this
> > kernel driver with the Mesa Vulkan driver (powervr-mesa-next branch) successfully
> > completes Vulkan CTS 1.3.4.1 in our local runs. The driver is expected to pass the
> > Khronos Conformance Process once the submission is made.
> >
> > The code in this patch series, along with the needed dts changes can be found here:
> > https://gitlab.freedesktop.org/sarah-walker-imgtec/powervr/-/tree/dev/v8_dts
> > The full development history can be found here:
> > https://gitlab.freedesktop.org/frankbinns/powervr/-/tree/powervr-next
>
> Awesome, thanks for sending a new version of that series.
>
> At XDC, we all agreed that we would merge this version if the changes
> requested by Faith were fixed, and if the Mesa PR was updated to match
> that new kernel series.
>
> Are we there yet?

We've made all the changes that were requested at XDC. There are a couple of
questions Faith had for me that I still need to respond to. I'll hopefully be
getting to these today.

The Mesa MR adding support for this kernel driver is all up to date:
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15507

>
> If so, Faith, should we add your Reviewed-by/Acked-by tag to the UAPI patch?
>
> > This patch series has dependencies on a number of patches not yet merged. They
> > are listed below :
> >
> > drm/sched: Convert drm scheduler to use a work queue rather than kthread:
> > https://lore.kernel.org/dri-devel/20230404002211.3611376-2-matthew.brost@xxxxxxxxx/
> > drm/sched: Move schedule policy to scheduler / entity:
> > https://lore.kernel.org/dri-devel/20230404002211.3611376-3-matthew.brost@xxxxxxxxx/
> > drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy:
> > https://lore.kernel.org/dri-devel/20230404002211.3611376-4-matthew.brost@xxxxxxxxx/
> > drm/sched: Start run wq before TDR in drm_sched_start:
> > https://lore.kernel.org/dri-devel/20230404002211.3611376-6-matthew.brost@xxxxxxxxx/
> > drm/sched: Submit job before starting TDR:
> > https://lore.kernel.org/dri-devel/20230404002211.3611376-7-matthew.brost@xxxxxxxxx/
> > drm/sched: Add helper to set TDR timeout:
> > https://lore.kernel.org/dri-devel/20230404002211.3611376-8-matthew.brost@xxxxxxxxx/
>
> What is the state of those patches? Iirc, we were expecting them to be
> merged soon at XDC

I see there was a new version posted yesterday:
https://lists.freedesktop.org/archives/dri-devel/2023-October/428612.html

It looks pretty close now. We'll rebase our patches so hopefully we have a
trivial rebase once they get merged.

Thanks
Frank

>
> Thanks,
> Maxime