diff options
Diffstat (limited to 'drivers/media/video/msp3400-driver.c')
-rw-r--r-- | drivers/media/video/msp3400-driver.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/media/video/msp3400-driver.c b/drivers/media/video/msp3400-driver.c index 0e412131da7c..4897d90f6a25 100644 --- a/drivers/media/video/msp3400-driver.c +++ b/drivers/media/video/msp3400-driver.c | |||
@@ -382,7 +382,12 @@ static int msp_s_ctrl(struct v4l2_ctrl *ctrl) | |||
382 | 382 | ||
383 | void msp_update_volume(struct msp_state *state) | 383 | void msp_update_volume(struct msp_state *state) |
384 | { | 384 | { |
385 | v4l2_ctrl_s_ctrl(state->volume, v4l2_ctrl_g_ctrl(state->volume)); | 385 | /* Force an update of the volume/mute cluster */ |
386 | v4l2_ctrl_lock(state->volume); | ||
387 | state->volume->val = state->volume->cur.val; | ||
388 | state->muted->val = state->muted->cur.val; | ||
389 | msp_s_ctrl(state->volume); | ||
390 | v4l2_ctrl_unlock(state->volume); | ||
386 | } | 391 | } |
387 | 392 | ||
388 | /* --- v4l2 ioctls --- */ | 393 | /* --- v4l2 ioctls --- */ |