Thread (48 messages) 48 messages, 8 authors, 2025-03-12

Re: [RFC PATCH 3/5] dt-bindings: gpu: Add protected heap name to Mali Valhall CSF binding

From: Nicolas Dufresne <hidden>
Date: 2025-02-06 21:21:14
Also in: dmaengine, dri-devel, linux-devicetree, linux-media, linux-mediatek, lkml

Le mercredi 05 février 2025 à 10:13 +0100, Krzysztof Kozlowski a écrit :
On 03/02/2025 16:31, Florent Tomasin wrote:
quoted
Hi Krzysztof

On 30/01/2025 13:25, Krzysztof Kozlowski wrote:
quoted
On 30/01/2025 14:08, Florent Tomasin wrote:
quoted
Allow mali-valhall-csf driver to retrieve a protected
heap at probe time by passing the name of the heap
as attribute to the device tree GPU node.
Please wrap commit message according to Linux coding style / submission
process (neither too early nor over the limit):
https://elixir.bootlin.com/linux/v6.4-rc1/source/Documentation/process/submitting-patches.rst#L597
Apologies, I think I made quite few other mistakes in the style of the
patches I sent. I will work on improving this aspect, appreciated
quoted
Why this cannot be passed by phandle, just like all reserved regions?

From where do you take these protected heaps? Firmware? This would
explain why no relation is here (no probe ordering, no device links,
nothing connecting separate devices).
The protected heap is generaly obtained from a firmware (TEE) and could
sometimes be a carved-out memory with restricted access.
Which is a reserved memory, isn't it?
quoted
The Panthor CSF kernel driver does not own or manage the protected heap
and is instead a consumer of it (assuming the heap is made available by
the system integrator).

I initially used a phandle, but then I realised it would introduce a new
API to share the heap across kernel driver. In addition I found this
patch series:
-
https://lore.kernel.org/lkml/20230911023038.30649-1-yong.wu@mediatek.com/#t (local)

which introduces a DMA Heap API to the rest of the kernel to find a
heap by name:
- dma_heap_find()

I then decided to follow that approach to help isolate the heap
management from the GPU driver code. In the Panthor driver, if the
heap is not found at probe time, the driver will defer the probe until
the exporter made it available.

I don't talk here really about the driver but even above mediatek
patchset uses reserved memory bindings.

You explained some things about driver yet you did not answer the
question. This looks like reserved memory. If it does not, bring
arguments why this binding cannot be a reserved memory, why hardware is
not a carve out memory.
I think the point is that from the Mali GPU view, the memory does not need to be
within the range the Linux Kernel actually see, even though current integration
have that. From Mali GPU driver stand point (or codec drivers and what's not),
the memory range is not useful to allocate protected/restricted memory. On top
of which, its not reserved specifically for the Mali GPU.

What's your practical suggestion here ? Introduce dma_heap_find_by_region() ?

Nicolas
Best regards,
Krzysztof
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help