Skip to content

Commit 22e0b15

Browse files
gibssonsmb49
authored andcommitted
Input: mtk-pmic-keys - fix possible null pointer dereference
BugLink: https://bugs.launchpad.net/bugs/2115252 commit 11cdb50 upstream. In mtk_pmic_keys_probe, the regs parameter is only set if the button is parsed in the device tree. However, on hardware where the button is left floating, that node will most likely be removed not to enable that input. In that case the code will try to dereference a null pointer. Let's use the regs struct instead as it is defined for all supported platforms. Note that it is ok setting the key reg even if that latter is disabled as the interrupt won't be enabled anyway. Fixes: b581acb ("Input: mtk-pmic-keys - transfer per-key bit in mtk_pmic_keys_regs") Signed-off-by: Gary Bisson <[email protected]> Cc: [email protected] Signed-off-by: Dmitry Torokhov <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]> CVE-2025-37972 Signed-off-by: Manuel Diewald <[email protected]> Signed-off-by: Stefan Bader <[email protected]>
1 parent 75c5b9b commit 22e0b15

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

drivers/input/keyboard/mtk-pmic-keys.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -147,8 +147,8 @@ static void mtk_pmic_keys_lp_reset_setup(struct mtk_pmic_keys *keys,
147147
u32 value, mask;
148148
int error;
149149

150-
kregs_home = keys->keys[MTK_PMIC_HOMEKEY_INDEX].regs;
151-
kregs_pwr = keys->keys[MTK_PMIC_PWRKEY_INDEX].regs;
150+
kregs_home = &regs->keys_regs[MTK_PMIC_HOMEKEY_INDEX];
151+
kregs_pwr = &regs->keys_regs[MTK_PMIC_PWRKEY_INDEX];
152152

153153
error = of_property_read_u32(keys->dev->of_node, "power-off-time-sec",
154154
&long_press_debounce);

0 commit comments

Comments
 (0)