Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 169f31f1 authored by Suprith Malligere Shankaregowda's avatar Suprith Malligere Shankaregowda Committed by Gerrit - the friendly Code Review server
Browse files

adv7481: Enable ADV7481 driver on Auto CDP



Add DTSI entries for ADV7481 on Auto CDP. This is the
HDMI-CSI conversion bridge chip. Also enable the required
CSIDs in camera sensor DTSI.

Change-Id: I972cd2cd538cddf9012fc52400b2980930f77775
Signed-off-by: default avatarSuprith Malligere Shankaregowda <supgow@codeaurora.org>
parent dd13676f
Loading
Loading
Loading
Loading
+73 −9
Original line number Diff line number Diff line
@@ -1018,17 +1018,75 @@
		pinctrl-0 = <&quat_tdm_dout_active>;
		pinctrl-1 = <&quat_tdm_dout_sleep>;
	};

	qcom,adv7481@70 {
		compatible = "qcom,adv7481";
		reg = <0x70 0xff>;
		cam_vdig-supply = <&pm8994_s3>;
		tx-lanes = <4 2 1>;
		settle-count = <16 16 16>;
		res-array = "RES_1080P", "RES_720P", "RES_576P_480P";
		/* Cameras powered by PMIC: */
		cam_vio-supply = <&pm8994_lvs1>;
		cam_vana-supply = <&pm8994_l17>;
		/* Self-powered cameras: */
		qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana";
		qcom,cam-vreg-min-voltage = <1300000 0 1800000>;
		qcom,cam-vreg-max-voltage = <1300000 0 1800000>;
		qcom,cam-vreg-op-mode = <105000 0 80000>;

		qcom,cci-master = <0>;
		gpios = <&tlmm 17 0>,          /* I2C SDA */
			<&tlmm 18 0>,          /* I2C SCL */
			<&pm8994_gpios 4 0>,   /* RST     */
			<&pm8994_gpios 5 0>,   /* INT1    */
			<&pm8994_gpios 6 0>,   /* INT2    */
			<&pm8994_gpios 7 0>;   /* INT3    */
	};

	qcom,tv-tuner {
		compatible = "qcom,tv-tuner";
	};

	qcom,msm-ba {
		compatible = "qcom,msm-ba";
		qcom,ba-input-profile-0 {
			qcom,type = <4>;          /* input type   */
			qcom,name = "HDMI-1";     /* input name   */
			qcom,ba-input = <13>;     /* ba input id  */
			qcom,ba-output = <0>;     /* ba output id */
			qcom,sd-name = "adv7481"; /* sd name      */
			qcom,ba-node = <0>;       /* ba node      */
			qcom,user-type = <1>;     /* user type    */
		};

		qcom,ba-input-profile-1 {
			qcom,type = <0>;          /* input type   */
			qcom,name = "CVBS-0";     /* input name   */
			qcom,ba-input = <0>;      /* ba input id  */
			qcom,ba-output = <0>;     /* ba output id */
			qcom,sd-name = "adv7481"; /* sd name      */
			qcom,ba-node = <1>;       /* ba node      */
			qcom,user-type = <1>;     /* user type    */
		};

		qcom,ba-input-profile-2 {
			qcom,type = <8>;          /* input type   */
			qcom,name = "TUNER-2";     /* input name   */
			qcom,ba-input = <16>;      /* ba input id  */
			qcom,ba-output = <0>;     /* ba output id */
			qcom,sd-name = "tv-tuner"; /* sd name      */
			qcom,ba-node = <2>;       /* ba node      */
			qcom,user-type = <1>;     /* user type    */
		};
	};
};

&pm8994_gpios {
	gpio@c600 { /* GPIO 7 - NFC DWL REQ */
		qcom,mode = <1>;
		qcom,output-type = <0>;
		qcom,pull = <5>;
	gpio@c600 { /* GPIO 7 - adv7481 INT3*/
		qcom,mode = <0>;
		qcom,vin-sel = <2>;
		qcom,out-strength = <3>;
		qcom,src-sel = <0>;
		qcom,master-en = <1>;
		status = "okay";
	};

@@ -1071,7 +1129,7 @@
		status = "okay";
	};

	gpio@c300 { /* GPIO 4 */
	gpio@c300 { /* GPIO 4 - adv7481 RST */
		qcom,mode = <0>;
		qcom,pull = <0>;
		qcom,vin-sel = <2>;
@@ -1079,9 +1137,15 @@
		status = "okay";
	};

	gpio@c400 { /* GPIO 5 */
	gpio@c400 { /* GPIO 5 - adv7481 INT1 */
		qcom,mode = <0>;
		qcom,vin-sel = <2>;
		qcom,src-sel = <0>;
		status = "okay";
	};

	gpio@c500 { /* GPIO 6 - adv7481 INT2*/
		qcom,mode = <0>;
		qcom,pull = <0>;
		qcom,vin-sel = <2>;
		qcom,src-sel = <0>;
		status = "okay";
+40 −1
Original line number Diff line number Diff line
/*
 * Copyright (c) 2015-2017, The Linux Foundation. All rights reserved.
 * Copyright (c) 2015-2018, The Linux Foundation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 and
@@ -128,6 +128,45 @@
		qcom,clock-rates = <19200000 0>;
	};

		qcom,camera@1 {
		cell-index = <1>;
		compatible = "qcom,camera";
		reg = <0x1>;
		qcom,csiphy-sd-index = <1>;
		qcom,csid-sd-index = <1>;
		qcom,mount-angle = <90>;
		cam_vdig-supply = <&pm8994_l27>;
		cam_vio-supply = <&pm8994_lvs1>;
		cam_vana-supply = <&pmi8994_boostbypass>;
		qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana";
		qcom,cam-vreg-min-voltage = <800000 0 3150000>;
		qcom,cam-vreg-max-voltage = <800000 0 3600000>;
		qcom,cam-vreg-op-mode = <800000 0 80000>;
		qcom,gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk1_active &cam_sensor_rear2_active>;
		pinctrl-1 = <&cam_sensor_mclk1_suspend
				&cam_sensor_rear2_suspend>;
		gpios = <&tlmm 14 0>,
			<&tlmm 63 0>,
			<&tlmm 62 0>;
		qcom,gpio-reset = <1>;
		qcom,gpio-standby = <2>;
		qcom,gpio-req-tbl-num = <0 1 2>;
		qcom,gpio-req-tbl-flags = <1 0 0>;
		qcom,gpio-req-tbl-label = "CAMIF_MCLK1",
					  "CAM_RESET1",
					  "CAM_STANDBY1";
		qcom,sensor-position = <0>;
		qcom,sensor-mode = <0>;
		qcom,cci-master = <0>;
		status = "ok";
		clocks = <&clock_mmss clk_mclk1_clk_src>,
			<&clock_mmss clk_camss_mclk1_clk>;
		clock-names = "cam_src_clk", "cam_clk";
		qcom,clock-rates = <24000000 0>;
	};

	qcom,camera@2 {
		cell-index = <2>;
		compatible = "qcom,camera";