diff --git a/qcom/rhodep-fps-overlay.dtsi b/qcom/rhodep-fps-overlay.dtsi index 3d520dc22193..a6d68b415f87 100644 --- a/qcom/rhodep-fps-overlay.dtsi +++ b/qcom/rhodep-fps-overlay.dtsi @@ -69,22 +69,49 @@ }; }; - fps_rst_active: fps_rst_active { - /* active state */ + ft_power_high: ft_power_high { mux { - pins = "gpio18"; + pins = "gpio6"; function = "gpio"; }; config { - pins = "gpio18"; - drive-strength = <2>; /* 2 MA */ + pins = "gpio6"; + drive-strength = <2>; + bias-disable; + output-high; + }; + }; + + ft_power_low: ft_power_low { + mux { + pins = "gpio6"; + function = "gpio"; + }; + + config { + pins = "gpio6"; + drive-strength = <2>; + bias-disable; output-low; }; }; - fps_rst_suspend: fps_rst_suspend { - /* sleep state */ + ft_eint_as_int: ft_eint_as_int { + mux { + pins = "gpio17"; + function = "gpio"; + }; + + config { + pins = "gpio17"; + drive-strength = <2>; + bias-disable; + input-enable; + }; + }; + + ft_reset_high: ft_reset_high { mux { pins = "gpio18"; function = "gpio"; @@ -92,37 +119,23 @@ config { pins = "gpio18"; - drive-strength = <2>; /* 2 MA */ + drive-strength = <2>; + bias-disable; + output-high; }; }; - fps_int_active: fps_int_active { - /* active state */ + ft_reset_low: ft_reset_low { mux { - pins = "gpio17"; + pins = "gpio18"; function = "gpio"; }; config { - pins = "gpio17"; - drive-strength = <2>; /* 2 MA */ + pins = "gpio18"; + drive-strength = <2>; bias-disable; - input-enable; - }; - }; - - fps_int_suspend: fps_int_suspend { - /* sleep state */ - mux { - pins = "gpio17"; - function = "gpio"; - }; - - config { - pins = "gpio17"; - drive-strength = <2>; /* 2 MA */ - bias-disable; - input-enable; + output-low; }; }; }; @@ -148,17 +161,22 @@ pinctrl-4 = <&ets_vcc_low>; }; - silead: silead { - compatible = "sil,silead_fp"; + ft9362: ft9362 { status = "ok"; - reg = <0>; + compatible = "focaltech,fingerprint"; interrupt-parent = <&tlmm>; interrupts = <17 0x0>; - avdd-gpios = <&tlmm 38 0x0>; - irq-gpios = <&tlmm 17 0x0>; - rst-gpios = <&tlmm 18 0x0>; - pinctrl-names = "default", "suspend"; - pinctrl-0 = <&fps_rst_active &fps_int_active>; - pinctrl-1 = <&fps_rst_suspend &fps_int_suspend>; + fp,reset_gpio = <&tlmm 18 0>; + fp,irq_gpio = <&tlmm 17 0>; + fp,vdd_gpio = <&tlmm 6 0>; + + pinctrl-names = "fpsensor_finger_power_high","fpsensor_finger_power_low", + "fpsensor_finger_rst_low","fpsensor_finger_rst_high", + "fpsensor_eint_as_int"; + pinctrl-0 = <&ft_power_high>; + pinctrl-1 = <&ft_power_low>; + pinctrl-2 = <&ft_reset_low>; + pinctrl-3 = <&ft_reset_high>; + pinctrl-4 = <&ft_eint_as_int>; }; };