Hi Rob On 30/01/2025 23:20, Rob Herring wrote: > > Why would panthor need CMA, it has an MMU. > > In any case, I agree with Maxime that this is redundant. > This is correct, the GPU has an MMU. The reason I introduced this custom CMA DTB entry is to allow creation of a standalone DMA heap which can be retrieved by Panthor using the API exposed by: - https://lore.kernel.org/lkml/20230911023038.30649-1-yong.wu@xxxxxxxxxxxx/#t My understanding might be wrong, I am under the impression that current CMA driver only has `dma_contiguous_default_area` as standalone carved-out heap and we cannot have more than one. Please correct me if this is invalid. With the DMA Heap API I based the RFC on, Panthor kernel driver does not manage the protected heap itself, it relies on an exporter to do it. On some system the secure heap will communicate with a secure FW, on others it will be a carved-out memory with restricted access. This is integration specific. Panthor kernel driver will expect to import a DMA buffer obtained from a heap. For the development of the protected mode feature, I decided to modify the CMA driver to create a standalone DMA heap and allocate a DMA buffer from it. It helped me abstract the importing of a heap in Panthor kernel driver. Someone may use a different heap driver to reproduce the setup. * Additional information to help with the context: Mali CSF GPU requires protected memory at the device level which does not belong to a user space process in order to allow the FW to enter protected mode. There is a single FW per GPU instance and the FW is loaded a probe time. Regards, Florent