From 0248cf5c653b486b8553247769b45baa51c44803 Mon Sep 17 00:00:00 2001 From: wuwl10 Date: Fri, 16 Jun 2023 16:23:54 +0800 Subject: [PATCH] arm64/dt: fogor: bring up fps Add goodix GF3956 and FPC1533 fps sensor device tree configuration. Change-Id: Ic6f8934fcf3cf6cab5e81a33f950736cbe2f1f7a Signed-off-by: wuwl10 Reviewed-on: https://gerrit.mot.com/2646141 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Hujun Liao Submit-Approved: Jira Key --- qcom/fogor-fps-overlay.dtsi | 141 +++++++++++++++++------------------- 1 file changed, 68 insertions(+), 73 deletions(-) diff --git a/qcom/fogor-fps-overlay.dtsi b/qcom/fogor-fps-overlay.dtsi index 3e82631392f1..5932983d77ab 100644 --- a/qcom/fogor-fps-overlay.dtsi +++ b/qcom/fogor-fps-overlay.dtsi @@ -1,6 +1,33 @@ &tlmm { - ets_irq_active: egis_irq_active { - /* INTERRUPT */ + fps_rst_active: fps_rst_active { + /* active state */ + mux { + pins = "gpio18"; + function = "gpio"; + }; + + config { + pins = "gpio18"; + drive-strength = <2>; /* 2 MA */ + output-low; + }; + }; + + fps_rst_suspend: fps_rst_suspend { + /* sleep state */ + mux { + pins = "gpio18"; + function = "gpio"; + }; + + config { + pins = "gpio18"; + drive-strength = <2>; /* 2 MA */ + }; + }; + + fps_int_active: fps_int_active { + /* active state */ mux { pins = "gpio17"; function = "gpio"; @@ -9,94 +36,62 @@ config { pins = "gpio17"; drive-strength = <2>; /* 2 MA */ + bias-disable; input-enable; }; }; - ets_rst_high: ets_rst_high { - /* INTERRUPT */ + fps_int_suspend: fps_int_suspend { + /* sleep state */ mux { - pins = "gpio18"; + pins = "gpio17"; function = "gpio"; }; config { - pins = "gpio18"; + pins = "gpio17"; drive-strength = <2>; /* 2 MA */ - output-high; + bias-disable; + input-enable; }; }; +}; - ets_rst_low: ets_rst_low { - /* INTERRUPT */ - mux { - pins = "gpio18"; - function = "gpio"; - }; - - config { - pins = "gpio18"; - drive-strength = <2>; /* 2 MA */ - output-low; - }; - }; - - ets_vcc_high: ets_vcc_high { - /* INTERRUPT */ - mux { - pins = "gpio100"; - function = "gpio"; - }; - - config { - pins = "gpio100"; - drive-strength = <2>; /* 2 MA */ - output-high; - }; - }; - - ets_vcc_low: ets_vcc_low { - /* INTERRUPT */ - mux { - pins = "gpio100"; - function = "gpio"; - }; - - config { - pins = "gpio100"; - drive-strength = <2>; /* 2 MA */ - output-low; - }; - }; - - - - - - - - +&L21A { + regulator-max-microvolt = <3008000>; + qcom,init-voltage = <3000000>; + status = "ok"; }; &soc { - EL721: EL721 { - compatible = "fp-egistec"; + fpc: fpc_fpc1020 { + compatible = "fpc,fpc1020"; status = "ok"; - reg = <0>; + irq = <&tlmm 17 0>; + rst = <&tlmm 18 0>; interrupt-parent = <&tlmm>; - interrupts = <17 0x0>; - fp-ctrl-power; - fp-gpio-vcc-enable; - egistec,gpio_vcc_en = <&tlmm 100 0x0>; - egistec,gpio_irq = <&tlmm 17 0x0>; - egistec,gpio_reset = <&tlmm 18 0x0>; - pinctrl-names = "egis_rst_high", "egis_rst_low", "egis_irq_active", - "egis_vcc_high", "egis_vcc_low"; - pinctrl-0 = <&ets_rst_high>; - pinctrl-1 = <&ets_rst_low>; - pinctrl-2 = <&ets_irq_active>; - pinctrl-3 = <&ets_vcc_high>; - pinctrl-4 = <&ets_vcc_low>; + interrupts = <17 0>; + rgltr-ctrl-support; + fp,vdd-supply=<&L21A>; + fp,voltage-range = <3000000 3000000>; + pinctrl-names = "default", "suspend"; + pinctrl-0 = <&fps_rst_active &fps_int_active>; + pinctrl-1 = <&fps_rst_suspend &fps_int_suspend>; + }; + goodix_fingerprint{ + //status = "/chosen", "mmi,fps", "true"; + status = "ok"; + compatible = "goodix,fingerprint"; + fp-gpio-reset = <&tlmm 18 0x00>; + fp-gpio-irq = <&tlmm 17 0x00>; + rgltr-ctrl-support; + fp,vdd-supply=<&L21A>; + fp,voltage-range = <3000000 3000000>; + interrupt-parent = <&tlmm>; + interrupts = <17 0>; + interrupt-controller; + pinctrl-names = "default", "suspend"; + pinctrl-0 = <&fps_rst_active &fps_int_active>; + pinctrl-1 = <&fps_rst_suspend &fps_int_suspend>; }; - };