summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuca Weiss <luca.weiss@fairphone.com>2026-03-19 18:36:29 +0300
committerBjorn Andersson <andersson@kernel.org>2026-03-30 17:00:18 +0300
commit1d44de258d34f33aadda67d69dae5a8427b9d2c7 (patch)
treeb1179ce5eeba4c2a7d71914f169d9ece303ae200
parente7fc3c46dc09c1c5f901f1a627d9bffc6321081c (diff)
downloadlinux-1d44de258d34f33aadda67d69dae5a8427b9d2c7.tar.xz
arm64: dts: qcom: qcm6490-fairphone-fp5: Add front camera support
Add and configure the necessary nodes to enable the front camera (Samsung S5KJN1), connected to CSIPHY 3. Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: David Heidelberg <david@ixit.cz> Link: https://lore.kernel.org/r/20260319-fp5-s5kjn1-v3-2-9cf4b8c09567@fairphone.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
-rw-r--r--arch/arm64/boot/dts/qcom/kodiak.dtsi7
-rw-r--r--arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts47
2 files changed, 53 insertions, 1 deletions
diff --git a/arch/arm64/boot/dts/qcom/kodiak.dtsi b/arch/arm64/boot/dts/qcom/kodiak.dtsi
index 215e59ebdf61..988ca5f7c8a0 100644
--- a/arch/arm64/boot/dts/qcom/kodiak.dtsi
+++ b/arch/arm64/boot/dts/qcom/kodiak.dtsi
@@ -5828,6 +5828,13 @@
gpio-ranges = <&tlmm 0 0 175>;
wakeup-parent = <&pdc>;
+ cam_mclk3_default: cam-mclk3-default-state {
+ pins = "gpio67";
+ function = "cam_mclk";
+ drive-strength = <2>;
+ bias-disable;
+ };
+
cci0_default: cci0-default-state {
pins = "gpio69", "gpio70";
function = "cci_i2c";
diff --git a/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts b/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
index c9c24c36ba7e..04cb9230d29f 100644
--- a/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
+++ b/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
@@ -12,6 +12,7 @@
#include <dt-bindings/iio/qcom,spmi-adc7-pm7325.h>
#include <dt-bindings/iio/qcom,spmi-adc7-pmk8350.h>
#include <dt-bindings/leds/common.h>
+#include <dt-bindings/media/video-interfaces.h>
#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include <dt-bindings/sound/qcom,q6asm.h>
@@ -626,6 +627,23 @@
};
};
+&camss {
+ vdda-phy-supply = <&vreg_l10c>;
+ vdda-pll-supply = <&vreg_l6b>;
+
+ status = "okay";
+
+ ports {
+ port@3 {
+ csiphy3_ep: endpoint {
+ data-lanes = <0 1 2 3>;
+ bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
+ remote-endpoint = <&camera_s5kjn1_ep>;
+ };
+ };
+ };
+};
+
&cci0 {
status = "okay";
};
@@ -666,7 +684,34 @@
};
&cci1_i2c1 {
- /* S5KJN1SQ03 @ 10 */
+ camera@10 {
+ compatible = "samsung,s5kjn1";
+ reg = <0x10>;
+
+ vdda-supply = <&vreg_l3p>;
+ vddd-supply = <&vreg_l2p>;
+ vddio-supply = <&vreg_l6p>;
+
+ clocks = <&camcc CAM_CC_MCLK3_CLK>;
+ assigned-clocks = <&camcc CAM_CC_MCLK3_CLK>;
+ assigned-clock-rates = <24000000>;
+
+ reset-gpios = <&tlmm 78 GPIO_ACTIVE_LOW>;
+
+ pinctrl-0 = <&cam_mclk3_default>;
+ pinctrl-names = "default";
+
+ orientation = <0>; /* Front facing */
+ rotation = <270>;
+
+ port {
+ camera_s5kjn1_ep: endpoint {
+ data-lanes = <1 2 3 4>;
+ link-frequencies = /bits/ 64 <700000000>;
+ remote-endpoint = <&csiphy3_ep>;
+ };
+ };
+ };
eeprom@51 {
compatible = "giantec,gt24p128f", "atmel,24c128";