diff options
author | Michael Grzeschik <[email protected]> | 2021-10-17 23:50:17 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <[email protected]> | 2021-10-21 12:58:57 +0200 |
commit | e4ce9ed835bcaf4cd3230a53a79645986c25ce0f (patch) | |
tree | 3e8fc0a929a5989f667b450992d3d3fb21e7f073 | |
parent | f9897ec0f6d34e8b2bc2f4c8ab8789351090f3d2 (diff) |
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 <[email protected]>
Reviewed-by: Paul Elder <[email protected]>
Signed-off-by: Michael Grzeschik <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Greg Kroah-Hartman <[email protected]>
-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; |