From dab7e3106ddd6cbc3b55301228407b9d17ce7773 Mon Sep 17 00:00:00 2001 From: Andreas Bombe Date: Sun, 21 Mar 2010 16:02:45 -0300 Subject: V4L/DVB: V4L2: Replace loops for finding max buffers in VIDIOC_REQBUFS callbacks Due to obvious copy and paste coding a number of video capture drivers which implement a limit on the buffer memory decremented the user supplied buffer count in a while loop until it reaches an acceptable value. This is a silly thing to do when the maximum value can be directly computed. Signed-off-by: Andreas Bombe Signed-off-by: Mauro Carvalho Chehab --- drivers/media/video/zr364xx.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'drivers/media/video/zr364xx.c') diff --git a/drivers/media/video/zr364xx.c b/drivers/media/video/zr364xx.c index 3d4bac2..a82b5bd 100644 --- a/drivers/media/video/zr364xx.c +++ b/drivers/media/video/zr364xx.c @@ -376,8 +376,8 @@ static int buffer_setup(struct videobuf_queue *vq, unsigned int *count, if (*count == 0) *count = ZR364XX_DEF_BUFS; - while (*size * (*count) > ZR364XX_DEF_BUFS * 1024 * 1024) - (*count)--; + if (*size * *count > ZR364XX_DEF_BUFS * 1024 * 1024) + *count = (ZR364XX_DEF_BUFS * 1024 * 1024) / *size; return 0; } -- cgit v1.1