linux_dsm_epyc7002/drivers/media
Dongchun Zhu f1a64f5666 media: i2c: ov5695: Fix power on and off sequences
From the measured hardware signal, OV5695 reset pin goes high for a
short period of time during boot-up. From the sensor specification, the
reset pin is active low and the DT binding defines the pin as active
low, which means that the values set by the driver are inverted and thus
the value requested in probe ends up high.

Fix it by changing probe to request the reset GPIO initialized to high,
which makes the initial state of the physical signal low.

In addition, DOVDD rising must occur before DVDD rising from spec., but
regulator_bulk_enable() API enables all the regulators asynchronously.
Use an explicit loops of regulator_enable() instead.

For power off sequence, it is required that DVDD falls first. Given the
bulk API does not give any guarantee about the order of regulators,
change the driver to use regulator_disable() instead.

The sensor also requires a delay between reset high and first I2C
transaction, which was assumed to be 8192 XVCLK cycles, but 1ms is
recommended by the vendor. Fix this as well.

Signed-off-by: Dongchun Zhu <dongchun.zhu@mediatek.com>
Signed-off-by: Tomasz Figa <tfiga@chromium.org>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2020-03-12 17:20:19 +01:00
..
cec media: cec: remove unused functions 2020-01-08 14:38:06 +01:00
common media: videobuf2-dma-contig.c: remove spurious 'b' in message 2020-03-02 15:23:39 +01:00
dvb-core media: dvb-core: dvbdev: convert to use i2c_new_client_device() 2020-01-09 15:57:46 +01:00
dvb-frontends media: tda10071: fix unsigned sign extension overflow 2020-03-12 09:46:45 +01:00
firewire media: firewire: Make structure fdtv_ca constant 2019-08-21 18:39:55 -03:00
i2c media: i2c: ov5695: Fix power on and off sequences 2020-03-12 17:20:19 +01:00
mc media: mc-entity.c: use WARN_ON, validate link pads 2020-02-24 17:21:58 +01:00
mmc treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
pci media: media/pci: rename VFL_TYPE_GRABBER to _VIDEO 2020-02-24 16:53:50 +01:00
platform media: am437x-vpfe: exclude illegal values for enum when validing params from user space 2020-03-12 16:26:15 +01:00
radio media: Fix Kconfig indentation 2020-02-24 15:19:38 +01:00
rc media: rc: make scancodes 64 bit 2020-03-12 09:20:46 +01:00
spi media: spi: gs1662: Use new structure for SPI transfer delays 2020-03-05 22:46:25 +01:00
tuners media: tuners: Use the correct style for SPDX License Identifier 2019-10-24 18:57:55 -03:00
usb media: lmedm04: remove redundant assignment to variable gate 2020-03-12 09:47:33 +01:00
v4l2-core media: v4l2-fwnode: add initial connector parsing support 2020-03-12 16:34:16 +01:00
Kconfig media: Fix Kconfig indentation 2020-02-24 15:19:38 +01:00
Makefile media: move drivers/media/media-* to drivers/media/mc/mc-* 2019-05-28 12:15:46 -04:00