Commit 7fe1d445 authored by Jacopo Mondi's avatar Jacopo Mondi Committed by Mauro Carvalho Chehab
Browse files

media: rdacm20: Enable GPIO1 explicitly



The MAX9271 GPIO1 line that controls the sensor reset is by default
enabled after a serializer chip reset.

As rdacm20 does not go through an explicit serializer reset, make sure
GPIO1 is enabled to make the camera module driver more robust.

Fixes: 34009bff ("media: i2c: Add RDACM20 driver")
Signed-off-by: default avatarJacopo Mondi <jacopo+renesas@jmondi.org>
Reviewed-by: default avatarKieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Signed-off-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
parent 909a0a18
Loading
Loading
Loading
Loading
+11 −2
Original line number Diff line number Diff line
@@ -487,9 +487,18 @@ static int rdacm20_initialize(struct rdacm20_device *dev)
	 * Reset the sensor by cycling the OV10635 reset signal connected to the
	 * MAX9271 GPIO1 and verify communication with the OV10635.
	 */
	max9271_clear_gpios(dev->serializer, MAX9271_GPIO1OUT);
	ret = max9271_enable_gpios(dev->serializer, MAX9271_GPIO1OUT);
	if (ret)
		return ret;

	ret = max9271_clear_gpios(dev->serializer, MAX9271_GPIO1OUT);
	if (ret)
		return ret;
	usleep_range(10000, 15000);
	max9271_set_gpios(dev->serializer, MAX9271_GPIO1OUT);

	ret = max9271_set_gpios(dev->serializer, MAX9271_GPIO1OUT);
	if (ret)
		return ret;
	usleep_range(10000, 15000);

again: