On Wed Jul 15 12:43:20 2026 +0100, Dave Stevenson wrote:
> The driver already has the LLP value stored in the mode structure,
> but also had the same value set via register writes in the mode's
> register list. Remove this duplication.
>
> Signed-off-by: Dave Stevenson <[email protected]>
> Reviewed-by: Jacopo Mondi <[email protected]>
> Signed-off-by: Sakari Ailus <[email protected]>
Patch committed.
Thanks,
Sakari Ailus
drivers/media/i2c/imx355.c | 37 +++++++++----------------------------
1 file changed, 9 insertions(+), 28 deletions(-)
---
diff --git a/drivers/media/i2c/imx355.c b/drivers/media/i2c/imx355.c
index 123ceed26d05..e9f4bea67d3a 100644
--- a/drivers/media/i2c/imx355.c
+++ b/drivers/media/i2c/imx355.c
@@ -33,6 +33,9 @@
#define IMX355_REG_FLL 0x0340
#define IMX355_FLL_MAX 0xffff
+#define IMX355_REG_LLP 0x0342
+#define IMX355_LLP_MAX 0xffff
+
#define IMX355_REG_X_ADD_START 0x0344
#define IMX355_REG_Y_ADD_START 0x0346
#define IMX355_REG_X_ADD_END 0x0348
@@ -260,8 +263,6 @@ static const struct imx355_reg_list imx355_global_setting =
{
};
static const struct imx355_reg mode_3268x2448_regs[] = {
- { 0x0342, 0x0e },
- { 0x0343, 0x58 },
{ 0x0900, 0x00 },
{ 0x0901, 0x11 },
{ 0x0902, 0x00 },
@@ -270,8 +271,6 @@ static const struct imx355_reg mode_3268x2448_regs[] = {
};
static const struct imx355_reg mode_3264x2448_regs[] = {
- { 0x0342, 0x0e },
- { 0x0343, 0x58 },
{ 0x0900, 0x00 },
{ 0x0901, 0x11 },
{ 0x0902, 0x00 },
@@ -280,8 +279,6 @@ static const struct imx355_reg mode_3264x2448_regs[] = {
};
static const struct imx355_reg mode_3280x2464_regs[] = {
- { 0x0342, 0x0e },
- { 0x0343, 0x58 },
{ 0x0900, 0x00 },
{ 0x0901, 0x11 },
{ 0x0902, 0x00 },
@@ -290,8 +287,6 @@ static const struct imx355_reg mode_3280x2464_regs[] = {
};
static const struct imx355_reg mode_1940x1096_regs[] = {
- { 0x0342, 0x0e },
- { 0x0343, 0x58 },
{ 0x0900, 0x00 },
{ 0x0901, 0x11 },
{ 0x0902, 0x00 },
@@ -300,8 +295,6 @@ static const struct imx355_reg mode_1940x1096_regs[] = {
};
static const struct imx355_reg mode_1936x1096_regs[] = {
- { 0x0342, 0x0e },
- { 0x0343, 0x58 },
{ 0x0900, 0x00 },
{ 0x0901, 0x11 },
{ 0x0902, 0x00 },
@@ -310,8 +303,6 @@ static const struct imx355_reg mode_1936x1096_regs[] = {
};
static const struct imx355_reg mode_1924x1080_regs[] = {
- { 0x0342, 0x0e },
- { 0x0343, 0x58 },
{ 0x0900, 0x00 },
{ 0x0901, 0x11 },
{ 0x0902, 0x00 },
@@ -320,8 +311,6 @@ static const struct imx355_reg mode_1924x1080_regs[] = {
};
static const struct imx355_reg mode_1920x1080_regs[] = {
- { 0x0342, 0x0e },
- { 0x0343, 0x58 },
{ 0x0900, 0x00 },
{ 0x0901, 0x11 },
{ 0x0902, 0x00 },
@@ -330,8 +319,6 @@ static const struct imx355_reg mode_1920x1080_regs[] = {
};
static const struct imx355_reg mode_1640x1232_regs[] = {
- { 0x0342, 0x07 },
- { 0x0343, 0x2c },
{ 0x0900, 0x01 },
{ 0x0901, 0x22 },
{ 0x0902, 0x00 },
@@ -340,8 +327,6 @@ static const struct imx355_reg mode_1640x1232_regs[] = {
};
static const struct imx355_reg mode_1640x922_regs[] = {
- { 0x0342, 0x07 },
- { 0x0343, 0x2c },
{ 0x0900, 0x01 },
{ 0x0901, 0x22 },
{ 0x0902, 0x00 },
@@ -350,8 +335,6 @@ static const struct imx355_reg mode_1640x922_regs[] = {
};
static const struct imx355_reg mode_1300x736_regs[] = {
- { 0x0342, 0x07 },
- { 0x0343, 0x2c },
{ 0x0900, 0x01 },
{ 0x0901, 0x22 },
{ 0x0902, 0x00 },
@@ -360,8 +343,6 @@ static const struct imx355_reg mode_1300x736_regs[] = {
};
static const struct imx355_reg mode_1296x736_regs[] = {
- { 0x0342, 0x07 },
- { 0x0343, 0x2c },
{ 0x0900, 0x01 },
{ 0x0901, 0x22 },
{ 0x0902, 0x00 },
@@ -370,8 +351,6 @@ static const struct imx355_reg mode_1296x736_regs[] = {
};
static const struct imx355_reg mode_1284x720_regs[] = {
- { 0x0342, 0x07 },
- { 0x0343, 0x2c },
{ 0x0900, 0x01 },
{ 0x0901, 0x22 },
{ 0x0902, 0x00 },
@@ -380,8 +359,6 @@ static const struct imx355_reg mode_1284x720_regs[] = {
};
static const struct imx355_reg mode_1280x720_regs[] = {
- { 0x0342, 0x07 },
- { 0x0343, 0x2c },
{ 0x0900, 0x01 },
{ 0x0901, 0x22 },
{ 0x0902, 0x00 },
@@ -390,8 +367,6 @@ static const struct imx355_reg mode_1280x720_regs[] = {
};
static const struct imx355_reg mode_820x616_regs[] = {
- { 0x0342, 0x0e },
- { 0x0343, 0x58 },
{ 0x0900, 0x01 },
{ 0x0901, 0x44 },
{ 0x0902, 0x00 },
@@ -1059,6 +1034,12 @@ static int imx355_start_streaming(struct imx355 *imx355)
if (ret)
return ret;
+ /* set line length */
+ ret = imx355_write_reg(imx355, IMX355_REG_LLP, 2,
+ imx355->hblank->val + imx355->cur_mode->width);
+ if (ret)
+ return ret;
+
/* Apply customized values from user */
ret = __v4l2_ctrl_handler_setup(imx355->sd.ctrl_handler);
if (ret)
_______________________________________________
linuxtv-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]