• Jacopo Mondi's avatar
    media: i2c: rdacm21: Fix OV10640 powerup · ff75332b
    Jacopo Mondi authored
    The OV10640 image sensor powerdown signal is controlled by the first
    line of the OV490 GPIO pad #1, but the pad #0 identifier
    OV490_GPIO_OUTPUT_VALUE0 was erroneously used. As a result the image
    sensor powerdown signal was never asserted but was left floating and
    kept high by an internal pull-up resistor, causing sporadic failures
    during the image sensor startup phase.
    
    Fix this by using the correct GPIO pad identifier and wait the mandatory
    1.5 millisecond delay after the powerup lane is asserted. The reset
    delay is not characterized in the chip manual if not as "255 XVCLK +
    initialization". Wait for at least 3 milliseconds to guarantee the SCCB
    bus is available.
    
    While at it also fix the reset sequence, as the reset line was released
    before the powerdown one, and the line was not cycled.
    
    This commit fixes a sporadic start-up error triggered by a failure to
    read the OV10640 chip ID:
    rdacm21 8-0054: OV10640 ID mismatch: (0x01)
    
    Fixes: a59f853b ("media: i2c: Add driver for RDACM21 camera module")
    Signed-off-by: default avatarJacopo Mondi <jacopo+renesas@jmondi.org>
    Reviewed-by: default avatarKieran Bingham <kieran.bingham+renesas@ideasonboard.com>
    Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
    Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
    ff75332b
rdacm21.c 14.8 KB