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

Commit 3da3cb63 authored by Karthik Poosa's avatar Karthik Poosa
Browse files

ARM: dts: msm: Add devicetree node of NFC for atoll



Enable I2C slave node for NFC controller.
Add pin control of the NFC Controller GPIO pins.

Change-Id: I4f36e63a11e22fa4bbdad9e389c32c74dd63576a
Signed-off-by: default avatarKarthik Poosa <kpoosa2@codeaurora.org>
parent 08daca7a
Loading
Loading
Loading
Loading
+23 −0
Original line number Diff line number Diff line
@@ -295,3 +295,26 @@
	qcom,platform-te-gpio = <&tlmm 10 0>;
	qcom,platform-reset-gpio = <&pm6150l_gpios 3 0>;
};

&qupv3_se0_i2c {
	status = "ok";
	qcom,clk-freq-out = <1000000>;
	#address-cells = <1>;
	#size-cells = <0>;
	nq@28 {
		compatible = "qcom,nq-nci";
		reg = <0x28>;
		qcom,nq-irq = <&tlmm 37 0x00>;
		qcom,nq-ven = <&tlmm 12 0x00>;
		qcom,nq-firm = <&tlmm 36 0x00>;
		qcom,nq-clkreq = <&tlmm 31 0x00>;
		interrupt-parent = <&tlmm>;
		interrupts = <37 0>;
		interrupt-names = "nfc_irq";
		pinctrl-names = "nfc_active", "nfc_suspend";
		pinctrl-0 = <&nfc_int_active &nfc_enable_active
				&nfc_clk_req_active>;
		pinctrl-1 = <&nfc_int_suspend &nfc_enable_suspend
				&nfc_clk_req_suspend>;
	};
};
+92 −0
Original line number Diff line number Diff line
@@ -374,6 +374,98 @@
			};
		};

		nfc {
			nfc_int_active: nfc_int_active {
				/* active state */
				mux {
					/* GPIO 37 NFC Read Interrupt */
					pins = "gpio37";
					function = "gpio";
				};

				config {
					pins = "gpio37";
					drive-strength = <2>; /* 2 MA */
					bias-pull-up;
				};
			};

			nfc_int_suspend: nfc_int_suspend {
				/* sleep state */
				mux {
					/* GPIO 37 NFC Read Interrupt */
					pins = "gpio37";
					function = "gpio";
				};

				config {
					pins = "gpio37";
					drive-strength = <2>; /* 2 MA */
					bias-pull-up;
				};
			};

			nfc_enable_active: nfc_enable_active {
				/* active state */
				mux {
					/* 12: Enable 36: Firmware */
					pins = "gpio12", "gpio36";
					function = "gpio";
				};

				config {
					pins = "gpio12", "gpio36";
					drive-strength = <2>; /* 2 MA */
					bias-pull-up;
				};
			};

			nfc_enable_suspend: nfc_enable_suspend {
				/* sleep state */
				mux {
					/* 12: Enable 36: Firmware */
					pins = "gpio12", "gpio36";
					function = "gpio";
				};

				config {
					pins = "gpio12", "gpio36";
					drive-strength = <2>; /* 2 MA */
					bias-disable;
				};
			};

			nfc_clk_req_active: nfc_clk_req_active {
				/* active state */
				mux {
					/* GPIO 31: NFC CLOCK REQUEST */
					pins = "gpio31";
					function = "gpio";
				};

				config {
					pins = "gpio31";
					drive-strength = <2>; /* 2 MA */
					bias-pull-up;
				};
			};

			nfc_clk_req_suspend: nfc_clk_req_suspend {
				/* sleep state */
				mux {
					/* GPIO 31: NFC CLOCK REQUEST */
					pins = "gpio31";
					function = "gpio";
				};

				config {
					pins = "gpio31";
					drive-strength = <2>; /* 2 MA */
					bias-disable;
				};
			};
		};

		qupv3_se1_i2c_pins: qupv3_se1_i2c_pins {
			qupv3_se1_i2c_active: qupv3_se1_i2c_active {
				mux {
+23 −0
Original line number Diff line number Diff line
@@ -283,3 +283,26 @@
	qcom,wsa-devs = <&wsa881x_0211>, <&wsa881x_0213>;
	qcom,wsa-aux-dev-prefix = "SpkrLeft", "SpkrLeft";
};

&qupv3_se0_i2c {
	status = "ok";
	qcom,clk-freq-out = <1000000>;
	#address-cells = <1>;
	#size-cells = <0>;
	nq@28 {
		compatible = "qcom,nq-nci";
		reg = <0x28>;
		qcom,nq-irq = <&tlmm 37 0x00>;
		qcom,nq-ven = <&tlmm 12 0x00>;
		qcom,nq-firm = <&tlmm 36 0x00>;
		qcom,nq-clkreq = <&tlmm 31 0x00>;
		interrupt-parent = <&tlmm>;
		interrupts = <37 0>;
		interrupt-names = "nfc_irq";
		pinctrl-names = "nfc_active", "nfc_suspend";
		pinctrl-0 = <&nfc_int_active &nfc_enable_active
				&nfc_clk_req_active>;
		pinctrl-1 = <&nfc_int_suspend &nfc_enable_suspend
				&nfc_clk_req_suspend>;
	};
};