
Adds latest 6.6 patches from the Raspberry Pi repository. These patches were generated from: https://github.com/raspberrypi/linux/commits/rpi-6.6.y/ With the following command: git format-patch -N v6.6.85..HEAD (HEAD -> bba53a117a4a5c29da892962332ff1605990e17a) Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> (cherry picked from commit 4618d09587c4e3d5fdc7643494474be602710815)
78 lines
2.1 KiB
Diff
78 lines
2.1 KiB
Diff
From 0553897d77e849a86e836ddf1e0c0dbbd8e64f83 Mon Sep 17 00:00:00 2001
|
|
From: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|
Date: Mon, 20 Jan 2025 10:40:09 +0000
|
|
Subject: [PATCH] media: i2c: imx477: Add further link frequency options
|
|
|
|
https://github.com/raspberrypi/linux/issues/6004 reports further
|
|
issues with GPS interference.
|
|
|
|
Untested, but adds further link frequency options.
|
|
|
|
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|
---
|
|
drivers/media/i2c/imx477.c | 33 +++++++++++++++++++++++++++++++++
|
|
1 file changed, 33 insertions(+)
|
|
|
|
--- a/drivers/media/i2c/imx477.c
|
|
+++ b/drivers/media/i2c/imx477.c
|
|
@@ -169,12 +169,18 @@ enum {
|
|
IMX477_LINK_FREQ_450MHZ,
|
|
IMX477_LINK_FREQ_453MHZ,
|
|
IMX477_LINK_FREQ_456MHZ,
|
|
+ IMX477_LINK_FREQ_459MHZ,
|
|
+ IMX477_LINK_FREQ_462MHZ,
|
|
+ IMX477_LINK_FREQ_498MHZ,
|
|
};
|
|
|
|
static const s64 link_freqs[] = {
|
|
[IMX477_LINK_FREQ_450MHZ] = 450000000,
|
|
[IMX477_LINK_FREQ_453MHZ] = 453000000,
|
|
[IMX477_LINK_FREQ_456MHZ] = 456000000,
|
|
+ [IMX477_LINK_FREQ_459MHZ] = 459000000,
|
|
+ [IMX477_LINK_FREQ_462MHZ] = 462000000,
|
|
+ [IMX477_LINK_FREQ_498MHZ] = 498000000,
|
|
};
|
|
|
|
/* 450MHz is the nominal "default" link frequency */
|
|
@@ -193,6 +199,21 @@ static const struct imx477_reg link_456M
|
|
{0x030F, 0x98},
|
|
};
|
|
|
|
+static const struct imx477_reg link_459Mhz_regs[] = {
|
|
+ {0x030E, 0x00},
|
|
+ {0x030F, 0x99},
|
|
+};
|
|
+
|
|
+static const struct imx477_reg link_462Mhz_regs[] = {
|
|
+ {0x030E, 0x00},
|
|
+ {0x030F, 0x9a},
|
|
+};
|
|
+
|
|
+static const struct imx477_reg link_498Mhz_regs[] = {
|
|
+ {0x030E, 0x00},
|
|
+ {0x030F, 0xa6},
|
|
+};
|
|
+
|
|
static const struct imx477_reg_list link_freq_regs[] = {
|
|
[IMX477_LINK_FREQ_450MHZ] = {
|
|
.regs = link_450Mhz_regs,
|
|
@@ -206,6 +227,18 @@ static const struct imx477_reg_list link
|
|
.regs = link_456Mhz_regs,
|
|
.num_of_regs = ARRAY_SIZE(link_456Mhz_regs)
|
|
},
|
|
+ [IMX477_LINK_FREQ_459MHZ] = {
|
|
+ .regs = link_459Mhz_regs,
|
|
+ .num_of_regs = ARRAY_SIZE(link_459Mhz_regs)
|
|
+ },
|
|
+ [IMX477_LINK_FREQ_462MHZ] = {
|
|
+ .regs = link_462Mhz_regs,
|
|
+ .num_of_regs = ARRAY_SIZE(link_462Mhz_regs)
|
|
+ },
|
|
+ [IMX477_LINK_FREQ_498MHZ] = {
|
|
+ .regs = link_498Mhz_regs,
|
|
+ .num_of_regs = ARRAY_SIZE(link_498Mhz_regs)
|
|
+ },
|
|
};
|
|
|
|
static const struct imx477_reg mode_common_regs[] = {
|