openwrt/target/linux/bcm27xx/patches-6.6/950-1441-dtoverlays-Add-Arducam-override-for-ov9281.patch
Álvaro Fernández Rojas 3a5584e0df bcm27xx: pull 6.6 patches from RPi repo
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.67..HEAD
(HEAD -> 811ff707533bcd67cdcd368bbd46223082009b12)

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
(cherry picked from commit 692205305db14deeff1a2dc4a6d7f87e19fc418b)
2024-12-28 14:11:52 +01:00

56 lines
1.8 KiB
Diff

From 02dee262a9c7295ea514e9db7b9aa4b239922cb3 Mon Sep 17 00:00:00 2001
From: Dave Stevenson <dave.stevenson@raspberrypi.com>
Date: Mon, 2 Dec 2024 15:41:21 +0000
Subject: [PATCH] dtoverlays: Add Arducam override for ov9281
The Arducam module is slow starting up, so add an override
to slow the regulator down.
https://forums.raspberrypi.com/viewtopic.php?t=380236
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
---
arch/arm/boot/dts/overlays/README | 2 ++
arch/arm/boot/dts/overlays/ov9281-overlay.dts | 13 ++++++++++++-
2 files changed, 14 insertions(+), 1 deletion(-)
--- a/arch/arm/boot/dts/overlays/README
+++ b/arch/arm/boot/dts/overlays/README
@@ -3538,6 +3538,8 @@ Params: rotation Mounting
configuring the sensor (default on)
cam0 Adopt the default configuration for CAM0 on a
Compute Module (CSI0, i2c_vc, and cam0_reg).
+ arducam Slow down the regulator for slow Arducam
+ modules.
Name: papirus
--- a/arch/arm/boot/dts/overlays/ov9281-overlay.dts
+++ b/arch/arm/boot/dts/overlays/ov9281-overlay.dts
@@ -57,6 +57,14 @@
};
};
+ reg_frag: fragment@5 {
+ target = <&cam1_reg>;
+ __dormant__ {
+ startup-delay-us = <20000>;
+ off-on-delay-us = <30000>;
+ };
+ };
+
__overrides__ {
rotation = <&cam_node>,"rotation:0";
orientation = <&cam_node>,"orientation:0";
@@ -65,7 +73,10 @@
<&csi_frag>, "target:0=",<&csi0>,
<&clk_frag>, "target:0=",<&cam0_clk>,
<&cam_node>, "clocks:0=",<&cam0_clk>,
- <&cam_node>, "avdd-supply:0=",<&cam0_reg>;
+ <&cam_node>, "avdd-supply:0=",<&cam0_reg>,
+ <&reg_frag>, "target:0=",<&cam0_reg>;
+ arducam = <0>, "+5";
+
};
};