[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200408130959.2717409-3-robert.foss@linaro.org>
Date: Wed, 8 Apr 2020 15:09:55 +0200
From: Robert Foss <robert.foss@...aro.org>
To: agross@...nel.org, bjorn.andersson@...aro.org, robh+dt@...nel.org,
catalin.marinas@....com, will@...nel.org, shawnguo@...nel.org,
leoyang.li@....com, Anson.Huang@....com, olof@...om.net,
leonard.crestez@....com, geert+renesas@...der.be,
marcin.juszkiewicz@...aro.org, valentin.schneider@....com,
linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
Loic Poulain <loic.poulain@...aro.org>,
Luca Weiss <luca@...tu.xyz>
Cc: Robert Foss <robert.foss@...aro.org>
Subject: [PATCH v4 2/6] arm64: dts: apq8016-sbc: Add CCI/Sensor nodes
From: Loic Poulain <loic.poulain@...aro.org>
Add cci device to msm8916.dtsi.
Add default 96boards camera node for db410c (apq8016-sbc).
Signed-off-by: Loic Poulain <loic.poulain@...aro.org>
Signed-off-by: Robert Foss <robert.foss@...aro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@...aro.org>
---
Changes since v1:
- Reference CCI by label
- Don't use generic node names
- Move regulator nodes out of /soc
- Use CCI label and move node out of /soc
- Use reference for camss and move node out of /soc
- Use reference for cci-i2c0 and move out of /cci
- Disable camera_read by default, since no mezzanine board is guaranteed
arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi | 76 +++++++++++++++++++++++
1 file changed, 76 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi b/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi
index 06aab44d798c..14982762088d 100644
--- a/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi
+++ b/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi
@@ -51,6 +51,30 @@ chosen {
stdout-path = "serial0";
};
+ camera_vdddo_1v8: camera_vdddo_1v8 {
+ compatible = "regulator-fixed";
+ regulator-name = "camera_vdddo";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ camera_vdda_2v8: camera_vdda_2v8 {
+ compatible = "regulator-fixed";
+ regulator-name = "camera_vdda";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ regulator-always-on;
+ };
+
+ camera_vddd_1v5: camera_vddd_1v5 {
+ compatible = "regulator-fixed";
+ regulator-name = "camera_vddd";
+ regulator-min-microvolt = <1500000>;
+ regulator-max-microvolt = <1500000>;
+ regulator-always-on;
+ };
+
reserved-memory {
ramoops@...00000{
compatible = "ramoops";
@@ -538,6 +562,58 @@ button@0 {
};
};
+&camss {
+ status = "ok";
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ port@0 {
+ reg = <0>;
+ csiphy0_ep: endpoint {
+ clock-lanes = <1>;
+ data-lanes = <0 2>;
+ remote-endpoint = <&ov5640_ep>;
+ status = "okay";
+ };
+ };
+ };
+};
+
+&cci {
+ status = "ok";
+};
+
+&cci_i2c0 {
+ camera_rear@3b {
+ compatible = "ovti,ov5640";
+ reg = <0x3b>;
+
+ enable-gpios = <&msmgpio 34 GPIO_ACTIVE_HIGH>;
+ reset-gpios = <&msmgpio 35 GPIO_ACTIVE_LOW>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&camera_rear_default>;
+
+ clocks = <&gcc GCC_CAMSS_MCLK0_CLK>;
+ clock-names = "xclk";
+ clock-frequency = <23880000>;
+
+ vdddo-supply = <&camera_vdddo_1v8>;
+ vdda-supply = <&camera_vdda_2v8>;
+ vddd-supply = <&camera_vddd_1v5>;
+
+ /* No camera mezzanine by default */
+ status = "disabled";
+
+ port {
+ ov5640_ep: endpoint {
+ clock-lanes = <1>;
+ data-lanes = <0 2>;
+ remote-endpoint = <&csiphy0_ep>;
+ };
+ };
+ };
+};
+
&spmi_bus {
pm8916_0: pm8916@0 {
pon@800 {
--
2.25.1
Powered by blists - more mailing lists