]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: qcom: sc8280xp-x13s: Enable RGB sensor
authorBryan O'Donoghue <bryan.odonoghue@linaro.org>
Tue, 6 Aug 2024 09:45:43 +0000 (10:45 +0100)
committerBjorn Andersson <andersson@kernel.org>
Thu, 15 Aug 2024 02:57:08 +0000 (21:57 -0500)
Enable the main RGB sensor on the Lenovo x13s a five megapixel 2 lane DPHY
MIPI sensor connected to cisphy0.

With the pm8008 patches recently applied to the x13s dtsi we can now also
enable the RGB sensor. Once done we have all upstream support necessary for
the RGB sensor on x13s.

Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Link: https://lore.kernel.org/r/20240806-b4-linux-next-24-07-31-camss-sc8280xp-lenovo-rgb-v2-v3-1-199767fb193d@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts

index a7c5a3f5926c73dc7fb26417e5fc7e7cfd66d643..6a28cab971891d327bf7fa5558a382799c178e6e 100644 (file)
        };
 };
 
+&camss {
+       vdda-phy-supply = <&vreg_l6d>;
+       vdda-pll-supply = <&vreg_l4d>;
+
+       status = "okay";
+
+       ports {
+               port@0 {
+                       csiphy0_lanes01_ep: endpoint@0 {
+                               reg = <0>;
+                               clock-lanes = <7>;
+                               data-lanes = <0 1>;
+                               remote-endpoint = <&ov5675_ep>;
+                       };
+               };
+       };
+};
+
+&cci2 {
+       status = "okay";
+};
+
+&cci2_i2c1 {
+       camera@10 {
+               compatible = "ovti,ov5675";
+               reg = <0x10>;
+
+               reset-gpios = <&tlmm 15 GPIO_ACTIVE_LOW>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&cam_rgb_default>;
+
+               clocks = <&camcc CAMCC_MCLK3_CLK>;
+
+               orientation = <0>;      /* Front facing */
+
+               avdd-supply = <&vreg_l6q>;
+               dvdd-supply = <&vreg_l2q>;
+               dovdd-supply = <&vreg_l7q>;
+
+               port {
+                       ov5675_ep: endpoint {
+                               clock-lanes = <0>;
+                               data-lanes = <1 2>;
+                               link-frequencies = /bits/ 64 <450000000>;
+                               remote-endpoint = <&csiphy0_lanes01_ep>;
+                       };
+               };
+
+       };
+};
+
 &dispcc0 {
        status = "okay";
 };
                bias-disable;
        };
 
+       cam_rgb_default: cam-rgb-default-state {
+               mclk-pins {
+                       pins = "gpio17";
+                       function = "cam_mclk";
+                       drive-strength = <16>;
+                       bias-disable;
+               };
+
+               sc-rgb-xshut-n-pins {
+                       pins = "gpio15";
+                       function = "gpio";
+                       drive-strength = <2>;
+                       bias-disable;
+               };
+       };
+
        edp_reg_en: edp-reg-en-state {
                pins = "gpio25";
                function = "gpio";