Re: [PATCH 0/2] Lima DRM driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Den 13.02.2019 02.44, skrev Rob Herring:
> On Tue, Feb 12, 2019 at 7:00 PM Eric Anholt <eric@xxxxxxxxxx> wrote:
>>
>> Rob Herring <robh@xxxxxxxxxx> writes:
>>

[snip]

>>> FWIW, I'm working on the panfrost driver and am using the shmem
>>> helpers from Noralf. It's the early stages though. I started a patch
>>> for etnaviv to use it too, but found I need to rework it to sub-class
>>> the shmem GEM object.
>>
>> Did you just convert the shmem helpers over to doing alloc_coherent?  If
>> so, I'd be interested in picking them up for v3d, and that might help
>> get another patch out of your stack.
> 
> I haven't really fully addressed that yet, but yeah, my plan is just
> to switch to WC alloc and mappings. I was going to try to make it
> configurable, but there is a comment in the ARM dma mapping code which
> makes me wonder if tinydrm using streaming DMA for SPI is
> fundamentally broken (and maybe CMA is less broken?). If not broken,
> not guaranteed to work.
> 
> /*
>  * The whole dma_get_sgtable() idea is fundamentally unsafe - it seems
>  * that the intention is to allow exporting memory allocated via the
>  * coherent DMA APIs through the dma_buf API, which only accepts a
>  * scattertable.  This presents a couple of problems:
>  * 1. Not all memory allocated via the coherent DMA APIs is backed by
>  *    a struct page
>  * 2. Passing coherent DMA memory into the streaming APIs is not allowed
>  *    as we will try to flush the memory through a different alias to that
>  *    actually being used (and the flushes are redundant.)
>  */
> 

Thanks for drawing my attention to this, I wasn't aware of it. Sadly the
SPI subsystem doesn't have a way to pass in dma buffers, everything has
to go through the streaming API. Long term I guess I have to add support
for that.

Noralf.
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux