Message ID | 20220217060724.7763-1-dafna@fastmail.com |
---|---|
Headers | show |
Series | stk1160: allocate urb buffs with the DMA noncontiguous API | expand |
On 17/02/2022 07:07, Dafna Hirschfeld wrote: > This set replaces urb buffers allocation to use the DMA > noncontiguous API. Similarly to a commit sent to uvc: [1] > This improves performance on ARM while not damaging performance > on other platforms. The cpu performance on ARM > improves because the new API does not cause the cache disable on ARM > while the coherent API do. > Measurements are shown in patch 4/4 > > [1] https://lkml.org/lkml/2021/3/12/1506 > > Patches Summary: > * patches 1+2 are bug fixes. > * patch 3 changes the way data is stored. This is a preparation > to patch 4. > * patch 4 is the change of API to use the noncontiguougs. > > Since changes on v3 are minors, I only tested that the driver works but not tested performance again. > > Changes since v2: > 1. improve commit log for patch 4, and "s/stk_free_urb_buffer/stk1160_free_urb/" Ah, I missed the v3. But in the v2 I merged for the pull request I made exactly the same changes in patch 4. So I will just mark this v3 as 'Obsoleted' and keep the version in the PR. Regards, Hans > > Changes since v1: > 1. reduce line length to be not too longer than 80 char > 2. reformulate commit log of patch 4/4 and add measurements results > 3. in patch 4, invalidate the vmap range before the direct mapping range. > 4. test regressions for patches 1-3 (not including patch 4) and improve vars names > 5. patch 2 is a new bug fix I found > 6. patch 1 is extended to fix two cases of not allocating all intended urb buffers. > > Dafna Hirschfeld (4): > media: stk1160: fix number of buffers in case not all buffers are > created > media: stk1160: If start stream fails, return buffers with > VB2_BUF_STATE_QUEUED > media: stk1160: move transfer_buffer and urb to same struct > 'stk1160_urb' > media: stk1160: use dma_alloc_noncontiguous API > > drivers/media/usb/stk1160/stk1160-core.c | 2 +- > drivers/media/usb/stk1160/stk1160-v4l.c | 16 ++- > drivers/media/usb/stk1160/stk1160-video.c | 142 ++++++++++++---------- > drivers/media/usb/stk1160/stk1160.h | 23 +++- > 4 files changed, 104 insertions(+), 79 deletions(-) >