]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
Input: mtk-pmic-keys - add support for MT6359 PMIC keys
authorLouis-Alexis Eyraud <louisalexis.eyraud@collabora.com>
Thu, 3 Jul 2025 15:41:03 +0000 (17:41 +0200)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 3 Jul 2025 23:34:10 +0000 (16:34 -0700)
Add PMIC key support on MT6359 SoC.

Signed-off-by: Louis-Alexis Eyraud <louisalexis.eyraud@collabora.com>
Link: https://lore.kernel.org/r/20250703-add-mt6359-pmic-keys-support-v1-1-21a4d2774e34@collabora.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/keyboard/mtk-pmic-keys.c

index 061d48350df661dd26832b307e1460ee8b8fd535..50e2e792c91d2626d3f282d04a1db60845827ef2 100644 (file)
@@ -12,6 +12,7 @@
 #include <linux/mfd/mt6331/registers.h>
 #include <linux/mfd/mt6357/registers.h>
 #include <linux/mfd/mt6358/registers.h>
+#include <linux/mfd/mt6359/registers.h>
 #include <linux/mfd/mt6397/core.h>
 #include <linux/mfd/mt6397/registers.h>
 #include <linux/module.h>
@@ -117,6 +118,19 @@ static const struct mtk_pmic_regs mt6358_regs = {
        .rst_lprst_mask = MTK_PMIC_RST_DU_MASK,
 };
 
+static const struct mtk_pmic_regs mt6359_regs = {
+       .keys_regs[MTK_PMIC_PWRKEY_INDEX] =
+               MTK_PMIC_KEYS_REGS(MT6359_TOPSTATUS,
+                                  0x2, MT6359_PSC_TOP_INT_CON0, 0x5,
+                                  MTK_PMIC_PWRKEY_RST),
+       .keys_regs[MTK_PMIC_HOMEKEY_INDEX] =
+               MTK_PMIC_KEYS_REGS(MT6359_TOPSTATUS,
+                                  0x8, MT6359_PSC_TOP_INT_CON0, 0xa,
+                                  MTK_PMIC_HOMEKEY_RST),
+       .pmic_rst_reg = MT6359_TOP_RST_MISC,
+       .rst_lprst_mask = MTK_PMIC_RST_DU_MASK,
+};
+
 struct mtk_pmic_keys_info {
        struct mtk_pmic_keys *keys;
        const struct mtk_pmic_keys_regs *regs;
@@ -296,6 +310,9 @@ static const struct of_device_id of_mtk_pmic_keys_match_tbl[] = {
        }, {
                .compatible = "mediatek,mt6358-keys",
                .data = &mt6358_regs,
+       }, {
+               .compatible = "mediatek,mt6359-keys",
+               .data = &mt6359_regs,
        }, {
                /* sentinel */
        }