summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Grzeschik <m.grzeschik@pengutronix.de>2021-10-17 23:50:17 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-10-21 12:58:57 +0200
commite4ce9ed835bcaf4cd3230a53a79645986c25ce0f (patch)
tree3e8fc0a929a5989f667b450992d3d3fb21e7f073
parentf9897ec0f6d34e8b2bc2f4c8ab8789351090f3d2 (diff)
downloadlinux-stable-e4ce9ed835bcaf4cd3230a53a79645986c25ce0f.tar.gz
linux-stable-e4ce9ed835bcaf4cd3230a53a79645986c25ce0f.tar.bz2
linux-stable-e4ce9ed835bcaf4cd3230a53a79645986c25ce0f.zip
usb: gadget: uvc: ensure the vdev is unset
Since the uvc video device is created on demand, we have to ensure that the struct is always zeroed. Otherwise the previous settings might collide with the new values. Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com> Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de> Link: https://lore.kernel.org/r/20211017215017.18392-7-m.grzeschik@pengutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/usb/gadget/function/f_uvc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/gadget/function/f_uvc.c b/drivers/usb/gadget/function/f_uvc.c
index e6de56afec6e..71bb5e477dba 100644
--- a/drivers/usb/gadget/function/f_uvc.c
+++ b/drivers/usb/gadget/function/f_uvc.c
@@ -417,6 +417,7 @@ uvc_register_video(struct uvc_device *uvc)
int ret;
/* TODO reference counting. */
+ memset(&uvc->vdev, 0, sizeof(uvc->video));
uvc->vdev.v4l2_dev = &uvc->v4l2_dev;
uvc->vdev.v4l2_dev->dev = &cdev->gadget->dev;
uvc->vdev.fops = &uvc_v4l2_fops;