Message ID | 20220520125132.229191-6-angelogioacchino.delregno@collabora.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | MediaTek Helio X10 MT6795 - MT6331 PMIC Keys | expand |
On ven., mai 20, 2022 at 14:51, AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> wrote: > Add support for PMIC Keys of the MT6331 PMIC. > > Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> > --- > drivers/input/keyboard/mtk-pmic-keys.c | 21 +++++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/drivers/input/keyboard/mtk-pmic-keys.c b/drivers/input/keyboard/mtk-pmic-keys.c > index acd5aefac5f9..4a03fdfe8282 100644 > --- a/drivers/input/keyboard/mtk-pmic-keys.c > +++ b/drivers/input/keyboard/mtk-pmic-keys.c > @@ -9,6 +9,7 @@ > #include <linux/interrupt.h> > #include <linux/kernel.h> > #include <linux/mfd/mt6323/registers.h> > +#include <linux/mfd/mt6331/registers.h> > #include <linux/mfd/mt6358/registers.h> > #include <linux/mfd/mt6397/core.h> > #include <linux/mfd/mt6397/registers.h> > @@ -22,6 +23,10 @@ > #define MTK_PMIC_MT6397_PWRKEY_RST_EN BIT(6) > #define MTK_PMIC_MT6397_RST_DU_MASK GENMASK(9, 8) > > +#define MTK_PMIC_MT6331_HOMEKEY_RST_EN BIT(8) > +#define MTK_PMIC_MT6331_PWRKEY_RST_EN BIT(9) > +#define MTK_PMIC_MT6331_RST_DU_MASK GENMASK(13, 12) > + > #define MTK_PMIC_PWRKEY_INDEX 0 > #define MTK_PMIC_HOMEKEY_INDEX 1 > #define MTK_PMIC_MAX_KEY_COUNT 2 > @@ -86,6 +91,19 @@ static const struct mtk_pmic_regs mt6323_regs = { > .rst_lprst_mask = MTK_PMIC_MT6397_RST_DU_MASK, > }; > > +static const struct mtk_pmic_regs mt6331_regs = { > + .keys_regs[MTK_PMIC_PWRKEY_INDEX] = > + MTK_PMIC_KEYS_REGS(MT6331_TOPSTATUS, 0x2, > + MT6331_INT_MISC_CON, 0x4, > + MTK_PMIC_MT6331_PWRKEY_RST_EN), > + .keys_regs[MTK_PMIC_HOMEKEY_INDEX] = > + MTK_PMIC_KEYS_REGS(MT6331_TOPSTATUS, 0x4, > + MT6331_INT_MISC_CON, 0x2, > + MTK_PMIC_MT6331_HOMEKEY_RST_EN), > + .pmic_rst_reg = MT6331_TOP_RST_MISC, > + .rst_lprst_mask = MTK_PMIC_MT6331_RST_DU_MASK, > +}; > + > static const struct mtk_pmic_regs mt6358_regs = { > .keys_regs[MTK_PMIC_PWRKEY_INDEX] = > MTK_PMIC_KEYS_REGS(MT6358_TOPSTATUS, > @@ -284,6 +302,9 @@ static const struct of_device_id of_mtk_pmic_keys_match_tbl[] = { > }, { > .compatible = "mediatek,mt6323-keys", > .data = &mt6323_regs, > + }, { > + .compatible = "mediatek,mt6331-keys", > + .data = &mt6331_regs, > }, { > .compatible = "mediatek,mt6358-keys", > .data = &mt6358_regs, > -- > 2.35.1
diff --git a/drivers/input/keyboard/mtk-pmic-keys.c b/drivers/input/keyboard/mtk-pmic-keys.c index acd5aefac5f9..4a03fdfe8282 100644 --- a/drivers/input/keyboard/mtk-pmic-keys.c +++ b/drivers/input/keyboard/mtk-pmic-keys.c @@ -9,6 +9,7 @@ #include <linux/interrupt.h> #include <linux/kernel.h> #include <linux/mfd/mt6323/registers.h> +#include <linux/mfd/mt6331/registers.h> #include <linux/mfd/mt6358/registers.h> #include <linux/mfd/mt6397/core.h> #include <linux/mfd/mt6397/registers.h> @@ -22,6 +23,10 @@ #define MTK_PMIC_MT6397_PWRKEY_RST_EN BIT(6) #define MTK_PMIC_MT6397_RST_DU_MASK GENMASK(9, 8) +#define MTK_PMIC_MT6331_HOMEKEY_RST_EN BIT(8) +#define MTK_PMIC_MT6331_PWRKEY_RST_EN BIT(9) +#define MTK_PMIC_MT6331_RST_DU_MASK GENMASK(13, 12) + #define MTK_PMIC_PWRKEY_INDEX 0 #define MTK_PMIC_HOMEKEY_INDEX 1 #define MTK_PMIC_MAX_KEY_COUNT 2 @@ -86,6 +91,19 @@ static const struct mtk_pmic_regs mt6323_regs = { .rst_lprst_mask = MTK_PMIC_MT6397_RST_DU_MASK, }; +static const struct mtk_pmic_regs mt6331_regs = { + .keys_regs[MTK_PMIC_PWRKEY_INDEX] = + MTK_PMIC_KEYS_REGS(MT6331_TOPSTATUS, 0x2, + MT6331_INT_MISC_CON, 0x4, + MTK_PMIC_MT6331_PWRKEY_RST_EN), + .keys_regs[MTK_PMIC_HOMEKEY_INDEX] = + MTK_PMIC_KEYS_REGS(MT6331_TOPSTATUS, 0x4, + MT6331_INT_MISC_CON, 0x2, + MTK_PMIC_MT6331_HOMEKEY_RST_EN), + .pmic_rst_reg = MT6331_TOP_RST_MISC, + .rst_lprst_mask = MTK_PMIC_MT6331_RST_DU_MASK, +}; + static const struct mtk_pmic_regs mt6358_regs = { .keys_regs[MTK_PMIC_PWRKEY_INDEX] = MTK_PMIC_KEYS_REGS(MT6358_TOPSTATUS, @@ -284,6 +302,9 @@ static const struct of_device_id of_mtk_pmic_keys_match_tbl[] = { }, { .compatible = "mediatek,mt6323-keys", .data = &mt6323_regs, + }, { + .compatible = "mediatek,mt6331-keys", + .data = &mt6331_regs, }, { .compatible = "mediatek,mt6358-keys", .data = &mt6358_regs,
Add support for PMIC Keys of the MT6331 PMIC. Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> --- drivers/input/keyboard/mtk-pmic-keys.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+)