Merge tag 'v5.15.57' into rpi-5.15.y
[platform/kernel/linux-rpi.git] / arch / arm / boot / dts / overlays / imx477_378-overlay.dtsi
1 // SPDX-License-Identifier: GPL-2.0-only
2 // Definitions for IMX477 camera module on VC I2C bus
3
4 /{
5         compatible = "brcm,bcm2835";
6
7         fragment@0 {
8                 target = <&i2c0if>;
9                 __overlay__ {
10                         status = "okay";
11                 };
12         };
13
14         clk_frag: fragment@1 {
15                 target = <&cam1_clk>;
16                 cam_clk: __overlay__ {
17                         clock-frequency = <24000000>;
18                         status = "okay";
19                 };
20         };
21
22         fragment@2 {
23                 target = <&i2c0mux>;
24                 __overlay__ {
25                         status = "okay";
26                 };
27         };
28
29         reg_frag: fragment@3 {
30                 target = <&cam1_reg>;
31                 cam_reg: __overlay__ {
32                         startup-delay-us = <300000>;
33                 };
34         };
35
36         i2c_frag: fragment@100 {
37                 target = <&i2c_csi_dsi>;
38                 __overlay__ {
39                         #address-cells = <1>;
40                         #size-cells = <0>;
41                         status = "okay";
42
43                         #include "imx477_378.dtsi"
44                 };
45         };
46
47         csi_frag: fragment@101 {
48                 target = <&csi1>;
49                 csi: __overlay__ {
50                         status = "okay";
51                         brcm,media-controller;
52
53                         port {
54                                 csi_ep: endpoint {
55                                         remote-endpoint = <&cam_endpoint>;
56                                         clock-lanes = <0>;
57                                         data-lanes = <1 2>;
58                                         clock-noncontinuous;
59                                 };
60                         };
61                 };
62         };
63
64         __overrides__ {
65                 rotation = <&cam_node>,"rotation:0";
66                 orientation = <&cam_node>,"orientation:0";
67                 media-controller = <&csi>,"brcm,media-controller?";
68                 cam0 = <&i2c_frag>, "target:0=",<&i2c_vc>,
69                        <&csi_frag>, "target:0=",<&csi0>,
70                        <&clk_frag>, "target:0=",<&cam0_clk>,
71                        <&reg_frag>, "target:0=",<&cam0_reg>,
72                        <&cam_node>, "clocks:0=",<&cam0_clk>,
73                        <&cam_node>, "VANA-supply:0=",<&cam0_reg>;
74         };
75 };
76
77 &cam_node {
78         status = "okay";
79 };
80
81 &cam_endpoint {
82         remote-endpoint = <&csi_ep>;
83 };