Hello,
I am using 3x2 keypad and below is my interfacing of keypad with iMX-6 and part of dtsi file:
where the interfacing with rows are like:
KEY_ROW0
KEY_ROW2
and where the interfacing with columns are like:
KEY_COL0
KEY_COL2
KEY_COL4
&kpp {
compatible = "fsl,imx6q-kpp", "fsl,imx21-kpp";
clocks = <&clks IMX6QDL_CLK_IPG>;
pinctrl-0 = <&pinctrl_kpp>;
linux,keymap = <
MATRIX_KEY(0x0, 0x0, KEY_U) //ROW0 COL0 UP
MATRIX_KEY(0x0, 0x2, KEY_D) //ROW0 COL2 DOWN
MATRIX_KEY(0x0, 0x4, KEY_E) //ROW0 COL4 ENTER
MATRIX_KEY(0x2, 0x0, KEY_C) //ROW2 COL0 ESC
MATRIX_KEY(0x2, 0x2, KEY_R) //ROW2 COL2 RIGHT
MATRIX_KEY(0x2, 0x4, KEY_L) //ROW2 COL4 LEFT
>;
keypad,num-rows = <2>;
keypad,num-columns = <3>;
};
pinctrl_kpp:kpp_grp_1{
fsl,pins = <
MX6QDL_PAD_KEY_COL0__KEY_COL0 0x80000000
MX6QDL_PAD_KEY_ROW0__KEY_ROW0 0x80000000
MX6QDL_PAD_KEY_COL2__KEY_COL2 0x80000000
MX6QDL_PAD_KEY_ROW2__KEY_ROW2 0x80000000
MX6QDL_PAD_KEY_COL4__KEY_COL4 0x80000000
>;
};
On boot, keypad driver is throwing an error:
"too many keys pressed, control pins initialisation"
Can someone state me the changes I have to do and solution of the problem.
Thanks and Regards,
Purvi
I have solved it by my guide's help.
Thank you