lkml.org 
[lkml]   [2021]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.14 243/849] media: uvcvideo: Return -EIO for control errors
    Date
    From: Ricardo Ribalda <ribalda@chromium.org>

    [ Upstream commit ffccdde5f0e17d2f0d788a9d831a027187890eaa ]

    The device is doing something unexpected with the control. Either because
    the protocol is not properly implemented or there has been a HW error.

    Fixes v4l2-compliance:

    Control ioctls (Input 0):
    fail: v4l2-test-controls.cpp(448): s_ctrl returned an error (22)
    test VIDIOC_G/S_CTRL: FAIL
    fail: v4l2-test-controls.cpp(698): s_ext_ctrls returned an error (22)
    test VIDIOC_G/S/TRY_EXT_CTRLS: FAIL

    Reviewed-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
    Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/media/usb/uvc/uvc_video.c | 5 +++++
    1 file changed, 5 insertions(+)

    diff --git a/drivers/media/usb/uvc/uvc_video.c b/drivers/media/usb/uvc/uvc_video.c
    index e16464606b140..9f37eaf28ce7e 100644
    --- a/drivers/media/usb/uvc/uvc_video.c
    +++ b/drivers/media/usb/uvc/uvc_video.c
    @@ -115,6 +115,11 @@ int uvc_query_ctrl(struct uvc_device *dev, u8 query, u8 unit,
    case 5: /* Invalid unit */
    case 6: /* Invalid control */
    case 7: /* Invalid Request */
    + /*
    + * The firmware has not properly implemented
    + * the control or there has been a HW error.
    + */
    + return -EIO;
    case 8: /* Invalid value within range */
    return -EINVAL;
    default: /* reserved or unknown */
    --
    2.33.0


    \
     
     \ /
      Last update: 2021-11-16 02:33    [W:5.430 / U:0.288 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site