From: Florent Tomasin <florent.tomasin@arm.com>
To: Maxime Ripard <mripard@kernel.org>
Cc: "Vinod Koul" <vkoul@kernel.org>, "Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Boris Brezillon" <boris.brezillon@collabora.com>,
"Steven Price" <steven.price@arm.com>,
"Liviu Dudau" <liviu.dudau@arm.com>,
"Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>,
"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 2/5] cma-heap: Allow registration of custom cma heaps
Date: Mon, 3 Feb 2025 13:52:38 +0000 [thread overview]
Message-ID: <0fc22f56-1386-4b4a-bddc-0745ec8a3f9c@arm.com> (raw)
In-Reply-To: <kyesso3gaajbdze3ie4imrmrk2lzqf6s7eoonlljeitfs3utwh@dycnl7cnzep5>
Hi,
On 30/01/2025 13:34, Maxime Ripard wrote:
>> This patch introduces a cma-heap probe function, allowing
>> users to register custom cma heaps in the device tree.
>>
>> A "memory-region" is bound to the cma heap at probe time
>> allowing allocation of DMA buffers from that heap.
>>
>> Use cases:
>> - registration of carved out secure heaps. Some devices
>> are implementing secure memory by reserving a specific
>> memory regions for that purpose. For example, this is the
>> case of platforms making use of early version of
>> ARM TrustZone.
>
> In such a case, the CMA heap would de-facto become un-mappable for
> userspace, right?
>
It could be that the CMA heap or alternative carved-out types of heaps
are made mappable to user space. An example would be an integrator
decided to implement a single carved-out secure heap and have both user
and kernel space programs allocate from it (using the DMA heap
framework).
In the case of Mali CSF GPUs, this same integrator could have decided to
share the secure heap with the whole system and protect its usage with a
secure FW.
>> - registration of multiple memory regions at different
>> locations for efficiency or HW integration reasons.
>> For example, a peripheral may expect to share data at a
>> specific location in RAM. This information could have been
>> programmed by a FW prior to the kernel boot.
>
> How would you differentiate between them?
For that situation, I relied on the API exposed by this proposal:
-
https://lore.kernel.org/lkml/20230911023038.30649-1-yong.wu@mediatek.com/#t
The heaps would be distinguished by the name they are given. Therefore,
in the CMA patch, I retrieved the name of the heap using the label of
DTB node. We could do it differently and have a specific field in the
DTB node to assign the name.
I assumed it would be possible to call `dma_heap_find()` from the kernel
driver. The name of the heap would be known by the integrator. This
person may decide to hard code the name of the heap in the importer
kernel driver, or pass it as a property of some sort: insmod module
parameter, DTB, etc to make it generic.
Florent
next prev parent reply other threads:[~2025-02-03 13:53 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 [this message]
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
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=0fc22f56-1386-4b4a-bddc-0745ec8a3f9c@arm.com \
--to=florent.tomasin@arm.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=boris.brezillon@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=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@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
all inboxes | Powered by JetHome®