lkml.org 
[lkml]   [2022]   [Jan]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.16 021/217] media: atomisp-ov2680: Fix ov2680_set_fmt() clobbering the exposure
    Date
    From: Hans de Goede <hdegoede@redhat.com>

    [ Upstream commit 4492289c31364d28c2680b43b18883385a5d216c ]

    Now that we restore the default or last user set exposure setting on
    power_up() there is no need for the registers written by ov2680_set_fmt()
    to write to the exposure register.

    Not doing so fixes the exposure always being reset to the value from
    the res->regs array after a set_fmt().

    Link: https://lore.kernel.org/linux-media/20211107171549.267583-11-hdegoede@redhat.com
    Signed-off-by: Hans de Goede <hdegoede@redhat.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/staging/media/atomisp/i2c/ov2680.h | 24 ----------------------
    1 file changed, 24 deletions(-)

    diff --git a/drivers/staging/media/atomisp/i2c/ov2680.h b/drivers/staging/media/atomisp/i2c/ov2680.h
    index 874115f35fcad..798b28e134b64 100644
    --- a/drivers/staging/media/atomisp/i2c/ov2680.h
    +++ b/drivers/staging/media/atomisp/i2c/ov2680.h
    @@ -289,8 +289,6 @@ static struct ov2680_reg const ov2680_global_setting[] = {
    */
    static struct ov2680_reg const ov2680_QCIF_30fps[] = {
    {0x3086, 0x01},
    - {0x3501, 0x24},
    - {0x3502, 0x40},
    {0x370a, 0x23},
    {0x3801, 0xa0},
    {0x3802, 0x00},
    @@ -334,8 +332,6 @@ static struct ov2680_reg const ov2680_QCIF_30fps[] = {
    */
    static struct ov2680_reg const ov2680_CIF_30fps[] = {
    {0x3086, 0x01},
    - {0x3501, 0x24},
    - {0x3502, 0x40},
    {0x370a, 0x23},
    {0x3801, 0xa0},
    {0x3802, 0x00},
    @@ -377,8 +373,6 @@ static struct ov2680_reg const ov2680_CIF_30fps[] = {
    */
    static struct ov2680_reg const ov2680_QVGA_30fps[] = {
    {0x3086, 0x01},
    - {0x3501, 0x24},
    - {0x3502, 0x40},
    {0x370a, 0x23},
    {0x3801, 0xa0},
    {0x3802, 0x00},
    @@ -420,8 +414,6 @@ static struct ov2680_reg const ov2680_QVGA_30fps[] = {
    */
    static struct ov2680_reg const ov2680_656x496_30fps[] = {
    {0x3086, 0x01},
    - {0x3501, 0x24},
    - {0x3502, 0x40},
    {0x370a, 0x23},
    {0x3801, 0xa0},
    {0x3802, 0x00},
    @@ -463,8 +455,6 @@ static struct ov2680_reg const ov2680_656x496_30fps[] = {
    */
    static struct ov2680_reg const ov2680_720x592_30fps[] = {
    {0x3086, 0x01},
    - {0x3501, 0x26},
    - {0x3502, 0x40},
    {0x370a, 0x23},
    {0x3801, 0x00}, // X_ADDR_START;
    {0x3802, 0x00},
    @@ -508,8 +498,6 @@ static struct ov2680_reg const ov2680_720x592_30fps[] = {
    */
    static struct ov2680_reg const ov2680_800x600_30fps[] = {
    {0x3086, 0x01},
    - {0x3501, 0x26},
    - {0x3502, 0x40},
    {0x370a, 0x23},
    {0x3801, 0x00},
    {0x3802, 0x00},
    @@ -551,8 +539,6 @@ static struct ov2680_reg const ov2680_800x600_30fps[] = {
    */
    static struct ov2680_reg const ov2680_720p_30fps[] = {
    {0x3086, 0x00},
    - {0x3501, 0x48},
    - {0x3502, 0xe0},
    {0x370a, 0x21},
    {0x3801, 0xa0},
    {0x3802, 0x00},
    @@ -594,8 +580,6 @@ static struct ov2680_reg const ov2680_720p_30fps[] = {
    */
    static struct ov2680_reg const ov2680_1296x976_30fps[] = {
    {0x3086, 0x00},
    - {0x3501, 0x48},
    - {0x3502, 0xe0},
    {0x370a, 0x21},
    {0x3801, 0xa0},
    {0x3802, 0x00},
    @@ -637,8 +621,6 @@ static struct ov2680_reg const ov2680_1296x976_30fps[] = {
    */
    static struct ov2680_reg const ov2680_1456x1096_30fps[] = {
    {0x3086, 0x00},
    - {0x3501, 0x48},
    - {0x3502, 0xe0},
    {0x370a, 0x21},
    {0x3801, 0x90},
    {0x3802, 0x00},
    @@ -682,8 +664,6 @@ static struct ov2680_reg const ov2680_1456x1096_30fps[] = {

    static struct ov2680_reg const ov2680_1616x916_30fps[] = {
    {0x3086, 0x00},
    - {0x3501, 0x48},
    - {0x3502, 0xe0},
    {0x370a, 0x21},
    {0x3801, 0x00},
    {0x3802, 0x00},
    @@ -726,8 +706,6 @@ static struct ov2680_reg const ov2680_1616x916_30fps[] = {
    #if 0
    static struct ov2680_reg const ov2680_1616x1082_30fps[] = {
    {0x3086, 0x00},
    - {0x3501, 0x48},
    - {0x3502, 0xe0},
    {0x370a, 0x21},
    {0x3801, 0x00},
    {0x3802, 0x00},
    @@ -769,8 +747,6 @@ static struct ov2680_reg const ov2680_1616x1082_30fps[] = {
    */
    static struct ov2680_reg const ov2680_1616x1216_30fps[] = {
    {0x3086, 0x00},
    - {0x3501, 0x48},
    - {0x3502, 0xe0},
    {0x370a, 0x21},
    {0x3801, 0x00},
    {0x3802, 0x00},
    --
    2.34.1
    \
     
     \ /
      Last update: 2022-01-18 03:21    [W:4.040 / U:0.296 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site