IMX Scaler / CSC m2m driver.

Ian Molton imolton at ad-holdings.co.uk
Thu Mar 26 02:33:36 PDT 2015


Sorry, dropped Philipp from CC, re-added.

On 25/03/15 18:13, Ian Molton wrote:
> On 25/03/15 16:34, Philipp Zabel wrote:
>> The scaler hardware does not support userptr memory, the mem2mem driver
>> is wrong to advertise it.
>
> Reading the manual, this is handled by the IDMAC?
>
> Its AAU seems not to have any scatter/gather logic, so the only way to
> "get the data out" is going to be a copy, as you say. (or some other
> IPU component like a YUV plane?).
>
> On my board, writes to RAM are able to hit ~1.3GiB/s
>
> memcpy() is a bit less pleasing, achieving about 300MiB/s
>
> Either way, that should be enough to get a frame from the driver to
> the screen with passable performance...
>
> I applied your patch to see if it got rid of my long cacheflush, but
> no luck. the cache flush in question appears to be in
> vb2_dc_dmabuf_ops_map(), called by way of video_usercopy().
>
> It looks like the function in question attempts to preserve the DMA
> mapping of the buffer, but isn't doing. Some debug code in there show
> that its always taking the path of mapping the buffer anew.
>
> I guess we know where the performance is going now - but why?
>
> I'm starting to think that ximagesink and fbdevsink are discarding,
> not reusing buffers.
>
> -Ian
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



More information about the gstreamer-devel mailing list