arm64/dt: fogor: bring up fps

Add goodix GF3956 and FPC1533 fps sensor device
tree configuration.

Change-Id: Ic6f8934fcf3cf6cab5e81a33f950736cbe2f1f7a
Signed-off-by: wuwl10 <wuwl10@lenovo.com>
Reviewed-on: https://gerrit.mot.com/2646141
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Hujun Liao <liaohj@motorola.com>
Submit-Approved: Jira Key
This commit is contained in:
wuwl10 2023-06-16 16:23:54 +08:00 • committed by panyq6
commit 0248cf5c65

View file

@ -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>;
};
};