<html><body><p>
<pre>
On Sat, 2025-01-18 at 09:37 +0100, Krzysztof Kozlowski wrote:
> //snip
> I did not talk about driver. I talked about this patch. Look at patch
> title - it starts with dt-bindings. Is here anything about driver?
> No.
> Why do we talk about driver?
>
> > differently from typical DMA drivers, and therefore we believe that
> > the
> > EXDMA driver may not be suitable to be placed under the
> > driver/mediatek/drm directory. The main reasons are as follows:
> >
> > (1)No Memory Allocation within EXDMA Engine:
> > The EXDMA engine does not perform memory allocation operations
> > itself.
> > Instead, it relies on GEM (Graphics Execution Manager) to allocate
> > memory.Traditional DMA drivers often handle their own memory
> > allocations, but in the case of EXDMA, memory management is
> > delegated
> > to GEM.
> >
> > (2)Primary Task of EXDMA:
> > The main function of EXDMA is to transfer buffers allocated by GEM
> > to
> > the subsequent display pipeline.
> > EXDMA serves as a bridge between memory allocated by GEM and the
> > display components, rather than acting as a general-purpose DMA
> > engine.
> > Based on the points above, we have decided to place the EXDMA
> > driver
> > under the DRM display subsystem rather than under the DMA
> > subsystem.
>
>
> I don't care if it uses GEM or kernel allocator or even 3rd party
> allocator. The question is: what is this device? If it is performing
> DMA, then it should be placed in "dma" directory. The rdma was placed
> differently but as you can easily check: it was never acked/reviewed,
> so
> don't use it as an example.
>
> Of course if it does not perform DMA, then it should not be in dma,
> but
> then I don't agree on using dma-cells here and anything like that in
> the
> driver.
>
> Best regards,
> Krzysztof
>
Hi Krzysztof,
The current placement of EXDMA under the display subsystem in
Mediatek's architecture is primarily due to its functional role as a
sub-device within the display pipeline.
In MT8196 hardware design, the sub-devices in display pipeline follow a
sequence of: EXDMA -> BLENDER -> OUTPROC -> PQ -> DVO.
In MT8195 hardware design, the sub-devices in display pipeline follow a
sequence of: OVL -> PQ ->DSI.
As we see, OVL has been divided into three new hardware IPs in MT8196.
OVL and EXDMA both have the ability to fetch data directly from DRAM
and can be regarded as DMA controller.
I also have confirmed with the hardware designer that EXDMA is a kind
of DMA, but it is specially designed to handle the graphical layer, and
has better performance than ordinary DMA.
Therefore, I think that moving EXDMA and OVL from the display folder to
the DMA folder, or only kepping them in the display folder is decided
by the two different views of DMA ability or display sub-device.
We will follow your instructions to put EXDMA on the place you decided.
Best regards,
Paul Chen
</pre>
</p></body></html><!--type:text--><!--{--><pre>************* MEDIATEK Confidentiality Notice ********************
The information contained in this e-mail message (including any
attachments) may be confidential, proprietary, privileged, or otherwise
exempt from disclosure under applicable laws. It is intended to be
conveyed only to the designated recipient(s). Any use, dissemination,
distribution, printing, retaining or copying of this e-mail (including its
attachments) by unintended recipient(s) is strictly prohibited and may
be unlawful. If you are not an intended recipient of this e-mail, or believe
that you have received this e-mail in error, please notify the sender
immediately (by replying to this e-mail), delete any and all copies of
this e-mail (including any attachments) from your system, and do not
disclose the content of this e-mail to any other person. Thank you!
</pre><!--}-->