linux/drivers/media/i2c
Mauro Carvalho Chehab 093347abc7 media: ov9650: add a sanity check
As pointed by cppcheck:

	[drivers/media/i2c/ov9650.c:706]: (error) Shifting by a negative value is undefined behaviour
	[drivers/media/i2c/ov9650.c:707]: (error) Shifting by a negative value is undefined behaviour
	[drivers/media/i2c/ov9650.c:721]: (error) Shifting by a negative value is undefined behaviour

Prevent mangling with gains with invalid values.

As pointed by Sylvester, this should never happen in practice,
as min value of V4L2_CID_GAIN control is 16 (gain is always >= 16
and m is always >= 0), but it is too hard for a static analyzer
to get this, as the logic with validates control min/max is
elsewhere inside V4L2 core.

Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
2019-08-26 14:05:09 -03:00
..
adv748x media: i2c: adv748x: Convert to new i2c device probe() 2019-08-13 11:51:14 -03:00
cx25840 Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
et8ek8 media: i2c: et8ek8: Convert to new i2c device probe() 2019-08-13 11:53:02 -03:00
m5mols treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
s5c73m3 media: i2c: s5c73m3: Convert to new i2c device probe() 2019-08-13 11:52:38 -03:00
smiapp media: i2c: smiapp: Convert to new i2c device probe() 2019-08-13 11:52:24 -03:00
Kconfig media: Clarify how menus are hidden by SUBDRV_AUTOSELECT 2019-08-19 12:00:29 -03:00
Makefile media: ov5675: Add support for OV5675 sensor 2019-08-15 08:05:15 -03:00
ad5820.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
ad9389b.c media: i2c: ad9389b: convert to i2c_new_dummy_device 2019-08-13 11:45:04 -03:00
adp1653.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
adv7170.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
adv7175.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
adv7180.c media: i2c: adv7180: convert to i2c_new_dummy_device 2019-08-13 11:45:33 -03:00
adv7183.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
adv7183_regs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
adv7343.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
adv7343_regs.h [media] drivers: media: i2c: adv7343_regs.h: Fix typo in #ifndef 2014-09-21 20:12:13 -03:00
adv7393.c media: fix usage of whitespaces and on indentation 2018-01-04 13:12:01 -05:00
adv7393_regs.h
adv7511-v4l2.c media: i2c: adv7511-v4l2: drop check because i2c_unregister_device() is NULL safe 2019-08-26 10:44:16 -03:00
adv7604.c media fixes for v4.20-rc8 2018-12-25 13:00:14 -08:00
adv7842.c media: i2c: adv7842: drop check because i2c_unregister_device() is NULL safe 2019-08-26 10:44:38 -03:00
ak881x.c media updates for v5.3-rc1 2019-07-09 09:47:22 -07:00
ak7375.c media: ak7375: Add ak7375 lens voice coil driver 2018-07-04 07:13:34 -04:00
aptina-pll.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
aptina-pll.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
bt819.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
bt856.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
bt866.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
cs53l32a.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
cs3308.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
cs5345.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
dw9714.c media: ipu3-cio2, dw9714: Remove Jian Xu's e-mail 2019-01-16 13:34:01 -05:00
dw9807-vcm.c media: dw9807-vcm: Fix probe error handling 2018-10-08 11:51:31 -04:00
imx214.c media: imx214: Fix typo in module description of imx214 2019-06-12 10:47:15 -04:00
imx258.c media: unify some sony camera sensors pattern naming 2018-12-05 06:34:26 -05:00
imx274.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
imx319.c media: unify some sony camera sensors pattern naming 2018-12-05 06:34:26 -05:00
imx355.c media: unify some sony camera sensors pattern naming 2018-12-05 06:34:26 -05:00
ir-kbd-i2c.c media: ir-kbd-i2c: convert to i2c_new_dummy_device() 2019-08-14 05:05:10 -03:00
ks0127.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
ks0127.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
lm3560.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
lm3646.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
m52790.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
max2175.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
max2175.h media: i2c: max2175: convert to SPDX identifiers 2018-09-12 10:51:18 -04:00
ml86v7667.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
msp3400-driver.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
msp3400-driver.h media: msp3400: declare its own pads 2018-09-17 13:16:19 -04:00
msp3400-kthreads.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
mt9m001.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
mt9m032.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
mt9m111.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
mt9p031.c media updates for v5.3-rc1 2019-07-09 09:47:22 -07:00
mt9t001.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
mt9t112.c media: i2c: fix several typos 2019-03-01 09:29:58 -05:00
mt9v011.c media: convert g/s_parm to g/s_frame_interval in subdevs 2018-02-22 12:27:35 -05:00
mt9v032.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
mt9v111.c media: i2c: mt9v111: Fix v4l2-ctrl error handling 2018-09-12 06:44:01 -04:00
noon010pc30.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
ov772x.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
ov2640.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
ov2659.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
ov2680.c media: ov2680: fix a typo in a function name 2019-07-25 06:44:39 -04:00
ov2685.c media: i2c: Fix Unnecessary Semicolon Warning Reported by coccicheck 2019-06-21 17:52:50 -04:00
ov5640.c media: ov5640: Add support for flash and lens devices 2019-08-15 08:05:57 -03:00
ov5645.c media: i2c: ov5645: Fix power sequence 2019-08-15 08:08:07 -03:00
ov5647.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
ov5670.c media: i2c: Fix pm_runtime_get_if_in_use() usage in sensor drivers 2018-08-31 09:23:53 -04:00
ov5675.c media: ov5675: Add support for OV5675 sensor 2019-08-15 08:05:15 -03:00
ov5695.c media: media/i2c: don't return ENOTTY if SUBDEV_API is not set 2019-07-23 11:47:09 -04:00
ov6650.c media updates for v5.3-rc1 2019-07-09 09:47:22 -07:00
ov7251.c media: v4l: mediabus: Recognise CSI-2 D-PHY and C-PHY 2018-10-04 16:06:15 -04:00
ov7640.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
ov7670.c media: ov7670: don't return ENOTTY if SUBDEV_API is not set 2019-07-23 08:55:36 -04:00
ov7740.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
ov8856.c media: ov8856: Check reading clock frequency succeeded 2019-08-15 08:05:40 -03:00
ov9640.c media: ov9640: Don't check for NULL on devm_gpiod_get return values 2019-06-21 17:54:25 -04:00
ov9640.h media: i2c: ov9640: add missing SPDX identifiers 2019-01-16 13:30:44 -05:00
ov9650.c media: ov9650: add a sanity check 2019-08-26 14:05:09 -03:00
ov13858.c media: i2c: Fix Unnecessary Semicolon Warning Reported by coccicheck 2019-06-21 17:52:50 -04:00
rj54n1cb0c.c media: v4l: Remove support for crop default target in subdev drivers 2018-10-03 11:58:24 -04:00
s5k4ecgx.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
s5k5baf.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
s5k6a3.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
s5k6aa.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
saa711x_regs.h MAINTAINERS & files: Canonize the e-mails I use at files 2018-05-04 06:21:06 -04:00
saa717x.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
saa6588.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
saa6752hs.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 68 2019-05-24 17:36:46 +02:00
saa7110.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
saa7115.c media: i2c: fix several typos 2019-03-01 09:29:58 -05:00
saa7127.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
saa7185.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
smiapp-pll.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
smiapp-pll.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
sony-btf-mpx.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
sr030pc30.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
st-mipid02.c media: st-mipid02: add support of JPEG 2019-06-24 13:04:58 -04:00
tc358743.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
tc358743_regs.h media: i2c: add SPDX license info 2018-02-14 13:16:31 -05:00
tda1997x.c media: i2c: tda1997x: prevent potential NULL pointer access 2019-08-13 11:46:32 -03:00
tda1997x_regs.h media: i2c: fix several typos 2019-03-01 09:29:58 -05:00
tda7432.c media: add SPDX headers to some files 2019-06-12 11:42:27 -04:00
tda9840.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
tea6415c.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 68 2019-05-24 17:36:46 +02:00
tea6415c.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tea6420.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 2019-05-24 17:36:45 +02:00
tea6420.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ths7303.c media: replace all <spaces><tab> occurrences 2018-01-04 13:15:05 -05:00
ths8200.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
ths8200_regs.h
tlv320aic23b.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
tvaudio.c media: i2c: fix several typos 2019-03-01 09:29:58 -05:00
tvp514x.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 486 2019-06-19 17:09:52 +02:00
tvp514x_regs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 486 2019-06-19 17:09:52 +02:00
tvp5150.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
tvp5150_reg.h media: tvp5150: Add sync lock interrupt handling 2018-09-17 13:30:28 -04:00
tvp7002.c media: i2c: Convert to new i2c device probe() 2019-08-13 11:54:04 -03:00
tvp7002_reg.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
tw2804.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
tw9903.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
tw9906.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
tw9910.c media: i2c: tw9910: simplify getting the adapter of a client 2019-06-24 11:17:03 -04:00
uda1342.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
upd64031a.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
upd64083.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
video-i2c.c media: video-i2c: use V4L2_FRACT_COMPARE 2019-06-21 17:13:58 -04:00
vp27smpx.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
vpx3220.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
vs6624.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
vs6624_regs.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
wm8739.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
wm8775.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00