summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts
diff options
context:
space:
mode:
authorAngeloGioacchino Del Regno <angelogioacchino.delregno@somainline.org>2021-09-09 15:38:23 +0300
committerBjorn Andersson <bjorn.andersson@linaro.org>2021-09-28 01:47:57 +0300
commitcea83511353d896be613a69ccee1c464e68686f6 (patch)
tree21f5c890792f07cb49bee31e252b695a8e2ac9c8 /arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts
parentf66ea51f0e477b8a8ceff3a6257df163c54af478 (diff)
downloadlinux-cea83511353d896be613a69ccee1c464e68686f6.tar.xz
arm64: dts: qcom: msm8998-fxtec-pro1: Add tlmm keyboard keys
This device has a physical matrix keyboard, connected to a GPIO expander, for which there's still no support yet. Though, some of the keys are connected to the MSM8998 GPIOs and not as a matrix, so these can be added. Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@somainline.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20210909123823.368199-4-angelogioacchino.delregno@somainline.org
Diffstat (limited to 'arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts')
-rw-r--r--arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts64
1 files changed, 64 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts b/arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts
index deabb00758e3..49705fe655ee 100644
--- a/arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts
+++ b/arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts
@@ -43,6 +43,62 @@
};
};
+ gpio-kb-extra-keys {
+ compatible = "gpio-keys";
+ input-name = "extra-kb-keys";
+ label = "Keyboard extra keys";
+ pinctrl-names = "default";
+ pinctrl-0 = <&gpio_kb_pins_extra>;
+
+ home {
+ label = "Home";
+ gpios = <&tlmm 21 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_HOMEPAGE>;
+ debounce-interval = <15>;
+ linux,can-disable;
+ };
+
+ super-l {
+ label = "Super Left";
+ gpios = <&tlmm 32 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_FN>;
+ debounce-interval = <15>;
+ linux,can-disable;
+ };
+
+ super-r {
+ label = "Super Right";
+ gpios = <&tlmm 33 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_FN>;
+ debounce-interval = <15>;
+ linux,can-disable;
+ };
+
+ shift {
+ label = "Shift";
+ gpios = <&tlmm 114 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_RIGHTSHIFT>;
+ debounce-interval = <15>;
+ linux,can-disable;
+ };
+
+ ctrl {
+ label = "Ctrl";
+ gpios = <&tlmm 128 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_LEFTCTRL>;
+ debounce-interval = <15>;
+ linux,can-disable;
+ };
+
+ alt {
+ label = "Alt";
+ gpios = <&tlmm 129 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_LEFTALT>;
+ debounce-interval = <15>;
+ linux,can-disable;
+ };
+ };
+
gpio-keys {
compatible = "gpio-keys";
input-name = "side-buttons";
@@ -205,6 +261,14 @@
drive-strength = <2>;
};
+ gpio_kb_pins_extra: gpio-kb-pins-extra {
+ pins = "gpio21", "gpio32", "gpio33", "gpio114",
+ "gpio128", "gpio129";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+
ts_vio_default: ts-vio-def {
pins = "gpio81";
function = "gpio";