162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright (c) 2015, The Linux Foundation. All rights reserved.
462306a36Sopenharmony_ci * Copyright (c) 2023, Linaro Ltd.
562306a36Sopenharmony_ci */
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci/dts-v1/;
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci#include "apq8016-sbc.dts"
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci/ {
1262306a36Sopenharmony_ci	camera_vdddo_1v8: camera-vdddo-1v8 {
1362306a36Sopenharmony_ci		compatible = "regulator-fixed";
1462306a36Sopenharmony_ci		regulator-name = "camera_vdddo";
1562306a36Sopenharmony_ci		regulator-min-microvolt = <1800000>;
1662306a36Sopenharmony_ci		regulator-max-microvolt = <1800000>;
1762306a36Sopenharmony_ci		regulator-always-on;
1862306a36Sopenharmony_ci	};
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci	camera_vdda_2v8: camera-vdda-2v8 {
2162306a36Sopenharmony_ci		compatible = "regulator-fixed";
2262306a36Sopenharmony_ci		regulator-name = "camera_vdda";
2362306a36Sopenharmony_ci		regulator-min-microvolt = <2800000>;
2462306a36Sopenharmony_ci		regulator-max-microvolt = <2800000>;
2562306a36Sopenharmony_ci		regulator-always-on;
2662306a36Sopenharmony_ci	};
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci	camera_vddd_1v5: camera-vddd-1v5 {
2962306a36Sopenharmony_ci		compatible = "regulator-fixed";
3062306a36Sopenharmony_ci		regulator-name = "camera_vddd";
3162306a36Sopenharmony_ci		regulator-min-microvolt = <1500000>;
3262306a36Sopenharmony_ci		regulator-max-microvolt = <1500000>;
3362306a36Sopenharmony_ci		regulator-always-on;
3462306a36Sopenharmony_ci	};
3562306a36Sopenharmony_ci};
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci&camss {
3862306a36Sopenharmony_ci	status = "okay";
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ci	ports {
4162306a36Sopenharmony_ci		port@0 {
4262306a36Sopenharmony_ci			reg = <0>;
4362306a36Sopenharmony_ci			csiphy0_ep: endpoint {
4462306a36Sopenharmony_ci				data-lanes = <0 2>;
4562306a36Sopenharmony_ci				remote-endpoint = <&ov5640_ep>;
4662306a36Sopenharmony_ci			};
4762306a36Sopenharmony_ci		};
4862306a36Sopenharmony_ci	};
4962306a36Sopenharmony_ci};
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ci&cci {
5262306a36Sopenharmony_ci	status = "okay";
5362306a36Sopenharmony_ci};
5462306a36Sopenharmony_ci
5562306a36Sopenharmony_ci&cci_i2c0 {
5662306a36Sopenharmony_ci	camera_rear@3b {
5762306a36Sopenharmony_ci		compatible = "ovti,ov5640";
5862306a36Sopenharmony_ci		reg = <0x3b>;
5962306a36Sopenharmony_ci
6062306a36Sopenharmony_ci		powerdown-gpios = <&tlmm 34 GPIO_ACTIVE_HIGH>;
6162306a36Sopenharmony_ci		reset-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;
6262306a36Sopenharmony_ci		pinctrl-names = "default";
6362306a36Sopenharmony_ci		pinctrl-0 = <&camera_rear_default>;
6462306a36Sopenharmony_ci
6562306a36Sopenharmony_ci		clocks = <&gcc GCC_CAMSS_MCLK0_CLK>;
6662306a36Sopenharmony_ci		clock-names = "xclk";
6762306a36Sopenharmony_ci		assigned-clocks = <&gcc GCC_CAMSS_MCLK0_CLK>;
6862306a36Sopenharmony_ci		assigned-clock-rates = <23880000>;
6962306a36Sopenharmony_ci
7062306a36Sopenharmony_ci		DOVDD-supply = <&camera_vdddo_1v8>;
7162306a36Sopenharmony_ci		AVDD-supply = <&camera_vdda_2v8>;
7262306a36Sopenharmony_ci		DVDD-supply = <&camera_vddd_1v5>;
7362306a36Sopenharmony_ci
7462306a36Sopenharmony_ci		port {
7562306a36Sopenharmony_ci			ov5640_ep: endpoint {
7662306a36Sopenharmony_ci				data-lanes = <1 2>;
7762306a36Sopenharmony_ci				remote-endpoint = <&csiphy0_ep>;
7862306a36Sopenharmony_ci			};
7962306a36Sopenharmony_ci		};
8062306a36Sopenharmony_ci	};
8162306a36Sopenharmony_ci};
82