Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

media: usb: cx231xx: Stop direct calls to queue num_buffers field

Use vb2_get_num_buffers() to avoid using queue num_buffers field directly.
This allows us to change how the number of buffers is computed in the
future.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com>
Reviewed-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>

authored by

Benjamin Gaignard and committed by
Mauro Carvalho Chehab
ca44d57a 912472fd

+6 -4
+3 -2
drivers/media/usb/cx231xx/cx231xx-417.c
··· 1218 1218 { 1219 1219 struct cx231xx *dev = vb2_get_drv_priv(vq); 1220 1220 unsigned int size = mpeglinesize * mpeglines; 1221 + unsigned int q_num_bufs = vb2_get_num_buffers(vq); 1221 1222 1222 1223 dev->ts1.ts_packet_size = mpeglinesize; 1223 1224 dev->ts1.ts_packet_count = mpeglines; 1224 1225 1225 - if (vq->num_buffers + *nbuffers < CX231XX_MIN_BUF) 1226 - *nbuffers = CX231XX_MIN_BUF - vq->num_buffers; 1226 + if (q_num_bufs + *nbuffers < CX231XX_MIN_BUF) 1227 + *nbuffers = CX231XX_MIN_BUF - q_num_bufs; 1227 1228 1228 1229 if (*nplanes) 1229 1230 return sizes[0] < size ? -EINVAL : 0;
+3 -2
drivers/media/usb/cx231xx/cx231xx-video.c
··· 714 714 unsigned int sizes[], struct device *alloc_devs[]) 715 715 { 716 716 struct cx231xx *dev = vb2_get_drv_priv(vq); 717 + unsigned int q_num_bufs = vb2_get_num_buffers(vq); 717 718 718 719 dev->size = (dev->width * dev->height * dev->format->depth + 7) >> 3; 719 720 720 - if (vq->num_buffers + *nbuffers < CX231XX_MIN_BUF) 721 - *nbuffers = CX231XX_MIN_BUF - vq->num_buffers; 721 + if (q_num_bufs + *nbuffers < CX231XX_MIN_BUF) 722 + *nbuffers = CX231XX_MIN_BUF - q_num_bufs; 722 723 723 724 if (*nplanes) 724 725 return sizes[0] < dev->size ? -EINVAL : 0;