STM32MP135F-DK – Display corruption and system hang after GPIO keypad configuration
Hi,
Greeting!
I am working on the STM32MP135F-DK board and trying to interface a 4x5 matrix keypad using GPIOs.
I configured the keypad as follows:
Columns (C1–C5):
C1 → PE1 (Pin 37)
C2 → PF11 (Pin 35)
C3 → PF9 (Pin 33)
C4 → PD13 (Pin 31)
C5 → PE6 (Pin 29)
Rows (R1–R4):
R1 → PA0 (Pin 40)
R2 → PA5 (Pin 38)
R3 → PA7 (Pin 36)
R4 → PE5 (Pin 32)
After modifying the device tree and flashing the updated .dtb, I observe the following issues:
The display becomes glitchy.
The boot logo appears corrupted.
The system becomes unresponsive after boot.
Recovery is only possible after reflashing the starter package using STM32CubeProgrammer.
From my analysis:
Manual GPIO control seems to work correctly.
The matrix_keypad driver is loaded not properly.
matrix_keypad 20480 0
matrix_keymap 12288 1 matrix_keypadI suspect this might be related to incorrect GPIO or pinmux configuration, possibly causing a conflict with other peripherals (e.g., display).
Could you please help identify:
The root cause of this issue?
Whether these GPIOs conflict with LTDC or other peripherals?
The correct way to configure GPIOs for a matrix keypad on this board?
Any guidance would be greatly appreciated.
Thank you!!
Regards,
Pragya
