sunxi-6.12: Switching to v6.12.16. Re-export megous patches

This commit is contained in:
The-going 2025-02-23 17:00:55 +03:00 committed by Igor
parent 55c805ce9e
commit 7dad76f727
24 changed files with 148 additions and 148 deletions

View File

@ -36,7 +36,7 @@ case $BRANCH in
edge)
declare -g KERNEL_MAJOR_MINOR="6.12" # Major and minor versions of this kernel.
declare -g KERNELBRANCH="tag:v6.12.13"
declare -g KERNELBRANCH="tag:v6.12.16"
;;
esac

View File

@ -37,7 +37,7 @@ case $BRANCH in
edge)
declare -g KERNEL_MAJOR_MINOR="6.12" # Major and minor versions of this kernel.
declare -g KERNELBRANCH="tag:v6.12.13"
declare -g KERNELBRANCH="tag:v6.12.16"
;;
esac

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 657d4a240139087cf93d8880c9c87fd60cd0339d Mon Sep 17 00:00:00 2001
From: Ondrej Jirman <megi@xff.cz>
Date: Tue, 7 May 2024 18:39:12 +0200
Subject: Revert "usb: typec: tcpm: unregister existing source caps before
@ -10,10 +10,10 @@ This reverts commit 230ecdf71a644c9c73e0e6735b33173074ae3f94.
1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c
index 111111111111..222222222222 100644
index 48ddf2770461..cd97f1118e08 100644
--- a/drivers/usb/typec/tcpm/tcpm.c
+++ b/drivers/usb/typec/tcpm/tcpm.c
@@ -3005,7 +3005,7 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
@@ -3007,7 +3007,7 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
{
struct usb_power_delivery_desc desc = { port->negotiated_rev };
struct usb_power_delivery_capabilities_desc caps = { };
@ -22,7 +22,7 @@ index 111111111111..222222222222 100644
if (!port->partner_pd)
port->partner_pd = usb_power_delivery_register(NULL, &desc);
@@ -3015,11 +3015,6 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
@@ -3017,11 +3017,6 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
memcpy(caps.pdo, port->source_caps, sizeof(u32) * port->nr_source_caps);
caps.role = TYPEC_SOURCE;
@ -35,5 +35,5 @@ index 111111111111..222222222222 100644
if (IS_ERR(cap))
return PTR_ERR(cap);
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From f297df8dec806b120400d21b036681e8fe8f14aa Mon Sep 17 00:00:00 2001
From: Jernej Skrabec <jernej.skrabec@gmail.com>
Date: Sun, 9 May 2021 10:39:56 +0200
Subject: arm64: dts: allwinner: a64: Add hdmi sound card
@ -7,11 +7,11 @@ A64 supports HDMI audio. Add a sound card node for it.
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
---
arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 15 ++++++++++
arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
index 111111111111..222222222222 100644
index 0fecf0abb204..9a43bcc2f489 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
@@ -196,6 +196,20 @@ link0_codec: codec {
@ -35,7 +35,7 @@ index 111111111111..222222222222 100644
timer {
compatible = "arm,armv8-timer";
allwinner,erratum-unknown1;
@@ -1259,6 +1273,7 @@ deinterlace: deinterlace@1e00000 {
@@ -1261,6 +1275,7 @@ deinterlace: deinterlace@1e00000 {
};
hdmi: hdmi@1ee0000 {
@ -44,5 +44,5 @@ index 111111111111..222222222222 100644
"allwinner,sun8i-a83t-dw-hdmi";
reg = <0x01ee0000 0x10000>;
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From dc003fff9853d2fdd4b227fffa74c685f1245e41 Mon Sep 17 00:00:00 2001
From: Icenowy Zheng <icenowy@aosc.io>
Date: Sun, 30 Jun 2019 22:45:34 +0800
Subject: arm64: dts: allwinner: a64: Fix LRADC compatible
@ -15,10 +15,10 @@ Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
index 111111111111..222222222222 100644
index d53a6f7e086a..c061387abe41 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
@@ -919,7 +919,7 @@ spdif: spdif@1c21000 {
@@ -921,7 +921,7 @@ spdif: spdif@1c21000 {
lradc: lradc@1c21800 {
compatible = "allwinner,sun50i-a64-lradc",
@ -28,5 +28,5 @@ index 111111111111..222222222222 100644
interrupt-parent = <&r_intc>;
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From b971f78b354d42ce6bd04a2cb0e624109d840832 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ond=C5=99ej=20Jirman?= <megi@xff.cz>
Date: Sat, 1 Feb 2020 23:41:18 +0100
Subject: arm64: dts: sun50i-a64: Set fifo-size for uarts
@ -11,10 +11,10 @@ Signed-off-by: Ondrej Jirman <megi@xff.cz>
1 file changed, 5 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
index 111111111111..222222222222 100644
index 9a43bcc2f489..d53a6f7e086a 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
@@ -1010,6 +1010,7 @@ uart0: serial@1c28000 {
@@ -1012,6 +1012,7 @@ uart0: serial@1c28000 {
interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>;
reg-shift = <2>;
reg-io-width = <4>;
@ -22,7 +22,7 @@ index 111111111111..222222222222 100644
clocks = <&ccu CLK_BUS_UART0>;
resets = <&ccu RST_BUS_UART0>;
status = "disabled";
@@ -1021,6 +1022,7 @@ uart1: serial@1c28400 {
@@ -1023,6 +1024,7 @@ uart1: serial@1c28400 {
interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
reg-shift = <2>;
reg-io-width = <4>;
@ -30,7 +30,7 @@ index 111111111111..222222222222 100644
clocks = <&ccu CLK_BUS_UART1>;
resets = <&ccu RST_BUS_UART1>;
status = "disabled";
@@ -1032,6 +1034,7 @@ uart2: serial@1c28800 {
@@ -1034,6 +1036,7 @@ uart2: serial@1c28800 {
interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
reg-shift = <2>;
reg-io-width = <4>;
@ -38,7 +38,7 @@ index 111111111111..222222222222 100644
clocks = <&ccu CLK_BUS_UART2>;
resets = <&ccu RST_BUS_UART2>;
status = "disabled";
@@ -1043,6 +1046,7 @@ uart3: serial@1c28c00 {
@@ -1045,6 +1048,7 @@ uart3: serial@1c28c00 {
interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
reg-shift = <2>;
reg-io-width = <4>;
@ -46,7 +46,7 @@ index 111111111111..222222222222 100644
clocks = <&ccu CLK_BUS_UART3>;
resets = <&ccu RST_BUS_UART3>;
status = "disabled";
@@ -1054,6 +1058,7 @@ uart4: serial@1c29000 {
@@ -1056,6 +1060,7 @@ uart4: serial@1c29000 {
interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
reg-shift = <2>;
reg-io-width = <4>;
@ -55,5 +55,5 @@ index 111111111111..222222222222 100644
resets = <&ccu RST_BUS_UART4>;
status = "disabled";
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 759d82cec7e69f734d67f6b5dc7493875d871d12 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ond=C5=99ej=20Jirman?= <megi@xff.cz>
Date: Mon, 14 Aug 2023 07:28:11 +0200
Subject: clk: sunxi-ng: sun50i-a64: Switch parent of MIPI-DSI to periph0(1x)
@ -9,11 +9,11 @@ and HDMI output at once.
Signed-off-by: Ondrej Jirman <megi@xff.cz>
---
drivers/clk/sunxi-ng/ccu-sun50i-a64.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
drivers/clk/sunxi-ng/ccu-sun50i-a64.c | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/drivers/clk/sunxi-ng/ccu-sun50i-a64.c b/drivers/clk/sunxi-ng/ccu-sun50i-a64.c
index 111111111111..222222222222 100644
index 801a716d806d..f535c427fbad 100644
--- a/drivers/clk/sunxi-ng/ccu-sun50i-a64.c
+++ b/drivers/clk/sunxi-ng/ccu-sun50i-a64.c
@@ -962,6 +962,8 @@ static struct ccu_mux_nb sun50i_a64_cpu_nb = {
@ -44,5 +44,5 @@ index 111111111111..222222222222 100644
ret = devm_sunxi_ccu_probe(&pdev->dev, reg, &sun50i_a64_ccu_desc);
if (ret)
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 9cecbf32cae8b640e7f338cfed6388471cb5e508 Mon Sep 17 00:00:00 2001
From: Frank Oltmanns <frank@oltmanns.dev>
Date: Sun, 10 Mar 2024 14:32:29 +0100
Subject: drm/sun4i: tcon: Support keeping dclk rate upon ancestor clock
@ -18,15 +18,15 @@ constraint.
Signed-off-by: Frank Oltmanns <frank@oltmanns.dev>
---
drivers/gpu/drm/sun4i/sun4i_tcon.c | 70 +++++++++-
drivers/gpu/drm/sun4i/sun4i_tcon.h | 12 ++
drivers/gpu/drm/sun4i/sun4i_tcon.c | 70 +++++++++++++++++++++++++++---
drivers/gpu/drm/sun4i/sun4i_tcon.h | 12 +++++
2 files changed, 76 insertions(+), 6 deletions(-)
diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.c b/drivers/gpu/drm/sun4i/sun4i_tcon.c
index 111111111111..222222222222 100644
index b78799dedf62..3675c87461e9 100644
--- a/drivers/gpu/drm/sun4i/sun4i_tcon.c
+++ b/drivers/gpu/drm/sun4i/sun4i_tcon.c
@@ -110,9 +110,11 @@ static void sun4i_tcon_channel_set_status(struct sun4i_tcon *tcon, int channel,
@@ -108,9 +108,11 @@ static void sun4i_tcon_channel_set_status(struct sun4i_tcon *tcon, int channel,
if (enabled) {
clk_prepare_enable(clk);
@ -40,7 +40,7 @@ index 111111111111..222222222222 100644
clk_disable_unprepare(clk);
}
}
@@ -373,6 +375,53 @@ static void sun4i_tcon0_mode_set_dithering(struct sun4i_tcon *tcon,
@@ -343,6 +345,53 @@ static void sun4i_tcon0_mode_set_dithering(struct sun4i_tcon *tcon,
regmap_write(tcon->regs, SUN4I_TCON_FRM_CTL_REG, val);
}
@ -94,7 +94,7 @@ index 111111111111..222222222222 100644
static void sun4i_tcon0_mode_set_cpu(struct sun4i_tcon *tcon,
const struct drm_encoder *encoder,
const struct drm_display_mode *mode)
@@ -390,8 +439,8 @@ static void sun4i_tcon0_mode_set_cpu(struct sun4i_tcon *tcon,
@@ -360,8 +409,8 @@ static void sun4i_tcon0_mode_set_cpu(struct sun4i_tcon *tcon,
*/
tcon->dclk_min_div = SUN6I_DSI_TCON_DIV;
tcon->dclk_max_div = SUN6I_DSI_TCON_DIV;
@ -105,7 +105,7 @@ index 111111111111..222222222222 100644
/* Set the resolution */
regmap_write(tcon->regs, SUN4I_TCON0_BASIC0_REG,
@@ -464,7 +513,7 @@ static void sun4i_tcon0_mode_set_lvds(struct sun4i_tcon *tcon,
@@ -434,7 +483,7 @@ static void sun4i_tcon0_mode_set_lvds(struct sun4i_tcon *tcon,
tcon->dclk_min_div = 7;
tcon->dclk_max_div = 7;
@ -114,7 +114,7 @@ index 111111111111..222222222222 100644
/* Set the resolution */
regmap_write(tcon->regs, SUN4I_TCON0_BASIC0_REG,
@@ -548,7 +597,7 @@ static void sun4i_tcon0_mode_set_rgb(struct sun4i_tcon *tcon,
@@ -518,7 +567,7 @@ static void sun4i_tcon0_mode_set_rgb(struct sun4i_tcon *tcon,
tcon->dclk_min_div = tcon->quirks->dclk_min_div;
tcon->dclk_max_div = 127;
@ -123,7 +123,7 @@ index 111111111111..222222222222 100644
/* Set the resolution */
regmap_write(tcon->regs, SUN4I_TCON0_BASIC0_REG,
@@ -1561,6 +1610,14 @@ static const struct sun4i_tcon_quirks sun8i_a33_quirks = {
@@ -1505,6 +1554,14 @@ static const struct sun4i_tcon_quirks sun8i_a33_quirks = {
.supports_lvds = true,
};
@ -138,7 +138,7 @@ index 111111111111..222222222222 100644
static const struct sun4i_tcon_quirks sun8i_a83t_lcd_quirks = {
.supports_lvds = true,
.has_channel_0 = true,
@@ -1619,6 +1676,7 @@ const struct of_device_id sun4i_tcon_of_table[] = {
@@ -1563,6 +1620,7 @@ const struct of_device_id sun4i_tcon_of_table[] = {
{ .compatible = "allwinner,sun9i-a80-tcon-tv", .data = &sun9i_a80_tcon_tv_quirks },
{ .compatible = "allwinner,sun20i-d1-tcon-lcd", .data = &sun20i_d1_lcd_quirks },
{ .compatible = "allwinner,sun20i-d1-tcon-tv", .data = &sun8i_r40_tv_quirks },
@ -147,10 +147,10 @@ index 111111111111..222222222222 100644
};
MODULE_DEVICE_TABLE(of, sun4i_tcon_of_table);
diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.h b/drivers/gpu/drm/sun4i/sun4i_tcon.h
index 111111111111..222222222222 100644
index fa23aa23fe4a..bd4abc90062b 100644
--- a/drivers/gpu/drm/sun4i/sun4i_tcon.h
+++ b/drivers/gpu/drm/sun4i/sun4i_tcon.h
@@ -250,6 +250,7 @@ struct sun4i_tcon_quirks {
@@ -243,6 +243,7 @@ struct sun4i_tcon_quirks {
bool needs_edp_reset; /* a80 edp reset needed for tcon0 access */
bool supports_lvds; /* Does the TCON support an LVDS output? */
bool polarity_in_ch0; /* some tcon1 channels have polarity bits in tcon0 pol register */
@ -158,7 +158,7 @@ index 111111111111..222222222222 100644
u8 dclk_min_div; /* minimum divider for TCON0 DCLK */
/* callback to handle tcon muxing options */
@@ -312,4 +313,15 @@ void sun4i_tcon_enable_gamma(struct sun4i_tcon *tcon, bool enable);
@@ -300,4 +301,15 @@ void sun4i_tcon_set_status(struct sun4i_tcon *crtc,
extern const struct of_device_id sun4i_tcon_of_table[];
@ -175,5 +175,5 @@ index 111111111111..222222222222 100644
+
#endif /* __SUN4I_TCON_H__ */
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 095327be94ec7f073433536d12a2fdd736bff74b Mon Sep 17 00:00:00 2001
From: Adam Pigg <adam@piggz.co.uk>
Date: Thu, 29 Dec 2022 11:10:41 +0000
Subject: media: ov5640: Add read-only property for vblank
@ -8,10 +8,10 @@ Subject: media: ov5640: Add read-only property for vblank
1 file changed, 1 insertion(+)
diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index 111111111111..222222222222 100644
index c8027858dae1..f4978f01561b 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -3845,6 +3845,7 @@ static int ov5640_init_controls(struct ov5640_dev *sensor)
@@ -3846,6 +3846,7 @@ static int ov5640_init_controls(struct ov5640_dev *sensor)
ctrls->pixel_rate->flags |= V4L2_CTRL_FLAG_READ_ONLY;
ctrls->link_freq->flags |= V4L2_CTRL_FLAG_READ_ONLY;
ctrls->hblank->flags |= V4L2_CTRL_FLAG_READ_ONLY;
@ -20,5 +20,5 @@ index 111111111111..222222222222 100644
ctrls->exposure->flags |= V4L2_CTRL_FLAG_VOLATILE;
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From a9604f06f950f28d2bf39052c81c580ddbc59233 Mon Sep 17 00:00:00 2001
From: Ondrej Jirman <megi@xff.cz>
Date: Wed, 8 Nov 2023 19:13:37 +0100
Subject: media: ov5640: Don't powerup the sensor during driver probe
@ -9,14 +9,14 @@ pipeline via s_power callback, later on.
Signed-off-by: Ondrej Jirman <megi@xff.cz>
---
drivers/media/i2c/ov5640.c | 55 ++--------
drivers/media/i2c/ov5640.c | 55 +++++++++-----------------------------
1 file changed, 12 insertions(+), 43 deletions(-)
diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index 111111111111..222222222222 100644
index cf2241afe946..7e908f265840 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -2496,6 +2496,7 @@ static void ov5640_powerup_sequence(struct ov5640_dev *sensor)
@@ -2497,6 +2497,7 @@ static void ov5640_powerup_sequence(struct ov5640_dev *sensor)
static int ov5640_set_power_on(struct ov5640_dev *sensor)
{
struct i2c_client *client = sensor->i2c_client;
@ -24,7 +24,7 @@ index 111111111111..222222222222 100644
int ret;
ret = clk_prepare_enable(sensor->xclk);
@@ -2519,6 +2520,13 @@ static int ov5640_set_power_on(struct ov5640_dev *sensor)
@@ -2520,6 +2521,13 @@ static int ov5640_set_power_on(struct ov5640_dev *sensor)
if (ret)
goto power_off;
@ -38,7 +38,7 @@ index 111111111111..222222222222 100644
return 0;
power_off:
@@ -3840,28 +3848,6 @@ static int ov5640_get_regulators(struct ov5640_dev *sensor)
@@ -3841,28 +3849,6 @@ static int ov5640_get_regulators(struct ov5640_dev *sensor)
sensor->supplies);
}
@ -67,7 +67,7 @@ index 111111111111..222222222222 100644
static int ov5640_probe(struct i2c_client *client)
{
struct device *dev = &client->dev;
@@ -3962,35 +3948,16 @@ static int ov5640_probe(struct i2c_client *client)
@@ -3963,35 +3949,16 @@ static int ov5640_probe(struct i2c_client *client)
if (ret)
goto entity_cleanup;
@ -105,7 +105,7 @@ index 111111111111..222222222222 100644
free_ctrls:
v4l2_ctrl_handler_free(&sensor->ctrls.handler);
entity_cleanup:
@@ -4005,6 +3972,8 @@ static void ov5640_remove(struct i2c_client *client)
@@ -4006,6 +3973,8 @@ static void ov5640_remove(struct i2c_client *client)
struct ov5640_dev *sensor = to_ov5640_dev(sd);
struct device *dev = &client->dev;
@ -115,5 +115,5 @@ index 111111111111..222222222222 100644
if (!pm_runtime_status_suspended(dev))
ov5640_sensor_suspend(dev);
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 498b47b5a0bbfbc0905c2176787753a77c3bea38 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ond=C5=99ej=20Jirman?= <megi@xff.cz>
Date: Fri, 24 Jan 2020 18:25:59 +0100
Subject: media: ov5640: [Experiment] Try to disable denoising/sharpening
@ -7,14 +7,14 @@ Not sure how this works exactly. More tests are needed.
Signed-off-by: Ondrej Jirman <megi@xff.cz>
---
drivers/media/i2c/ov5640.c | 17 ++++++++++
drivers/media/i2c/ov5640.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index 111111111111..222222222222 100644
index 8566bc2edde9..91d23100175f 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -2326,6 +2326,7 @@ static int ov5640_set_mode(struct ov5640_dev *sensor)
@@ -2327,6 +2327,7 @@ static int ov5640_set_mode(struct ov5640_dev *sensor)
bool auto_gain = sensor->ctrls.auto_gain->val == 1;
bool auto_exp = sensor->ctrls.auto_exp->val == V4L2_EXPOSURE_AUTO;
int ret;
@ -22,7 +22,7 @@ index 111111111111..222222222222 100644
dn_mode = mode->dn_mode;
orig_dn_mode = orig_mode->dn_mode;
@@ -2389,6 +2390,22 @@ static int ov5640_set_mode(struct ov5640_dev *sensor)
@@ -2390,6 +2391,22 @@ static int ov5640_set_mode(struct ov5640_dev *sensor)
if (ret < 0)
return ret;
@ -46,5 +46,5 @@ index 111111111111..222222222222 100644
sensor->last_mode = mode;
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 2b1cc4e13f004fbaffa1c435f5f375b4b7bcefcc Mon Sep 17 00:00:00 2001
From: Benjamin Schaaf <ben.schaaf@gmail.com>
Date: Mon, 22 Nov 2021 23:38:26 +1100
Subject: media: ov5640: Fix focus commands blocking until complete
@ -6,14 +6,14 @@ Subject: media: ov5640: Fix focus commands blocking until complete
Previously setting the focus controls would block until the sensor
completed the focus routine.
---
drivers/media/i2c/ov5640.c | 67 +++-------
drivers/media/i2c/ov5640.c | 67 ++++++++++----------------------------
1 file changed, 18 insertions(+), 49 deletions(-)
diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index 111111111111..222222222222 100644
index 224e647b8d70..c8027858dae1 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -2642,6 +2642,19 @@ static int ov5640_copy_fw_to_device(struct ov5640_dev *sensor,
@@ -2643,6 +2643,19 @@ static int ov5640_copy_fw_to_device(struct ov5640_dev *sensor,
return -ETIMEDOUT;
}
@ -33,7 +33,7 @@ index 111111111111..222222222222 100644
static int ov5640_af_init(struct ov5640_dev *sensor)
{
struct i2c_client *client = sensor->i2c_client;
@@ -2679,6 +2692,11 @@ static int ov5640_af_init(struct ov5640_dev *sensor)
@@ -2680,6 +2693,11 @@ static int ov5640_af_init(struct ov5640_dev *sensor)
// Set lens focus driver on
ret = ov5640_write_reg(sensor, OV5640_REG_VCM_CONTROL4, 0x3f);
@ -45,7 +45,7 @@ index 111111111111..222222222222 100644
if (ret)
return ret;
return ret;
@@ -3303,35 +3321,6 @@ static int ov5640_set_framefmt(struct ov5640_dev *sensor,
@@ -3304,35 +3322,6 @@ static int ov5640_set_framefmt(struct ov5640_dev *sensor,
is_jpeg ? (BIT(5) | BIT(3)) : 0);
}
@ -81,7 +81,7 @@ index 111111111111..222222222222 100644
/*
* Sensor Controls.
*/
@@ -3467,26 +3456,6 @@ static int ov5640_set_ctrl_focus(struct ov5640_dev *sensor, int command)
@@ -3468,26 +3457,6 @@ static int ov5640_set_ctrl_focus(struct ov5640_dev *sensor, int command)
return 0;
}
@ -109,5 +109,5 @@ index 111111111111..222222222222 100644
}
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 2a5bd544eb813e6bb6ad9134f3212707f16ed160 Mon Sep 17 00:00:00 2001
From: Ondrej Jirman <megi@xff.cz>
Date: Sun, 7 Aug 2022 15:17:09 +0200
Subject: media: ov5640: Implement autofocus
@ -11,11 +11,11 @@ this at least makes it possible to focus on the center of the sensor.
Signed-off-by: Martijn Braam <martijn@brixit.nl>
---
drivers/media/i2c/ov5640.c | 279 ++++++++++
drivers/media/i2c/ov5640.c | 279 +++++++++++++++++++++++++++++++++++++
1 file changed, 279 insertions(+)
diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index 111111111111..222222222222 100644
index 24f755e3ca56..eee2dbf70a0b 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -9,6 +9,7 @@
@ -87,7 +87,7 @@ index 111111111111..222222222222 100644
};
static inline struct ov5640_dev *to_ov5640_dev(struct v4l2_subdev *sd)
@@ -2493,6 +2534,118 @@ static void ov5640_powerup_sequence(struct ov5640_dev *sensor)
@@ -2494,6 +2535,118 @@ static void ov5640_powerup_sequence(struct ov5640_dev *sensor)
OV5640_REG_SYS_CTRL0_SW_PWDN);
}
@ -206,7 +206,7 @@ index 111111111111..222222222222 100644
static int ov5640_set_power_on(struct ov5640_dev *sensor)
{
struct i2c_client *client = sensor->i2c_client;
@@ -2514,8 +2667,11 @@ static int ov5640_set_power_on(struct ov5640_dev *sensor)
@@ -2515,8 +2668,11 @@ static int ov5640_set_power_on(struct ov5640_dev *sensor)
goto xclk_off;
}
@ -218,7 +218,7 @@ index 111111111111..222222222222 100644
ret = ov5640_init_slave_id(sensor);
if (ret)
goto power_off;
@@ -3109,6 +3265,35 @@ static int ov5640_set_framefmt(struct ov5640_dev *sensor,
@@ -3110,6 +3266,35 @@ static int ov5640_set_framefmt(struct ov5640_dev *sensor,
is_jpeg ? (BIT(5) | BIT(3)) : 0);
}
@ -254,7 +254,7 @@ index 111111111111..222222222222 100644
/*
* Sensor Controls.
*/
@@ -3225,6 +3410,41 @@ static int ov5640_set_ctrl_exposure(struct ov5640_dev *sensor,
@@ -3226,6 +3411,41 @@ static int ov5640_set_ctrl_exposure(struct ov5640_dev *sensor,
return ret;
}
@ -296,7 +296,7 @@ index 111111111111..222222222222 100644
static int ov5640_set_ctrl_gain(struct ov5640_dev *sensor, bool auto_gain)
{
struct ov5640_ctrls *ctrls = &sensor->ctrls;
@@ -3340,6 +3560,32 @@ static int ov5640_set_ctrl_vblank(struct ov5640_dev *sensor, int value)
@@ -3341,6 +3561,32 @@ static int ov5640_set_ctrl_vblank(struct ov5640_dev *sensor, int value)
mode->height + value);
}
@ -329,7 +329,7 @@ index 111111111111..222222222222 100644
static int ov5640_g_volatile_ctrl(struct v4l2_ctrl *ctrl)
{
struct v4l2_subdev *sd = ctrl_to_sd(ctrl);
@@ -3364,6 +3610,12 @@ static int ov5640_g_volatile_ctrl(struct v4l2_ctrl *ctrl)
@@ -3365,6 +3611,12 @@ static int ov5640_g_volatile_ctrl(struct v4l2_ctrl *ctrl)
return val;
sensor->ctrls.exposure->val = val;
break;
@ -342,7 +342,7 @@ index 111111111111..222222222222 100644
}
pm_runtime_mark_last_busy(&sensor->i2c_client->dev);
@@ -3413,6 +3665,18 @@ static int ov5640_s_ctrl(struct v4l2_ctrl *ctrl)
@@ -3414,6 +3666,18 @@ static int ov5640_s_ctrl(struct v4l2_ctrl *ctrl)
case V4L2_CID_AUTO_WHITE_BALANCE:
ret = ov5640_set_ctrl_white_balance(sensor, ctrl->val);
break;
@ -361,7 +361,7 @@ index 111111111111..222222222222 100644
case V4L2_CID_HUE:
ret = ov5640_set_ctrl_hue(sensor, ctrl->val);
break;
@@ -3513,6 +3777,20 @@ static int ov5640_init_controls(struct ov5640_dev *sensor)
@@ -3514,6 +3778,20 @@ static int ov5640_init_controls(struct ov5640_dev *sensor)
ctrls->gain = v4l2_ctrl_new_std(hdl, ops, V4L2_CID_ANALOGUE_GAIN,
0, 1023, 1, 0);
@ -382,7 +382,7 @@ index 111111111111..222222222222 100644
ctrls->saturation = v4l2_ctrl_new_std(hdl, ops, V4L2_CID_SATURATION,
0, 255, 1, 64);
ctrls->hue = v4l2_ctrl_new_std(hdl, ops, V4L2_CID_HUE,
@@ -3559,6 +3837,7 @@ static int ov5640_init_controls(struct ov5640_dev *sensor)
@@ -3560,6 +3838,7 @@ static int ov5640_init_controls(struct ov5640_dev *sensor)
v4l2_ctrl_auto_cluster(3, &ctrls->auto_wb, 0, false);
v4l2_ctrl_auto_cluster(2, &ctrls->auto_gain, 0, true);
v4l2_ctrl_auto_cluster(2, &ctrls->auto_exp, 1, true);
@ -391,5 +391,5 @@ index 111111111111..222222222222 100644
sensor->sd.ctrl_handler = hdl;
return 0;
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 9265f21865eb7172385d286593b5a8df93aa396c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ond=C5=99ej=20Jirman?= <megi@xff.cz>
Date: Fri, 22 Oct 2021 19:52:49 +0200
Subject: media: ov5640: Improve error reporting
@ -11,10 +11,10 @@ Signed-off-by: Ondrej Jirman <megi@xff.cz>
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index 111111111111..222222222222 100644
index cdab9b224117..24f755e3ca56 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -3939,8 +3939,10 @@ static int ov5640_probe(struct i2c_client *client)
@@ -3940,8 +3940,10 @@ static int ov5640_probe(struct i2c_client *client)
return ret;
ret = ov5640_get_regulators(sensor);
@ -26,7 +26,7 @@ index 111111111111..222222222222 100644
mutex_init(&sensor->lock);
@@ -3949,8 +3951,10 @@ static int ov5640_probe(struct i2c_client *client)
@@ -3950,8 +3952,10 @@ static int ov5640_probe(struct i2c_client *client)
goto entity_cleanup;
ret = v4l2_async_register_subdev_sensor(&sensor->sd);
@ -39,5 +39,5 @@ index 111111111111..222222222222 100644
pm_runtime_enable(dev);
pm_runtime_set_autosuspend_delay(dev, 1000);
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 08e78eb0f39b436ef8d214bfda27fa2e320d103d Mon Sep 17 00:00:00 2001
From: Benjamin Schaaf <ben.schaaf@gmail.com>
Date: Mon, 22 Nov 2021 23:38:26 +1100
Subject: media: ov5640: Improve firmware load time
@ -9,11 +9,11 @@ loading it, so there's no need for a long timeout or retry. The
firmware can also not be loaded when the sensor isn't powered on, so
don't bother trying.
---
drivers/media/i2c/ov5640.c | 97 +++++++---
drivers/media/i2c/ov5640.c | 97 ++++++++++++++++++++++++++++----------
1 file changed, 71 insertions(+), 26 deletions(-)
diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index 111111111111..222222222222 100644
index eee2dbf70a0b..224e647b8d70 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -1232,6 +1232,8 @@ static int ov5640_write_reg(struct ov5640_dev *sensor, u16 reg, u8 val)
@ -68,7 +68,7 @@ index 111111111111..222222222222 100644
static int ov5640_read_reg(struct ov5640_dev *sensor, u16 reg, u8 *val)
{
struct i2c_client *client = sensor->i2c_client;
@@ -2542,6 +2580,7 @@ static int ov5640_copy_fw_to_device(struct ov5640_dev *sensor,
@@ -2543,6 +2581,7 @@ static int ov5640_copy_fw_to_device(struct ov5640_dev *sensor,
u8 fw_status;
int i;
int ret;
@ -76,7 +76,7 @@ index 111111111111..222222222222 100644
// Putting MCU in reset state
ret = ov5640_write_reg(sensor, OV5640_REG_SYS_RESET00, 0x20);
@@ -2549,10 +2588,24 @@ static int ov5640_copy_fw_to_device(struct ov5640_dev *sensor,
@@ -2550,10 +2589,24 @@ static int ov5640_copy_fw_to_device(struct ov5640_dev *sensor,
return ret;
// Write firmware
@ -105,7 +105,7 @@ index 111111111111..222222222222 100644
// Reset MCU state
ov5640_write_reg(sensor, OV5640_REG_FW_CMD_MAIN, 0x00);
@@ -2574,31 +2627,17 @@ static int ov5640_copy_fw_to_device(struct ov5640_dev *sensor,
@@ -2575,31 +2628,17 @@ static int ov5640_copy_fw_to_device(struct ov5640_dev *sensor,
// Wait for firmware to be ready
for (i = 0; i < 5; i++) {
ret = ov5640_read_reg(sensor, OV5640_REG_FW_STATUS, &fw_status);
@ -142,7 +142,7 @@ index 111111111111..222222222222 100644
dev_err(&client->dev, "uploaded firmware didn't start, got to 0x%x\n", fw_status);
return -ETIMEDOUT;
}
@@ -2639,10 +2678,9 @@ static int ov5640_af_init(struct ov5640_dev *sensor)
@@ -2640,10 +2679,9 @@ static int ov5640_af_init(struct ov5640_dev *sensor)
return ret;
// Set lens focus driver on
@ -154,7 +154,7 @@ index 111111111111..222222222222 100644
return ret;
}
@@ -3415,9 +3453,16 @@ static int ov5640_set_ctrl_focus(struct ov5640_dev *sensor, int command)
@@ -3416,9 +3454,16 @@ static int ov5640_set_ctrl_focus(struct ov5640_dev *sensor, int command)
struct i2c_client *client = sensor->i2c_client;
int ret;
@ -173,5 +173,5 @@ index 111111111111..222222222222 100644
return 0;
}
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From d407d2eef61a416de7c829285959086f168addaf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ond=C5=99ej=20Jirman?= <megi@xff.cz>
Date: Sun, 26 Jan 2020 00:19:40 +0100
Subject: media: ov5640: Sleep after poweroff to ensure next poweron is not too
@ -13,10 +13,10 @@ Signed-off-by: Ondrej Jirman <megi@xff.cz>
1 file changed, 1 insertion(+)
diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index 111111111111..222222222222 100644
index 91d23100175f..cf2241afe946 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -2534,6 +2534,7 @@ static void ov5640_set_power_off(struct ov5640_dev *sensor)
@@ -2535,6 +2535,7 @@ static void ov5640_set_power_off(struct ov5640_dev *sensor)
ov5640_power(sensor, false);
regulator_bulk_disable(OV5640_NUM_SUPPLIES, sensor->supplies);
clk_disable_unprepare(sensor->xclk);
@ -25,5 +25,5 @@ index 111111111111..222222222222 100644
static int ov5640_set_power_mipi(struct ov5640_dev *sensor, bool on)
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 40e1749a62e323fb0fbd724bc864b0f18f5e956e Mon Sep 17 00:00:00 2001
From: Martijn Braam <martijn@brixit.nl>
Date: Wed, 7 Oct 2020 17:33:43 +0200
Subject: media: ov5640: set default ae target lower
@ -10,10 +10,10 @@ the exposure target one stop lower.
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index 111111111111..222222222222 100644
index 7e908f265840..cdab9b224117 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -3874,7 +3874,7 @@ static int ov5640_probe(struct i2c_client *client)
@@ -3875,7 +3875,7 @@ static int ov5640_probe(struct i2c_client *client)
sensor->current_link_freq =
ov5640_csi2_link_freqs[OV5640_DEFAULT_LINK_FREQ];
@ -23,5 +23,5 @@ index 111111111111..222222222222 100644
endpoint = fwnode_graph_get_next_endpoint(dev_fwnode(&client->dev),
NULL);
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 2c90f6e4bd9028ef95251c3c096590a73c3af4a7 Mon Sep 17 00:00:00 2001
From: Andrey Skvortsov <andrej.skvortzov@gmail.com>
Date: Mon, 14 Aug 2023 13:25:07 +0300
Subject: media: ov5640: use pm_runtime_force_suspend/resume for system suspend
@ -14,10 +14,10 @@ Signed-off-by: Andrey Skvortsov <andrej.skvortzov@gmail.com>
1 file changed, 2 insertions(+)
diff --git a/drivers/media/i2c/ov5640.c b/drivers/media/i2c/ov5640.c
index 111111111111..222222222222 100644
index f4978f01561b..208188bfbc2a 100644
--- a/drivers/media/i2c/ov5640.c
+++ b/drivers/media/i2c/ov5640.c
@@ -4284,6 +4284,8 @@ static void ov5640_remove(struct i2c_client *client)
@@ -4285,6 +4285,8 @@ static void ov5640_remove(struct i2c_client *client)
}
static const struct dev_pm_ops ov5640_pm_ops = {
@ -27,5 +27,5 @@ index 111111111111..222222222222 100644
};
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From efd23643c03f1cbc06617053b2557da4abf0986a Mon Sep 17 00:00:00 2001
From: Ondrej Jirman <megi@xff.cz>
Date: Sat, 29 Oct 2022 23:16:51 +0200
Subject: opp: core: Avoid confusing error when no regulator is defined in DT
@ -11,10 +11,10 @@ Signed-off-by: Ondrej Jirman <megi@xff.cz>
1 file changed, 5 insertions(+)
diff --git a/drivers/opp/core.c b/drivers/opp/core.c
index 111111111111..222222222222 100644
index 5ac209472c0c..22b3eb5f920e 100644
--- a/drivers/opp/core.c
+++ b/drivers/opp/core.c
@@ -2185,6 +2185,11 @@ static int _opp_set_regulators(struct opp_table *opp_table, struct device *dev,
@@ -2208,6 +2208,11 @@ static int _opp_set_regulators(struct opp_table *opp_table, struct device *dev,
for (i = 0; i < count; i++) {
reg = regulator_get_optional(dev, names[i]);
if (IS_ERR(reg)) {
@ -27,5 +27,5 @@ index 111111111111..222222222222 100644
"%s: no regulator (%s) found\n",
__func__, names[i]);
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 9a22ce84407bb36e04d83d0ea5d5f624b80e2f14 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ond=C5=99ej=20Jirman?= <megi@xff.cz>
Date: Mon, 2 Sep 2019 14:51:17 +0200
Subject: sunxi: Use dev_err_probe to handle EPROBE_DEFER errors
@ -9,13 +9,13 @@ Signed-off-by: Ondrej Jirman <megi@xff.cz>
---
arch/arm/kernel/topology.c | 2 +-
drivers/gpu/drm/panel/panel-sitronix-st7703.c | 2 +-
drivers/i2c/busses/i2c-gpio.c | 11 +++++--
drivers/phy/allwinner/phy-sun4i-usb.c | 16 ++++++----
drivers/phy/allwinner/phy-sun6i-mipi-dphy.c | 6 ++--
drivers/i2c/busses/i2c-gpio.c | 11 +++++++++--
drivers/phy/allwinner/phy-sun4i-usb.c | 16 ++++++++++------
drivers/phy/allwinner/phy-sun6i-mipi-dphy.c | 6 ++++--
5 files changed, 25 insertions(+), 12 deletions(-)
diff --git a/arch/arm/kernel/topology.c b/arch/arm/kernel/topology.c
index 111111111111..222222222222 100644
index 2336ee2aa44a..20efde3cb1c2 100644
--- a/arch/arm/kernel/topology.c
+++ b/arch/arm/kernel/topology.c
@@ -121,7 +121,7 @@ static void __init parse_dt_topology(void)
@ -28,10 +28,10 @@ index 111111111111..222222222222 100644
}
diff --git a/drivers/gpu/drm/panel/panel-sitronix-st7703.c b/drivers/gpu/drm/panel/panel-sitronix-st7703.c
index 111111111111..222222222222 100644
index 6d3ad83be141..18afc2aff29c 100644
--- a/drivers/gpu/drm/panel/panel-sitronix-st7703.c
+++ b/drivers/gpu/drm/panel/panel-sitronix-st7703.c
@@ -904,7 +904,7 @@ static int st7703_probe(struct mipi_dsi_device *dsi)
@@ -887,7 +887,7 @@ static int st7703_probe(struct mipi_dsi_device *dsi)
ret = mipi_dsi_attach(dsi);
if (ret < 0) {
@ -41,7 +41,7 @@ index 111111111111..222222222222 100644
return ret;
}
diff --git a/drivers/i2c/busses/i2c-gpio.c b/drivers/i2c/busses/i2c-gpio.c
index 111111111111..222222222222 100644
index e0bd218e2f14..f8d53bf37944 100644
--- a/drivers/i2c/busses/i2c-gpio.c
+++ b/drivers/i2c/busses/i2c-gpio.c
@@ -314,6 +314,13 @@ static struct gpio_desc *i2c_gpio_get_desc(struct device *dev,
@ -70,7 +70,7 @@ index 111111111111..222222222222 100644
return retdesc;
}
diff --git a/drivers/phy/allwinner/phy-sun4i-usb.c b/drivers/phy/allwinner/phy-sun4i-usb.c
index 111111111111..222222222222 100644
index 9b6b68eb00f8..be63d60ce738 100644
--- a/drivers/phy/allwinner/phy-sun4i-usb.c
+++ b/drivers/phy/allwinner/phy-sun4i-usb.c
@@ -775,14 +775,16 @@ static int sun4i_usb_phy_probe(struct platform_device *pdev)
@ -124,10 +124,10 @@ index 111111111111..222222222222 100644
}
diff --git a/drivers/phy/allwinner/phy-sun6i-mipi-dphy.c b/drivers/phy/allwinner/phy-sun6i-mipi-dphy.c
index 111111111111..222222222222 100644
index 36eab95271b2..f83df7554aac 100644
--- a/drivers/phy/allwinner/phy-sun6i-mipi-dphy.c
+++ b/drivers/phy/allwinner/phy-sun6i-mipi-dphy.c
@@ -584,13 +584,15 @@ static int sun6i_dphy_probe(struct platform_device *pdev)
@@ -570,13 +570,15 @@ static int sun6i_dphy_probe(struct platform_device *pdev)
dphy->regs = devm_regmap_init_mmio_clk(&pdev->dev, "bus",
regs, &sun6i_dphy_regmap_config);
if (IS_ERR(dphy->regs)) {
@ -146,5 +146,5 @@ index 111111111111..222222222222 100644
}
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From c4b98967269c353f88e5544988bad6468febd286 Mon Sep 17 00:00:00 2001
From e1f725426dfc3eb2d91a7f4eaf581933ae5e9108 Mon Sep 17 00:00:00 2001
From: Thomas Thorne <Thomas.Thorne@Net2Edge.com>
Date: Tue, 20 Sep 2022 20:34:57 -0400
Subject: usb: serial: option: add 'reset_resume' callback for WWAN devices
@ -17,10 +17,10 @@ However the rest of the patch is not needed/already upstreamed.
1 file changed, 1 insertion(+)
diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
index 1e2ae0c6c41c..8ab87dfae501 100644
index 58bd54e8c483..09b9c19a5178 100644
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
@@ -2446,6 +2446,7 @@ static struct usb_serial_driver option_1port_device = {
@@ -2455,6 +2455,7 @@ static struct usb_serial_driver option_1port_device = {
#ifdef CONFIG_PM
.suspend = usb_wwan_suspend,
.resume = usb_wwan_resume,

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 21a742946daac1bf85354aa3ca7591fddf02d4d3 Mon Sep 17 00:00:00 2001
From: Ondrej Jirman <megi@xff.cz>
Date: Sat, 18 Feb 2023 00:38:44 +0100
Subject: usb: typec: tcpm: Fix PD devices/capabilities registration
@ -11,14 +11,14 @@ Fixes "sysfs: cannot create duplicate filename
Signed-off-by: Ondrej Jirman <megi@xff.cz>
---
drivers/usb/typec/tcpm/tcpm.c | 37 ++++++++--
drivers/usb/typec/tcpm/tcpm.c | 37 +++++++++++++++++++++++++++--------
1 file changed, 29 insertions(+), 8 deletions(-)
diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c
index 111111111111..222222222222 100644
index cd6ce4392490..7b8741dff63d 100644
--- a/drivers/usb/typec/tcpm/tcpm.c
+++ b/drivers/usb/typec/tcpm/tcpm.c
@@ -3009,15 +3009,22 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
@@ -3011,15 +3011,22 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
struct usb_power_delivery_desc desc = { port->negotiated_rev };
struct usb_power_delivery_capabilities_desc caps = { };
struct usb_power_delivery_capabilities *cap;
@ -45,7 +45,7 @@ index 111111111111..222222222222 100644
cap = usb_power_delivery_register_capabilities(port->partner_pd, &caps);
if (IS_ERR(cap))
return PTR_ERR(cap);
@@ -3032,15 +3039,22 @@ static int tcpm_register_sink_caps(struct tcpm_port *port)
@@ -3034,15 +3041,22 @@ static int tcpm_register_sink_caps(struct tcpm_port *port)
struct usb_power_delivery_desc desc = { port->negotiated_rev };
struct usb_power_delivery_capabilities_desc caps = { };
struct usb_power_delivery_capabilities *cap;
@ -72,7 +72,7 @@ index 111111111111..222222222222 100644
cap = usb_power_delivery_register_capabilities(port->partner_pd, &caps);
if (IS_ERR(cap))
return PTR_ERR(cap);
@@ -7019,10 +7033,17 @@ static int tcpm_port_register_pd(struct tcpm_port *port)
@@ -7021,10 +7035,17 @@ static int tcpm_port_register_pd(struct tcpm_port *port)
port->pds[i] = usb_power_delivery_register(port->dev, &desc);
if (IS_ERR(port->pds[i])) {
ret = PTR_ERR(port->pds[i]);
@ -91,5 +91,5 @@ index 111111111111..222222222222 100644
cap = usb_power_delivery_register_capabilities(port->pds[i],
&port->pd_list[i]->source_desc);
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From 8570cf87270150be076f51ab0868c082949182b7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ond=C5=99ej=20Jirman?= <megi@xff.cz>
Date: Tue, 23 Nov 2021 17:58:05 +0100
Subject: usb: typec: tcpm: Improve logs
@ -7,11 +7,11 @@ This adds clarity to debugging.
Signed-off-by: Ondrej Jirman <megi@xff.cz>
---
drivers/usb/typec/tcpm/tcpm.c | 15 +++++++---
drivers/usb/typec/tcpm/tcpm.c | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c
index 111111111111..222222222222 100644
index 7b8741dff63d..627f10469f80 100644
--- a/drivers/usb/typec/tcpm/tcpm.c
+++ b/drivers/usb/typec/tcpm/tcpm.c
@@ -958,10 +958,13 @@ static int tcpm_pd_transmit(struct tcpm_port *port,
@ -30,7 +30,7 @@ index 111111111111..222222222222 100644
reinit_completion(&port->tx_complete);
ret = port->tcpc->pd_transmit(port->tcpc, tx_sop_type, msg, negotiated_rev);
@@ -3681,6 +3684,10 @@ void tcpm_pd_receive(struct tcpm_port *port, const struct pd_message *msg,
@@ -3683,6 +3686,10 @@ void tcpm_pd_receive(struct tcpm_port *port, const struct pd_message *msg,
enum tcpm_transmit_type rx_sop_type)
{
struct pd_rx_event *event;
@ -41,7 +41,7 @@ index 111111111111..222222222222 100644
event = kzalloc(sizeof(*event), GFP_ATOMIC);
if (!event)
@@ -5966,7 +5973,7 @@ static void _tcpm_cc_change(struct tcpm_port *port, enum typec_cc_status cc1,
@@ -5968,7 +5975,7 @@ static void _tcpm_cc_change(struct tcpm_port *port, enum typec_cc_status cc1,
static void _tcpm_pd_vbus_on(struct tcpm_port *port)
{
@ -50,7 +50,7 @@ index 111111111111..222222222222 100644
port->vbus_present = true;
/*
* When vbus_present is true i.e. Voltage at VBUS is greater than VSAFE5V implicitly
@@ -6056,7 +6063,7 @@ static void _tcpm_pd_vbus_on(struct tcpm_port *port)
@@ -6058,7 +6065,7 @@ static void _tcpm_pd_vbus_on(struct tcpm_port *port)
static void _tcpm_pd_vbus_off(struct tcpm_port *port)
{
@ -60,5 +60,5 @@ index 111111111111..222222222222 100644
port->vbus_never_low = false;
switch (port->state) {
--
Armbian
2.35.3

View File

@ -1,4 +1,4 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From c8980261ed458d058974d7966f5d058cc7be2dfe Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ond=C5=99ej=20Jirman?= <megi@xff.cz>
Date: Mon, 7 Jun 2021 20:27:07 +0200
Subject: video: pwm_bl: Allow to change lth_brightness via sysfs
@ -21,11 +21,11 @@ Then make sure to restore this value after each boot by writing it to
Signed-off-by: Ondrej Jirman <megi@xff.cz>
---
drivers/video/backlight/pwm_bl.c | 72 +++++++++-
1 file changed, 70 insertions(+), 2 deletions(-)
drivers/video/backlight/pwm_bl.c | 97 +++++++++++++++++++++++++++++++-
1 file changed, 94 insertions(+), 3 deletions(-)
diff --git a/drivers/video/backlight/pwm_bl.c b/drivers/video/backlight/pwm_bl.c
index 111111111111..222222222222 100644
index e942908d1275..7a3ddc410c08 100644
--- a/drivers/video/backlight/pwm_bl.c
+++ b/drivers/video/backlight/pwm_bl.c
@@ -437,6 +437,61 @@ static int pwm_backlight_initial_power_state(const struct pwm_bl_data *pb)
@ -161,5 +161,5 @@ index 111111111111..222222222222 100644
platform_set_drvdata(pdev, bl);
--
Armbian
2.35.3