diff options
author | Michael Grzeschik <m.grzeschik@pengutronix.de> | 2021-10-17 23:50:17 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-10-21 12:58:57 +0200 |
commit | e4ce9ed835bcaf4cd3230a53a79645986c25ce0f (patch) | |
tree | 3e8fc0a929a5989f667b450992d3d3fb21e7f073 | |
parent | f9897ec0f6d34e8b2bc2f4c8ab8789351090f3d2 (diff) | |
download | linux-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.c | 1 |
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; |