Hello Marek
I have prepared a new set of patches, please take a look to them. The
series implements the coherent allocation, segments compaction and use
of sg_table, it does not implement the dma_map/dma_unmap/dma_sync, I
rather work on that one when you are back.
Thanks for your help
On Thu,
Hello,
On 7/17/2013 4:20 PM, Ricardo Ribalda Delgado wrote:
Hello again Marek
In my system I am doing the scatter gather compaction on device
driver... But I agree that it would be better done on the vb2 layer.
For the oversize sglist we could do one of this two things.
If we want to have a
Hello again:
I have started to implemt it, but I think there is more hidden work in
this task as it seems. In order to call dma_map_sg and
max_dma_segment_size I need acess to the struct device, but (correct
me if I am wrong), vb2 is device agnostic. Adding the above
functionality will mean not
Hello,
On 7/18/2013 9:39 AM, Ricardo Ribalda Delgado wrote:
Hello again:
I have started to implemt it, but I think there is more hidden work in
this task as it seems. In order to call dma_map_sg and
max_dma_segment_size I need acess to the struct device, but (correct
me if I am wrong), vb2 is
Hello,
On 7/15/2013 11:34 AM, Ricardo Ribalda Delgado wrote:
Most DMA engines have limitations regarding the number of DMA segments
(sg-buffers) that they can handle. Videobuffers can easily spread through
houndreds of pages.
In the previous aproach, the pages were allocated individually, this
Hi Marek
alloc_pages_exact returns pages of order 0, every single page is
filled into buf-pages, that then is used by vb2_dma_sg_mmap(), that
also expects order 0 pages (its loops increments in PAGE_SIZE). The
code has been tested on real HW.
Your concern is that that alloc_pages_exact splits
Hello,
On 7/17/2013 11:43 AM, Ricardo Ribalda Delgado wrote:
Hi Marek
alloc_pages_exact returns pages of order 0, every single page is
filled into buf-pages, that then is used by vb2_dma_sg_mmap(), that
also expects order 0 pages (its loops increments in PAGE_SIZE). The
code has been tested
Hello again
I have made some experiments and have replaced alloc_pages_exact with
alloc_pages of order N. Unfortunatelly vm_insert_page and vm_map_ram
does not work as expected.
vm_insert_page, only insert the PAGE_SIZE bytes of the higher order
page, if I try to add the other pages manually,
Hello again Marek
In my system I am doing the scatter gather compaction on device
driver... But I agree that it would be better done on the vb2 layer.
For the oversize sglist we could do one of this two things.
If we want to have a simple pass processing we have to allocate an
structure A for