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

Commit 80172bf2 authored by qctecmdr Service's avatar qctecmdr Service Committed by Gerrit - the friendly Code Review server
Browse files

Merge "ARM: dts: msm: add fpc1028 dtsi config for QRD6150"

parents 289d5234 58870821
Loading
Loading
Loading
Loading
+85 −0
Original line number Diff line number Diff line
Fingerprint Cards AB. Fpc1028 driver

The fpc1028 fingerprint sensor is connected to the host processor via SPI.
The sensor will generates interrupts when the user touches the sensor.
The host controller is expected to read data over SPI and pass the data to
the rest of the system.

This binding document describes the properties for this module.

Properties:

- compatible
  Usage:      required
  Value type: <string>
  Definition: It must be "fpc,fpc1020"

- interrupts
  Usage:      required
  Value type: <prop-encoded-array>
  Definition: Peripheral interrupt specifier.

- interrupt-parent
  Usage:      required
  Value type: <phandle>
  Definition: phandle of the interrupt controller which services the
  summary interrupt.

- fpc,gpio_rst
  Usage:      required
  Value type: <prop-encoded-array>
  Definition: GPIO which connecting to the reset pin of fpc1028

- fpc,gpio_irq
  Usage:      required
  Value type: <prop-encoded-array>
  Definition: Specifies the GPIO which connecting to the irq pin of fpc1028.

- vcc_spi-supply
  Usage:      required
  Value type: <phandle>
  Definition: The phandle of the regulator which supplies fpc1028 spi bus core.

- vcc_io-supply
  Usage:      required
  Value type: <phandle>
  Definition: The phandle of the regulator which supplies fpc1028 io pins.

- vcc_ana-supply
  Usage:      required
  Value type: <phandle>
  Definition: The phandle of the regulator which supplies fpc1028 analog circuit.

- pinctrl-names:
  Usage:      required
  Value type: <string>
  Definition: Pinctrl state names for each pin group configuration.
  eg:"fpc1020_reset_reset", "fpc1020_reset_active", "fpc1020_irq_active".
  refer to "Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt"

- pinctrl-n:
  Usage:      required
  Value type: <string>
  Definition: pinctrl state for each pin group
  refer to "Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt"


Example:

	fpc1020 {
			compatible = "fpc,fpc1020";
			interrupt-parent = <&tlmm>;
			interrupts = <48 0>;
			fpc,gpio_rst = <&tlmm 124 0x0>;
			fpc,gpio_irq = <&tlmm 48 0>;
			vcc_spi-supply = <&pm8953_l5>;
			vdd_io-supply  = <&pm8953_l5>;
			vdd_ana-supply = <&pm8953_l5>;
			fpc,enable-on-boot;
			pinctrl-names = "fpc1020_reset_reset",
					"fpc1020_reset_active",
					"fpc1020_irq_active";
			pinctrl-0 = <&msm_gpio_124>;
			pinctrl-1 = <&msm_gpio_124_output_high>;
			pinctrl-2 = <&msm_gpio_48>;
		};
+1 −0
Original line number Diff line number Diff line
@@ -120,6 +120,7 @@ faraday Faraday Technology Corporation
fcs	Fairchild Semiconductor
firefly	Firefly
focaltech	FocalTech Systems Co.,Ltd
fpc	Fingerprint Cards AB.
friendlyarm	Guangzhou FriendlyARM Computer Tech Co., Ltd
fsl	Freescale Semiconductor
fujitsu	Fujitsu Ltd.
+41 −0
Original line number Diff line number Diff line
@@ -188,6 +188,47 @@
			};
		};

		fpc_reset_int {
			fpc_reset_low: reset_low {
				mux {
					pins = "gpio101";
					function = "fpc_reset_gpio_low";
				};
				config {
					pins = "gpio101";
					drive-strength = <2>;
					bias-disable;
					output-low;
					};
			};

			fpc_reset_high: reset_high {
				mux {
					pins = "gpio101";
					function = "fpc_reset_gpio_high";
				};

				config {
					pins = "gpio101";
					drive-strength = <2>;
					bias-disable;
					output-high;
				};
			};

			fpc_int_low: int_low {
				mux {
					pins = "gpio93";
				};
				config {
					pins = "gpio93";
					drive-strength = <2>;
					bias-pull-down;
					input-enable;
				};
			};
		};

		/* SE 3 pin mappings */
		qupv3_se3_i2c_pins: qupv3_se3_i2c_pins {
			qupv3_se3_i2c_active: qupv3_se3_i2c_active {
+21 −0
Original line number Diff line number Diff line
@@ -219,3 +219,24 @@

	status = "ok";
};

&soc {
	fpc1020 {
		compatible = "fpc,fpc1020";
		interrupt-parent = <&tlmm>;
		interrupts = <93 0>;
		fpc,gpio_rst = <&tlmm 101 0x0>;
		fpc,gpio_irq = <&tlmm 93 0>;
		vcc_spi-supply = <&pm6150_l10>;
		vdd_io-supply  = <&pm6150_l10>;
		vdd_ana-supply = <&pm6150_l10>;
		fpc,enable-on-boot;
		pinctrl-names = "fpc1020_reset_reset",
				"fpc1020_reset_active",
				"fpc1020_irq_active";
		pinctrl-0 = <&fpc_reset_low>;
		pinctrl-1 = <&fpc_reset_high>;
		pinctrl-2 = <&fpc_int_low>;
	};

};
+1 −0
Original line number Diff line number Diff line
@@ -565,4 +565,5 @@ source "drivers/misc/mic/Kconfig"
source "drivers/misc/genwqe/Kconfig"
source "drivers/misc/echo/Kconfig"
source "drivers/misc/cxl/Kconfig"
source "drivers/misc/fpr_FingerprintCard/Kconfig"
endmenu
Loading