Hi Dmitry, On 5/7/24 3:32 PM, Dmitry Baryshkov wrote: > On Mon, May 06, 2024 at 01:49:17PM +0200, Hans de Goede wrote: >> Hi dma-buf maintainers, et.al., >> >> Various people have been working on making complex/MIPI cameras work OOTB >> with mainline Linux kernels and an opensource userspace stack. >> >> The generic solution adds a software ISP (for Debayering and 3A) to >> libcamera. Libcamera's API guarantees that buffers handed to applications >> using it are dma-bufs so that these can be passed to e.g. a video encoder. >> >> In order to meet this API guarantee the libcamera software ISP allocates >> dma-bufs from userspace through one of the /dev/dma_heap/* heaps. For >> the Fedora COPR repo for the PoC of this: >> https://hansdegoede.dreamwidth.org/28153.html > > Is there any reason for allocating DMA buffers for libcamera through > /dev/dma_heap/ rather than allocating them via corresponding media > device and then giving them away to DRM / VPU / etc? > > At least this should solve the permission usecase: if the app can open > camera device, it can allocate a buffer. This is with a software ISP, the input buffers with raw bayer data come from a v4l2 device, but the output buffers with the processed data are purely userspace managed in this case. Regards, Hans