Patch "media: i2c: imx219: fix msr access command sequence" has been added to the 6.6-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    media: i2c: imx219: fix msr access command sequence

to the 6.6-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     media-i2c-imx219-fix-msr-access-command-sequence.patch
and it can be found in the queue-6.6 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 8175b79c3cd65f51f981a9d2f36fe7c1ba5b6ea5
Author: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>
Date:   Fri Jun 7 16:50:23 2024 +0100

    media: i2c: imx219: fix msr access command sequence
    
    [ Upstream commit 3cdc776e0a5f1784c3ae5d3371b64215c228bf1f ]
    
    It was reported to me that the imx219 didn't work on one of our
    development kits partly because the access sequence is incorrect.
    The datasheet I could find [1] for this camera has the access sequence:
    Seq. No. Address (Hex) data
    1        30EB          05
    2        30EB          0C
    3        300A          FF
    4        300B          FF
    5        30EB          05
    6        30EB          09
    
    but the driver swaps the first two elements. Laurent pointed out on IRC
    that the original code used the correct sequence for 1920x1080 but the
    current sequence for 3280x2464 and 1640x1232. During refactoring of the
    init sequence the current order was used for all formats.
    
    Switch to using the documented sequence.
    
    Link: https://www.opensourceinstruments.com/Electronics/Data/IMX219PQ.pdf [1]
    Fixes: 8508455961d5 ("media: i2c: imx219: Split common registers from mode tables")
    Fixes: 1283b3b8f82b ("media: i2c: Add driver for Sony IMX219 sensor")
    Signed-off-by: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>
    Reviewed-by: Dave Stevenson <dave.stevenson@xxxxxxxxxxxxxxx>
    Tested-by: Dave Stevenson <dave.stevenson@xxxxxxxxxxxxxxx>
    Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
    Tested-by: Adam Ford <aford173@xxxxxxxxx>  #imx8mp-beacon-kit
    Signed-off-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/media/i2c/imx219.c b/drivers/media/i2c/imx219.c
index 3afa3f79c8a26..a9a8cd148f4fc 100644
--- a/drivers/media/i2c/imx219.c
+++ b/drivers/media/i2c/imx219.c
@@ -188,8 +188,8 @@ static const struct cci_reg_sequence imx219_common_regs[] = {
 	{ IMX219_REG_MODE_SELECT, 0x00 },	/* Mode Select */
 
 	/* To Access Addresses 3000-5fff, send the following commands */
-	{ CCI_REG8(0x30eb), 0x0c },
 	{ CCI_REG8(0x30eb), 0x05 },
+	{ CCI_REG8(0x30eb), 0x0c },
 	{ CCI_REG8(0x300a), 0xff },
 	{ CCI_REG8(0x300b), 0xff },
 	{ CCI_REG8(0x30eb), 0x05 },




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux