media: i2c: ov5648: Fix lockdep error
authorHans de Goede <hdegoede@redhat.com>
Thu, 3 Feb 2022 12:33:12 +0000 (13:33 +0100)
committerSakari Ailus <sakari.ailus@linux.intel.com>
Thu, 3 Mar 2022 22:27:05 +0000 (00:27 +0200)
commitd4cb5d3c4cee28aa89b02bc33d930a6cf75e7f79
tree04f3192eeb7146edd76d6781217d391a69feca14
parente738f5dd67eb8098d75345908a5e73782d0569a5
media: i2c: ov5648: Fix lockdep error

ov5648_state_init() calls ov5648_state_mipi_configure() which uses
__v4l2_ctrl_s_ctrl[_int64](). This means that sensor->mutex (which
is also sensor->ctrls.handler.lock) must be locked before calling
ov5648_state_init().

ov5648_state_mipi_configure() is also used in other places where
the lock is already held so it cannot be changed itself.

Note this is based on an identical (tested) fix for the ov8865 driver,
this has only been compile-tested.

Cc: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Reviewed-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
drivers/media/i2c/ov5648.c