[PATCH 11/11] media: i2c: ov5640: Split out format mux registers

From: Kieran Bingham

Date: Fri May 01 2026 - 11:40:19 EST


The init_setting table configures format control and mux to default for
YUV420 output. These are later determined by the users format
selection, and so are candidates for removal from the init table.

Split the additions out from the register block and document them.

Signed-off-by: Kieran Bingham <kieran.bingham@xxxxxxxxxxxxxxxx>
---
drivers/media/i2c/ov5640.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index f63d81640f54..477f6a3ddbf6 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -615,8 +615,13 @@ static const struct reg_value ov5640_init_setting[] = {
{0x3a0d, 0x04, 0, 0}, {0x3a14, 0x03, 0, 0}, {0x3a15, 0xd8, 0, 0},
{0x4001, 0x02, 0, 0}, {0x4004, 0x02, 0, 0}, {0x3000, 0x00, 0, 0},
{0x3002, 0x1c, 0, 0}, {0x3004, 0xff, 0, 0}, {0x3006, 0xc3, 0, 0},
- {0x302e, 0x08, 0, 0}, {0x4300, 0x3f, 0, 0},
- {0x501f, 0x00, 0, 0}, {0x440e, 0x00, 0, 0}, {0x4837, 0x0a, 0, 0},
+ {0x302e, 0x08, 0, 0},
+
+ /* Format control, Mux control */
+ {0x4300, 0x3f, 0, 0}, /* YUV420 YYYY... / UYVY... */
+ {0x501f, 0x00, 0, 0}, /* ISP YUV422 */
+
+ {0x440e, 0x00, 0, 0}, {0x4837, 0x0a, 0, 0},

/* ISP Control */
{OV5640_REG_ISP_CTRL00, OV5640_ISP_00_LENC_ENABLE | OV5640_ISP_00_GMA_ENABLE |

--
2.52.0