mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 15:32:33 +00:00
475 lines
11 KiB
Diff
475 lines
11 KiB
Diff
|
From f8b75a1bcdbf2b5cc591079cafad3b94cc74ff48 Mon Sep 17 00:00:00 2001
|
||
|
From: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||
|
Date: Sat, 20 Nov 2021 14:43:29 +0000
|
||
|
Subject: [PATCH] dtoverlays: Convert the camera sensor overlays to use
|
||
|
the new regs and clks.
|
||
|
|
||
|
Now that we have regulators and clocks defined in the base DT for
|
||
|
image sensors, switch the overlays to use them.
|
||
|
|
||
|
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||
|
---
|
||
|
arch/arm/boot/dts/overlays/imx219-overlay.dts | 40 ++++---------------
|
||
|
.../boot/dts/overlays/imx290_327-overlay.dtsi | 40 ++++---------------
|
||
|
.../boot/dts/overlays/imx477_378-overlay.dtsi | 31 +++-----------
|
||
|
arch/arm/boot/dts/overlays/imx519-overlay.dts | 38 +++---------------
|
||
|
arch/arm/boot/dts/overlays/ov5647-overlay.dts | 18 +++++----
|
||
|
arch/arm/boot/dts/overlays/ov7251-overlay.dts | 37 +++--------------
|
||
|
arch/arm/boot/dts/overlays/ov9281-overlay.dts | 39 ++++--------------
|
||
|
7 files changed, 50 insertions(+), 193 deletions(-)
|
||
|
|
||
|
--- a/arch/arm/boot/dts/overlays/imx219-overlay.dts
|
||
|
+++ b/arch/arm/boot/dts/overlays/imx219-overlay.dts
|
||
|
@@ -20,12 +20,12 @@
|
||
|
reg = <0x10>;
|
||
|
status = "okay";
|
||
|
|
||
|
- clocks = <&imx219_clk>;
|
||
|
+ clocks = <&cam1_clk>;
|
||
|
clock-names = "xclk";
|
||
|
|
||
|
VANA-supply = <&cam1_reg>; /* 2.8v */
|
||
|
- VDIG-supply = <&imx219_vdig>; /* 1.8v */
|
||
|
- VDDL-supply = <&imx219_vddl>; /* 1.2v */
|
||
|
+ VDIG-supply = <&cam_dummy_reg>; /* 1.8v */
|
||
|
+ VDDL-supply = <&cam_dummy_reg>; /* 1.2v */
|
||
|
|
||
|
rotation = <180>;
|
||
|
orientation = <2>;
|
||
|
@@ -68,26 +68,10 @@
|
||
|
};
|
||
|
|
||
|
fragment@3 {
|
||
|
- target-path="/";
|
||
|
+ target = <&cam1_clk>;
|
||
|
__overlay__ {
|
||
|
- imx219_vdig: fixedregulator@1 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "imx219_vdig";
|
||
|
- regulator-min-microvolt = <1800000>;
|
||
|
- regulator-max-microvolt = <1800000>;
|
||
|
- };
|
||
|
- imx219_vddl: fixedregulator@2 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "imx219_vddl";
|
||
|
- regulator-min-microvolt = <1200000>;
|
||
|
- regulator-max-microvolt = <1200000>;
|
||
|
- };
|
||
|
-
|
||
|
- imx219_clk: camera-clk {
|
||
|
- compatible = "fixed-clock";
|
||
|
- #clock-cells = <0>;
|
||
|
- clock-frequency = <24000000>;
|
||
|
- };
|
||
|
+ status = "okay";
|
||
|
+ clock-frequency = <24000000>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
@@ -99,16 +83,6 @@
|
||
|
};
|
||
|
|
||
|
fragment@5 {
|
||
|
- target = <&cam1_reg>;
|
||
|
- __overlay__ {
|
||
|
- status = "okay";
|
||
|
- regulator-name = "imx219_vana";
|
||
|
- regulator-min-microvolt = <2800000>;
|
||
|
- regulator-max-microvolt = <2800000>;
|
||
|
- };
|
||
|
- };
|
||
|
-
|
||
|
- fragment@6 {
|
||
|
target = <&csi1>;
|
||
|
__overlay__ {
|
||
|
brcm,media-controller;
|
||
|
@@ -118,6 +92,6 @@
|
||
|
__overrides__ {
|
||
|
rotation = <&imx219>,"rotation:0";
|
||
|
orientation = <&imx219>,"orientation:0";
|
||
|
- media-controller = <0>,"=6";
|
||
|
+ media-controller = <0>,"=5";
|
||
|
};
|
||
|
};
|
||
|
--- a/arch/arm/boot/dts/overlays/imx290_327-overlay.dtsi
|
||
|
+++ b/arch/arm/boot/dts/overlays/imx290_327-overlay.dtsi
|
||
|
@@ -20,7 +20,7 @@
|
||
|
reg = <0x1a>;
|
||
|
status = "okay";
|
||
|
|
||
|
- clocks = <&imx290_clk>;
|
||
|
+ clocks = <&cam1_clk>;
|
||
|
clock-names = "xclk";
|
||
|
clock-frequency = <37125000>;
|
||
|
|
||
|
@@ -28,8 +28,8 @@
|
||
|
orientation = <2>;
|
||
|
|
||
|
vdda-supply = <&cam1_reg>; /* 2.8v */
|
||
|
- vdddo-supply = <&imx290_vdddo>; /* 1.8v */
|
||
|
- vddd-supply = <&imx290_vddd>; /* 1.5v */
|
||
|
+ vdddo-supply = <&cam_dummy_reg>; /* 1.8v */
|
||
|
+ vddd-supply = <&cam_dummy_reg>; /* 1.5v */
|
||
|
|
||
|
port {
|
||
|
imx290_0: endpoint {
|
||
|
@@ -62,26 +62,10 @@
|
||
|
};
|
||
|
|
||
|
fragment@3 {
|
||
|
- target-path="/";
|
||
|
+ target = <&cam1_clk>;
|
||
|
__overlay__ {
|
||
|
- imx290_vdddo: fixedregulator@1 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "imx290_vdddo";
|
||
|
- regulator-min-microvolt = <1800000>;
|
||
|
- regulator-max-microvolt = <1800000>;
|
||
|
- };
|
||
|
- imx290_vddd: fixedregulator@2 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "imx290_vddd";
|
||
|
- regulator-min-microvolt = <1500000>;
|
||
|
- regulator-max-microvolt = <1500000>;
|
||
|
- };
|
||
|
-
|
||
|
- imx290_clk: camera-clk {
|
||
|
- compatible = "fixed-clock";
|
||
|
- #clock-cells = <0>;
|
||
|
- clock-frequency = <37125000>;
|
||
|
- };
|
||
|
+ status = "okay";
|
||
|
+ clock-frequency = <37125000>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
@@ -92,16 +76,6 @@
|
||
|
};
|
||
|
};
|
||
|
|
||
|
- fragment@5 {
|
||
|
- target = <&cam1_reg>;
|
||
|
- __overlay__ {
|
||
|
- status = "okay";
|
||
|
- regulator-name = "imx290_vdda";
|
||
|
- regulator-min-microvolt = <2800000>;
|
||
|
- regulator-max-microvolt = <2800000>;
|
||
|
- };
|
||
|
- };
|
||
|
-
|
||
|
fragment@6 {
|
||
|
target = <&imx290_0>;
|
||
|
__overlay__ {
|
||
|
@@ -143,7 +117,7 @@
|
||
|
|
||
|
__overrides__ {
|
||
|
4lane = <0>, "-6+7-8+9";
|
||
|
- clock-frequency = <&imx290_clk>,"clock-frequency:0",
|
||
|
+ clock-frequency = <&cam1_clk>,"clock-frequency:0",
|
||
|
<&imx290>,"clock-frequency:0";
|
||
|
rotation = <&imx290>,"rotation:0";
|
||
|
orientation = <&imx290>,"orientation:0";
|
||
|
--- a/arch/arm/boot/dts/overlays/imx477_378-overlay.dtsi
|
||
|
+++ b/arch/arm/boot/dts/overlays/imx477_378-overlay.dtsi
|
||
|
@@ -15,12 +15,12 @@
|
||
|
reg = <0x1a>;
|
||
|
status = "okay";
|
||
|
|
||
|
- clocks = <&imx477_clk>;
|
||
|
+ clocks = <&cam1_clk>;
|
||
|
clock-names = "xclk";
|
||
|
|
||
|
VANA-supply = <&cam1_reg>; /* 2.8v */
|
||
|
- VDIG-supply = <&imx477_vdig>; /* 1.05v */
|
||
|
- VDDL-supply = <&imx477_vddl>; /* 1.8v */
|
||
|
+ VDIG-supply = <&cam_dummy_reg>; /* 1.05v */
|
||
|
+ VDDL-supply = <&cam_dummy_reg>; /* 1.8v */
|
||
|
|
||
|
rotation = <180>;
|
||
|
orientation = <2>;
|
||
|
@@ -63,25 +63,10 @@
|
||
|
};
|
||
|
|
||
|
fragment@3 {
|
||
|
- target-path="/";
|
||
|
+ target = <&cam1_clk>;
|
||
|
__overlay__ {
|
||
|
- imx477_vdig: fixedregulator@0 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "imx477_vdig";
|
||
|
- regulator-min-microvolt = <1050000>;
|
||
|
- regulator-max-microvolt = <1050000>;
|
||
|
- };
|
||
|
- imx477_vddl: fixedregulator@1 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "imx477_vddl";
|
||
|
- regulator-min-microvolt = <1800000>;
|
||
|
- regulator-max-microvolt = <1800000>;
|
||
|
- };
|
||
|
- imx477_clk: camera-clk {
|
||
|
- compatible = "fixed-clock";
|
||
|
- #clock-cells = <0>;
|
||
|
- clock-frequency = <24000000>;
|
||
|
- };
|
||
|
+ clock-frequency = <24000000>;
|
||
|
+ status = "okay";
|
||
|
};
|
||
|
};
|
||
|
|
||
|
@@ -95,11 +80,7 @@
|
||
|
fragment@5 {
|
||
|
target = <&cam1_reg>;
|
||
|
__overlay__ {
|
||
|
- status = "okay";
|
||
|
- regulator-name = "imx477_vana";
|
||
|
startup-delay-us = <300000>;
|
||
|
- regulator-min-microvolt = <2800000>;
|
||
|
- regulator-max-microvolt = <2800000>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
--- a/arch/arm/boot/dts/overlays/imx519-overlay.dts
|
||
|
+++ b/arch/arm/boot/dts/overlays/imx519-overlay.dts
|
||
|
@@ -20,12 +20,12 @@
|
||
|
reg = <0x1a>;
|
||
|
status = "okay";
|
||
|
|
||
|
- clocks = <&imx519_clk>;
|
||
|
+ clocks = <&cam1_clk>;
|
||
|
clock-names = "xclk";
|
||
|
|
||
|
VANA-supply = <&cam1_reg>; /* 2.8v */
|
||
|
- VDIG-supply = <&imx519_vdig>; /* 1.8v */
|
||
|
- VDDL-supply = <&imx519_vddl>; /* 1.2v */
|
||
|
+ VDIG-supply = <&cam_dummy_reg>; /* 1.8v */
|
||
|
+ VDDL-supply = <&cam_dummy_reg>; /* 1.2v */
|
||
|
|
||
|
rotation = <0>;
|
||
|
orientation = <2>;
|
||
|
@@ -68,26 +68,10 @@
|
||
|
};
|
||
|
|
||
|
fragment@3 {
|
||
|
- target-path="/";
|
||
|
+ target = <&cam1_clk>;
|
||
|
__overlay__ {
|
||
|
- imx519_vdig: fixedregulator@1 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "imx519_vdig";
|
||
|
- regulator-min-microvolt = <1800000>;
|
||
|
- regulator-max-microvolt = <1800000>;
|
||
|
- };
|
||
|
- imx519_vddl: fixedregulator@2 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "imx519_vddl";
|
||
|
- regulator-min-microvolt = <1200000>;
|
||
|
- regulator-max-microvolt = <1200000>;
|
||
|
- };
|
||
|
-
|
||
|
- imx519_clk: camera-clk {
|
||
|
- compatible = "fixed-clock";
|
||
|
- #clock-cells = <0>;
|
||
|
- clock-frequency = <24000000>;
|
||
|
- };
|
||
|
+ clock-frequency = <24000000>;
|
||
|
+ status = "okay";
|
||
|
};
|
||
|
};
|
||
|
|
||
|
@@ -98,16 +82,6 @@
|
||
|
};
|
||
|
};
|
||
|
|
||
|
- fragment@5 {
|
||
|
- target = <&cam1_reg>;
|
||
|
- __overlay__ {
|
||
|
- status = "okay";
|
||
|
- regulator-name = "imx519_vana";
|
||
|
- regulator-min-microvolt = <2800000>;
|
||
|
- regulator-max-microvolt = <2800000>;
|
||
|
- };
|
||
|
- };
|
||
|
-
|
||
|
fragment@6 {
|
||
|
target = <&csi1>;
|
||
|
__overlay__ {
|
||
|
--- a/arch/arm/boot/dts/overlays/ov5647-overlay.dts
|
||
|
+++ b/arch/arm/boot/dts/overlays/ov5647-overlay.dts
|
||
|
@@ -19,7 +19,7 @@
|
||
|
status = "okay";
|
||
|
|
||
|
pwdn-gpios = <&gpio 41 1>, <&gpio 32 1>;
|
||
|
- clocks = <&ov5647_clk>;
|
||
|
+ clocks = <&cam1_clk>;
|
||
|
|
||
|
rotation = <0>;
|
||
|
orientation = <2>;
|
||
|
@@ -77,13 +77,10 @@
|
||
|
};
|
||
|
|
||
|
fragment@5 {
|
||
|
- target-path = "/";
|
||
|
+ target = <&cam1_clk>;
|
||
|
__overlay__ {
|
||
|
- ov5647_clk: camera-clk {
|
||
|
- compatible = "fixed-clock";
|
||
|
- #clock-cells = <0>;
|
||
|
- clock-frequency = <25000000>;
|
||
|
- };
|
||
|
+ status = "okay";
|
||
|
+ clock-frequency = <25000000>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
@@ -94,6 +91,13 @@
|
||
|
};
|
||
|
};
|
||
|
|
||
|
+ fragment@7 {
|
||
|
+ target = <&cam1_reg>;
|
||
|
+ __overlay__ {
|
||
|
+ status = "disabled";
|
||
|
+ };
|
||
|
+ };
|
||
|
+
|
||
|
__overrides__ {
|
||
|
rotation = <&ov5647>,"rotation:0";
|
||
|
orientation = <&ov5647>,"orientation:0";
|
||
|
--- a/arch/arm/boot/dts/overlays/ov7251-overlay.dts
|
||
|
+++ b/arch/arm/boot/dts/overlays/ov7251-overlay.dts
|
||
|
@@ -20,13 +20,13 @@
|
||
|
reg = <0x60>;
|
||
|
status = "okay";
|
||
|
|
||
|
- clocks = <&ov7251_clk>;
|
||
|
+ clocks = <&cam1_clk>;
|
||
|
clock-names = "xclk";
|
||
|
clock-frequency = <24000000>;
|
||
|
|
||
|
- vdddo-supply = <&ov7251_dovdd>;
|
||
|
+ vdddo-supply = <&cam_dummy_reg>;
|
||
|
vdda-supply = <&cam1_reg>;
|
||
|
- vddd-supply = <&ov7251_dvdd>;
|
||
|
+ vddd-supply = <&cam_dummy_reg>;
|
||
|
|
||
|
rotation = <0>;
|
||
|
orientation = <2>;
|
||
|
@@ -67,25 +67,10 @@
|
||
|
};
|
||
|
|
||
|
fragment@3 {
|
||
|
- target-path="/";
|
||
|
+ target = <&cam1_clk>;
|
||
|
__overlay__ {
|
||
|
- ov7251_dovdd: fixedregulator@1 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "ov7251_dovdd";
|
||
|
- regulator-min-microvolt = <1800000>;
|
||
|
- regulator-max-microvolt = <1800000>;
|
||
|
- };
|
||
|
- ov7251_dvdd: fixedregulator@2 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "ov7251_dvdd";
|
||
|
- regulator-min-microvolt = <1200000>;
|
||
|
- regulator-max-microvolt = <1200000>;
|
||
|
- };
|
||
|
- ov7251_clk: ov7251-clk {
|
||
|
- compatible = "fixed-clock";
|
||
|
- #clock-cells = <0>;
|
||
|
- clock-frequency = <24000000>;
|
||
|
- };
|
||
|
+ status = "okay";
|
||
|
+ clock-frequency = <24000000>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
@@ -96,16 +81,6 @@
|
||
|
};
|
||
|
};
|
||
|
|
||
|
- fragment@5 {
|
||
|
- target = <&cam1_reg>;
|
||
|
- __overlay__ {
|
||
|
- status = "okay";
|
||
|
- regulator-name = "ov7251_avdd";
|
||
|
- regulator-min-microvolt = <2800000>;
|
||
|
- regulator-max-microvolt = <2800000>;
|
||
|
- };
|
||
|
- };
|
||
|
-
|
||
|
fragment@6 {
|
||
|
target = <&csi1>;
|
||
|
__dormant__ {
|
||
|
--- a/arch/arm/boot/dts/overlays/ov9281-overlay.dts
|
||
|
+++ b/arch/arm/boot/dts/overlays/ov9281-overlay.dts
|
||
|
@@ -20,12 +20,12 @@
|
||
|
reg = <0x60>;
|
||
|
status = "okay";
|
||
|
|
||
|
- clocks = <&ov9281_clk>;
|
||
|
+ clocks = <&cam1_clk>;
|
||
|
clock-names = "xvclk";
|
||
|
|
||
|
avdd-supply = <&cam1_reg>;
|
||
|
- dovdd-supply = <&ov9281_dovdd>;
|
||
|
- dvdd-supply = <&ov9281_dvdd>;
|
||
|
+ dovdd-supply = <&cam_dummy_reg>;
|
||
|
+ dvdd-supply = <&cam_dummy_reg>;
|
||
|
|
||
|
rotation = <0>;
|
||
|
orientation = <2>;
|
||
|
@@ -67,25 +67,10 @@
|
||
|
};
|
||
|
|
||
|
fragment@3 {
|
||
|
- target-path="/";
|
||
|
+ target = <&cam1_clk>;
|
||
|
__overlay__ {
|
||
|
- ov9281_dovdd: fixedregulator@1 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "ov9281_dovdd";
|
||
|
- regulator-min-microvolt = <1800000>;
|
||
|
- regulator-max-microvolt = <1800000>;
|
||
|
- };
|
||
|
- ov9281_dvdd: fixedregulator@2 {
|
||
|
- compatible = "regulator-fixed";
|
||
|
- regulator-name = "ov9281_dvdd";
|
||
|
- regulator-min-microvolt = <1200000>;
|
||
|
- regulator-max-microvolt = <1200000>;
|
||
|
- };
|
||
|
- ov9281_clk: ov9281-clk {
|
||
|
- compatible = "fixed-clock";
|
||
|
- #clock-cells = <0>;
|
||
|
- clock-frequency = <24000000>;
|
||
|
- };
|
||
|
+ status = "okay";
|
||
|
+ clock-frequency = <24000000>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
@@ -97,16 +82,6 @@
|
||
|
};
|
||
|
|
||
|
fragment@5 {
|
||
|
- target = <&cam1_reg>;
|
||
|
- __overlay__ {
|
||
|
- status = "okay";
|
||
|
- regulator-name = "ov9281_avdd";
|
||
|
- regulator-min-microvolt = <2800000>;
|
||
|
- regulator-max-microvolt = <2800000>;
|
||
|
- };
|
||
|
- };
|
||
|
-
|
||
|
- fragment@6 {
|
||
|
target = <&csi1>;
|
||
|
__overlay__ {
|
||
|
brcm,media-controller;
|
||
|
@@ -116,6 +91,6 @@
|
||
|
__overrides__ {
|
||
|
rotation = <&ov9281>,"rotation:0";
|
||
|
orientation = <&ov9281>,"orientation:0";
|
||
|
- media-controller = <0>,"=6";
|
||
|
+ media-controller = <0>,"=5";
|
||
|
};
|
||
|
};
|