diff options
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/video/ov772x.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/media/video/ov772x.c b/drivers/media/video/ov772x.c index 702e61a9c02b..6b18da7c3c0a 100644 --- a/drivers/media/video/ov772x.c +++ b/drivers/media/video/ov772x.c | |||
@@ -565,8 +565,11 @@ static int ov772x_mask_set(struct i2c_client *client, | |||
565 | u8 set) | 565 | u8 set) |
566 | { | 566 | { |
567 | s32 val = i2c_smbus_read_byte_data(client, command); | 567 | s32 val = i2c_smbus_read_byte_data(client, command); |
568 | if (val < 0) | ||
569 | return val; | ||
570 | |||
568 | val &= ~mask; | 571 | val &= ~mask; |
569 | val |= set; | 572 | val |= set & mask; |
570 | 573 | ||
571 | return i2c_smbus_write_byte_data(client, command, val); | 574 | return i2c_smbus_write_byte_data(client, command, val); |
572 | } | 575 | } |