rk3588 legacy: add IMX586 support (OPI5Ultra cam1)

This commit is contained in:
OrangePi CM5 Builder 2026-04-09 15:34:06 +08:00
parent 1658334140
commit 96ff85af55
2 changed files with 82 additions and 1 deletions

View File

@ -4663,7 +4663,7 @@ CONFIG_VIDEO_IMX464=y
# CONFIG_VIDEO_IMX492 is not set
# CONFIG_VIDEO_IMX355 is not set
# CONFIG_VIDEO_IMX577 is not set
# CONFIG_VIDEO_IMX586=y
CONFIG_VIDEO_IMX586=y
# CONFIG_VIDEO_JX_K17 is not set
# CONFIG_VIDEO_OS02G10 is not set
# CONFIG_VIDEO_OS02K10 is not set

View File

@ -0,0 +1,81 @@
diff -ruN a/arch/arm64/boot/dts/rockchip/overlay/rk3588-opi5ultra-cam1.dts b/arch/arm64/boot/dts/rockchip/overlay/rk3588-opi5ultra-cam1.dts
--- a/arch/arm64/boot/dts/rockchip/overlay/rk3588-opi5ultra-cam1.dts 2026-04-09 15:25:14.858311745 +0800
+++ b/arch/arm64/boot/dts/rockchip/overlay/rk3588-opi5ultra-cam1.dts 2026-04-09 15:25:14.880312027 +0800
@@ -57,19 +57,23 @@
status = "okay";
vm149c-p1@c {
- status = "okay";
+ status = "disabled";
};
ov13850-1@10 {
- status = "okay";
+ status = "disabled";
};
dw9714-p1@c {
- status = "okay";
+ status = "disabled";
};
ov13855-1@36 {
- status = "okay";
+ status = "disabled";
+ };
+
+ imx586@1a {
+ status = "okay";
};
};
};
diff -ruN a/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-max-camera1.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-max-camera1.dtsi
--- a/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-max-camera1.dtsi 2026-04-09 15:25:14.859311758 +0800
+++ b/arch/arm64/boot/dts/rockchip/rk3588-orangepi-5-max-camera1.dtsi 2026-04-09 15:25:14.881312039 +0800
@@ -25,6 +25,12 @@
mipidphy1_in_ucam1: endpoint@1 {
reg = <1>;
remote-endpoint = <&ov13855_out1>;
data-lanes = <1 2>;
};
+
+ mipidphy1_in_ucam2: endpoint@2 {
+ reg = <2>;
+ remote-endpoint = <&imx586_out1>;
+ data-lanes = <1 2 3 4>;
+ };
};
port@1 {
reg = <1>;
@@ -107,6 +113,31 @@
};
};
};
+
+ imx586_1: imx586@1a {
+ compatible = "sony,imx586";
+ status = "disabled";
+ reg = <0x1a>;
+ clocks = <&cru CLK_MIPI_CAMARAOUT_M2>;
+ clock-names = "xvclk";
+ pinctrl-names = "default";
+ pinctrl-0 = <&mipim1_camera2_clk>;
+ reset-gpios = <&gpio3 RK_PB1 GPIO_ACTIVE_HIGH>;
+ pwdn-gpios = <&gpio3 RK_PB3 GPIO_ACTIVE_HIGH>;
+ avdd-supply = <&vcc_3v3_s0>;
+ dovdd-supply = <&vcc_1v8_s0>;
+ dvdd-supply = <&avdd_1v2_s0>;
+ rockchip,camera-module-index = <1>;
+ rockchip,camera-module-facing = "back";
+ rockchip,camera-module-name = "CIS-IMX586";
+ rockchip,camera-module-lens-name = "default";
+ port {
+ imx586_out1: endpoint {
+ remote-endpoint = <&mipidphy1_in_ucam2>;
+ data-lanes = <1 2 3 4>;
+ };
+ };
+ };
};
&mipi4_csi2 {