Message ID | 20250531163148.83497-9-hansg@kernel.org |
---|---|
State | New |
Headers | show |
Series | media: mt9m114: Changes to make it work with atomisp devices | expand |
diff --git a/drivers/media/i2c/mt9m114.c b/drivers/media/i2c/mt9m114.c index fe30b9ff84ad..7a1451006cfe 100644 --- a/drivers/media/i2c/mt9m114.c +++ b/drivers/media/i2c/mt9m114.c @@ -2207,6 +2207,13 @@ static int mt9m114_power_on(struct mt9m114 *sensor) static void mt9m114_power_off(struct mt9m114 *sensor) { + unsigned int duration; + + gpiod_set_value(sensor->reset, 1); + /* Power off takes 10 clock cycles. Double it to be safe. */ + duration = DIV_ROUND_UP(2 * 10 * 1000000, sensor->clk_freq); + fsleep(duration); + clk_disable_unprepare(sensor->clk); regulator_bulk_disable(ARRAY_SIZE(sensor->supplies), sensor->supplies); }
Put sensor back in reset on power-down. Signed-off-by: Hans de Goede <hansg@kernel.org> --- Changes in v2 - After setting reset high wait 20 clk cycles before disabling the clk and regulators --- drivers/media/i2c/mt9m114.c | 7 +++++++ 1 file changed, 7 insertions(+)