1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Copyright (c) 2022, Linaro Ltd.
4  */
5 
6 /dts-v1/;
7 
8 #include "sdm845-db845c.dts"
9 
10 &camss {
11 	vdda-phy-supply = <&vreg_l1a_0p875>;
12 	vdda-pll-supply = <&vreg_l26a_1p2>;
13 
14 	status = "okay";
15 
16 	ports {
17 		port@0 {
18 			csiphy0_ep: endpoint {
19 				data-lanes = <0 1 2 3>;
20 				remote-endpoint = <&ov8856_ep>;
21 			};
22 		};
23 	};
24 };
25 
26 &cci {
27 	status = "okay";
28 };
29 
30 &cci_i2c0 {
31 	camera@10 {
32 		compatible = "ovti,ov8856";
33 		reg = <0x10>;
34 
35 		/* CAM0_RST_N */
36 		reset-gpios = <&tlmm 9 GPIO_ACTIVE_LOW>;
37 		pinctrl-names = "default";
38 		pinctrl-0 = <&cam0_default>;
39 
40 		clocks = <&clock_camcc CAM_CC_MCLK0_CLK>;
41 		clock-names = "xvclk";
42 		clock-frequency = <19200000>;
43 
44 		/*
45 		 * The &vreg_s4a_1p8 trace is powered on as a,
46 		 * so it is represented by a fixed regulator.
47 		 *
48 		 * The 2.8V vdda-supply and 1.2V vddd-supply regulators
49 		 * both have to be enabled through the power management
50 		 * gpios.
51 		 */
52 		dovdd-supply = <&vreg_lvs1a_1p8>;
53 		avdd-supply = <&cam0_avdd_2v8>;
54 		dvdd-supply = <&cam0_dvdd_1v2>;
55 
56 		port {
57 			ov8856_ep: endpoint {
58 				link-frequencies = /bits/ 64
59 					<360000000 180000000>;
60 				data-lanes = <1 2 3 4>;
61 				remote-endpoint = <&csiphy0_ep>;
62 			};
63 		};
64 	};
65 };
66 
67 &cci_i2c1 {
68 	camera@60 {
69 		compatible = "ovti,ov7251";
70 
71 		/* I2C address as per ov7251.txt linux documentation */
72 		reg = <0x60>;
73 
74 		/* CAM3_RST_N */
75 		enable-gpios = <&tlmm 21 GPIO_ACTIVE_HIGH>;
76 		pinctrl-names = "default";
77 		pinctrl-0 = <&cam3_default>;
78 
79 		clocks = <&clock_camcc CAM_CC_MCLK3_CLK>;
80 		clock-names = "xclk";
81 		clock-frequency = <24000000>;
82 
83 		/*
84 		 * The &vreg_s4a_1p8 trace always powered on.
85 		 *
86 		 * The 2.8V vdda-supply regulator is enabled when the
87 		 * vreg_s4a_1p8 trace is pulled high.
88 		 * It too is represented by a fixed regulator.
89 		 *
90 		 * No 1.2V vddd-supply regulator is used.
91 		 */
92 		vdddo-supply = <&vreg_lvs1a_1p8>;
93 		vdda-supply = <&cam3_avdd_2v8>;
94 
95 		status = "disabled";
96 
97 		port {
98 			ov7251_ep: endpoint {
99 				data-lanes = <0 1>;
100 /*				remote-endpoint = <&csiphy3_ep>; */
101 			};
102 		};
103 	};
104 };
105