Skip to content
Digital Rhyme
Camera sensor module and CSI ribbon cable with abstract media-pipeline overlays

imx708-overlay.dts Source

V4L2 subdevice driver, media graph wiring, Raspberry Pi overlay, and build path.

1// SPDX-License-Identifier: GPL-2.0-only
2// Definitions for IMX708 camera module on VC I2C bus
3/dts-v1/;
4/plugin/;
5
6/{
7 compatible = "brcm,bcm2835";
8
9 fragment@0 {
10 target = <&i2c0if>;
11 __overlay__ {
12 status = "okay";
13 };
14 };
15
16 clk_frag: fragment@1 {
17 target = <&cam1_clk>;
18 __overlay__ {
19 status = "okay";
20 clock-frequency = <24000000>;
21 };
22 };
23
24 fragment@2 {
25 target = <&i2c0mux>;
26 __overlay__ {
27 status = "okay";
28 };
29 };
30
31 reg_frag: fragment@3 {
32 target = <&cam1_reg>;
33 cam_reg: __overlay__ {
34 startup-delay-us = <70000>;
35 off-on-delay-us = <30000>;
36 regulator-min-microvolt = <2700000>;
37 regulator-max-microvolt = <2700000>;
38 };
39 };
40
41 fragment@4 {
42 target = <&cam_node>;
43 __overlay__ {
44 lens-focus = <&vcm_node>;
45 };
46 };
47
48 i2c_frag: fragment@100 {
49 target = <&i2c_csi_dsi>;
50 __overlay__ {
51 #address-cells = <1>;
52 #size-cells = <0>;
53 status = "okay";
54
55 /include/ "imx708.dtsi"
56 };
57 };
58
59 csi_frag: fragment@101 {
60 target = <&csi1>;
61 csi: __overlay__ {
62 status = "okay";
63
64 port {
65 csi_ep: endpoint {
66 remote-endpoint = <&cam_endpoint>;
67 clock-lanes = <0>;
68 data-lanes = <1 2 3 4>;
69 clock-noncontinuous;
70 };
71 };
72 };
73 };
74
75 fragment@102 {
76 target = <&csi1>;
77 __dormant__ {
78 compatible = "brcm,bcm2835-unicam-legacy";
79 };
80 };
81
82 __overrides__ {
83 rotation = <&cam_node>,"rotation:0";
84 orientation = <&cam_node>,"orientation:0";
85 media-controller = <0>,"!102";
86 cam0 = <&i2c_frag>, "target:0=",<&i2c_csi_dsi0>,
87 <&csi_frag>, "target:0=",<&csi0>,
88 <&clk_frag>, "target:0=",<&cam0_clk>,
89 <&reg_frag>, "target:0=",<&cam0_reg>,
90 <&cam_node>, "clocks:0=",<&cam0_clk>,
91 <&cam_node>, "vana1-supply:0=",<&cam0_reg>,
92 <&vcm_node>, "VDD-supply:0=",<&cam0_reg>;
93 vcm = <&vcm_node>, "status",
94 <0>, "=4";
95 link-frequency = <&cam_endpoint>,"link-frequencies#0";
96 };
97};
98
99&cam_node {
100 status = "okay";
101};
102
103&cam_endpoint {
104 remote-endpoint = <&csi_ep>;
105};
106
107&vcm_node {
108 status = "okay";
109};