mirror of
https://github.com/torvalds/linux.git
synced 2024-12-23 11:21:33 +00:00
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> |
||
---|---|---|
.. | ||
em28xx-audio.c | ||
em28xx-cards.c | ||
em28xx-core.c | ||
em28xx-dvb.c | ||
em28xx-i2c.c | ||
em28xx-input.c | ||
em28xx-reg.h | ||
em28xx-vbi.c | ||
em28xx-video.c | ||
em28xx.h | ||
Kconfig | ||
Makefile |