From: Frank Schaefer Date: Sat, 8 Dec 2012 14:31:29 +0000 (-0300) Subject: [media] em28xx: move caching of pointer to vmalloc memory in videobuf to struct em28x... X-Git-Tag: v3.9-rc1~93^2~413 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4078d625c9610a362f571f7e5ff2521adadfff2b;p=pandora-kernel.git [media] em28xx: move caching of pointer to vmalloc memory in videobuf to struct em28xx_buffer 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 Signed-off-by: Mauro Carvalho Chehab --- Reading git-diff-tree failed