4078d625c9
In the current code em28xx_urb_data_copy() caches the pointer to the vmalloc memory in videobuf locally. The alternative would be to call videobuf_to_vmalloc() for each processed USB data packet (isoc USB transfers => 64 times per URB) in the em28xx_copy_*() functions. With the next commits, the data processing code will be split into functions for serveral reasons: - em28xx_urb_data_copy() is generally way to long, making it less readable - there is code duplication between VBI and video data processing - support for em25xx data processing (uses a different header and frame end signaling mechanism) will be added This would require extensive usage of pointer-pointers, which usually makes the code less readable and prone to bugs. The better solution is to cache the pointer in struct em28xx_buffer. This also improves consistency, because we already track the buffer fill count there. Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com> |
||
---|---|---|
.. | ||
au0828 | ||
b2c2 | ||
cpia2 | ||
cx231xx | ||
dvb-usb | ||
dvb-usb-v2 | ||
em28xx | ||
gspca | ||
hdpvr | ||
pvrusb2 | ||
pwc | ||
s2255 | ||
siano | ||
sn9c102 | ||
stk1160 | ||
stkwebcam | ||
tlg2300 | ||
tm6000 | ||
ttusb-budget | ||
ttusb-dec | ||
usbvision | ||
uvc | ||
zr364xx | ||
Kconfig | ||
Makefile |