From: Boris Brezillon <boris.brezillon@collabora.com>
To: Simona Vetter <simona.vetter@ffwll.ch>
Cc: "Florent Tomasin" <florent.tomasin@arm.com>,
"Vinod Koul" <vkoul@kernel.org>, "Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Steven Price" <steven.price@arm.com>,
"Liviu Dudau" <liviu.dudau@arm.com>,
"Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>,
"Maxime Ripard" <mripard@kernel.org>,
"Thomas Zimmermann" <tzimmermann@suse.de>,
"David Airlie" <airlied@gmail.com>,
"Simona Vetter" <simona@ffwll.ch>,
"Sumit Semwal" <sumit.semwal@linaro.org>,
"Benjamin Gaignard" <benjamin.gaignard@collabora.com>,
"Brian Starkey" <Brian.Starkey@arm.com>,
"John Stultz" <jstultz@google.com>,
"T . J . Mercier" <tjmercier@google.com>,
"Christian König" <christian.koenig@amd.com>,
"Matthias Brugger" <matthias.bgg@gmail.com>,
"AngeloGioacchino Del Regno"
<angelogioacchino.delregno@collabora.com>,
"Yong Wu" <yong.wu@mediatek.com>,
dmaengine@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
linux-media@vger.kernel.org, linaro-mm-sig@lists.linaro.org,
linux-arm-kernel@lists.infradead.org,
linux-mediatek@lists.infradead.org, nd@arm.com,
"Akash Goel" <akash.goel@arm.com>
Subject: Re: [RFC PATCH 0/5] drm/panthor: Protected mode support for Mali CSF GPUs
Date: Mon, 3 Feb 2025 10:25:13 +0100 [thread overview]
Message-ID: <20250203102513.1a020577@collabora.com> (raw)
In-Reply-To: <Z5ulnIuzapOVBQgb@phenom.ffwll.local>
On Thu, 30 Jan 2025 17:15:24 +0100
Simona Vetter <simona.vetter@ffwll.ch> wrote:
> On Thu, Jan 30, 2025 at 01:08:56PM +0000, Florent Tomasin wrote:
> > Hi,
> >
> > This is a patch series covering the support for protected mode execution in
> > Mali Panthor CSF kernel driver.
> >
> > The Mali CSF GPUs come with the support for protected mode execution at the
> > HW level. This feature requires two main changes in the kernel driver:
> >
> > 1) Configure the GPU with a protected buffer. The system must provide a DMA
> > heap from which the driver can allocate a protected buffer.
> > It can be a carved-out memory or dynamically allocated protected memory region.
> > Some system includes a trusted FW which is in charge of the protected memory.
> > Since this problem is integration specific, the Mali Panthor CSF kernel
> > driver must import the protected memory from a device specific exporter.
> >
> > 2) Handle enter and exit of the GPU HW from normal to protected mode of execution.
> > FW sends a request for protected mode entry to the kernel driver.
> > The acknowledgment of that request is a scheduling decision. Effectively,
> > protected mode execution should not overrule normal mode of execution.
> > A fair distribution of execution time will guaranty the overall performance
> > of the device, including the UI (usually executing in normal mode),
> > will not regress when a protected mode job is submitted by an application.
> >
> >
> > Background
> > ----------
> >
> > Current Mali Panthor CSF driver does not allow a user space application to
> > execute protected jobs on the GPU. This use case is quite common on end-user-device.
> > A user may want to watch a video or render content that is under a "Digital Right
> > Management" protection, or launch an application with user private data.
> >
> > 1) User-space:
> >
> > In order for an application to execute protected jobs on a Mali CSF GPU the
> > user space application must submit jobs to the GPU within a "protected regions"
> > (range of commands to execute in protected mode).
> >
> > Find here an example of a command buffer that contains protected commands:
> >
> > ```
> > <--- Normal mode ---><--- Protected mode ---><--- Normal mode --->
> > +-------------------------------------------------------------------------+
> > | ... | CMD_0 | ... | CMD_N | PROT_REGION | CMD_N+1 | ... | CMD_N+M | ... |
> > +-------------------------------------------------------------------------+
> > ```
> >
> > The PROT_REGION command acts as a barrier to notify the HW of upcoming
> > protected jobs. It also defines the number of commands to execute in protected
> > mode.
> >
> > The Mesa definition of the opcode can be found here:
> >
> > https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/panfrost/lib/genxml/v10.xml?ref_type=heads#L763
>
> Is there also something around that implements egl_ext_protected_context
> or similar in mesa?
I'll be looking at a mesa implementation for EGL_EXT_protected_content
in the coming weeks. I'll probably get back to reviewing the panthor
implementation when I have something working in mesa.
> I think that's the minimal bar all the protected gpu
> workload kernel support patches cleared thus far, since usually getting
> the actual video code stuff published seems to be impossible.
prev parent reply other threads:[~2025-02-03 9:26 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-30 13:08 [RFC PATCH 0/5] drm/panthor: Protected mode support for Mali CSF GPUs Florent Tomasin
2025-01-30 13:08 ` [RFC PATCH 1/5] dt-bindings: dma: Add CMA Heap bindings Florent Tomasin
2025-01-30 13:28 ` Maxime Ripard
2025-02-03 13:36 ` Florent Tomasin
2025-02-04 18:12 ` Nicolas Dufresne
2025-02-12 9:49 ` Florent Tomasin
2025-02-12 10:01 ` Maxime Ripard
2025-02-12 10:29 ` Florent Tomasin
2025-02-12 10:49 ` Maxime Ripard
2025-02-12 11:02 ` Florent Tomasin
2025-02-12 10:37 ` Boris Brezillon
2025-01-30 23:20 ` Rob Herring
2025-02-03 16:18 ` Florent Tomasin
2025-01-30 13:08 ` [RFC PATCH 2/5] cma-heap: Allow registration of custom cma heaps Florent Tomasin
2025-01-30 13:34 ` Maxime Ripard
2025-02-03 13:52 ` Florent Tomasin
2025-01-30 13:08 ` [RFC PATCH 3/5] dt-bindings: gpu: Add protected heap name to Mali Valhall CSF binding Florent Tomasin
2025-01-30 13:25 ` Krzysztof Kozlowski
2025-02-03 15:31 ` Florent Tomasin
2025-02-05 9:13 ` Krzysztof Kozlowski
2025-02-06 21:21 ` Nicolas Dufresne
2025-02-09 11:56 ` Krzysztof Kozlowski
2025-02-12 9:25 ` Florent Tomasin
2025-01-30 13:09 ` [RFC PATCH 4/5] drm/panthor: Add support for protected memory allocation in panthor Florent Tomasin
2025-02-11 11:04 ` Boris Brezillon
2025-02-11 11:20 ` Boris Brezillon
2025-03-12 20:05 ` Adrian Larumbe
2025-01-30 13:09 ` [RFC PATCH 5/5] drm/panthor: Add support for entering and exiting protected mode Florent Tomasin
2025-02-10 14:01 ` Boris Brezillon
2025-01-30 13:46 ` [RFC PATCH 0/5] drm/panthor: Protected mode support for Mali CSF GPUs Maxime Ripard
2025-01-30 15:59 ` Nicolas Dufresne
2025-01-30 16:38 ` Maxime Ripard
2025-01-30 17:47 ` Nicolas Dufresne
2025-02-03 16:43 ` Florent Tomasin
2025-02-04 18:22 ` Nicolas Dufresne
2025-02-05 14:53 ` Maxime Ripard
2025-02-05 18:07 ` Nicolas Dufresne
2025-02-05 14:52 ` Maxime Ripard
2025-02-05 18:14 ` Nicolas Dufresne
2025-02-07 15:02 ` Boris Brezillon
2025-02-07 16:32 ` Nicolas Dufresne
2025-02-07 16:42 ` Boris Brezillon
2025-02-11 13:46 ` Maxime Ripard
2025-02-11 14:32 ` Boris Brezillon
2025-02-20 13:32 ` Maxime Ripard
2025-02-24 11:36 ` Boris Brezillon
2025-01-30 16:15 ` Simona Vetter
2025-02-03 9:25 ` Boris Brezillon [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250203102513.1a020577@collabora.com \
--to=boris.brezillon@collabora.com \
--cc=Brian.Starkey@arm.com \
--cc=airlied@gmail.com \
--cc=akash.goel@arm.com \
--cc=angelogioacchino.delregno@collabora.com \
--cc=benjamin.gaignard@collabora.com \
--cc=christian.koenig@amd.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmaengine@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=florent.tomasin@arm.com \
--cc=jstultz@google.com \
--cc=krzk+dt@kernel.org \
--cc=linaro-mm-sig@lists.linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=liviu.dudau@arm.com \
--cc=maarten.lankhorst@linux.intel.com \
--cc=matthias.bgg@gmail.com \
--cc=mripard@kernel.org \
--cc=nd@arm.com \
--cc=robh@kernel.org \
--cc=simona.vetter@ffwll.ch \
--cc=simona@ffwll.ch \
--cc=steven.price@arm.com \
--cc=sumit.semwal@linaro.org \
--cc=tjmercier@google.com \
--cc=tzimmermann@suse.de \
--cc=vkoul@kernel.org \
--cc=yong.wu@mediatek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).