Hi,
I am using IMX6UL Y2 version, I use imx-keypad driver to form a matrix keyboard. The driver works fine, for some keys, some keys always pressed which ROW0 and ROW1 always read as low. Other keys tie to ROW2 and ROW3 work fine. the following it is the dts. Any idea to solve this issue?
pinctrl_kpp_1: imx_kpp {
fsl,pins = <
MX6UL_PAD_ENET1_RX_DATA0__KPP_ROW00 0x1b010
MX6UL_PAD_ENET1_RX_EN__KPP_ROW01 0x1b010
MX6UL_PAD_ENET1_TX_DATA1__KPP_ROW02 0x1b010
MX6UL_PAD_ENET1_TX_CLK__KPP_ROW03 0x1b010
MX6UL_PAD_ENET1_RX_DATA1__KPP_COL00 0x110b0
MX6UL_PAD_ENET1_TX_DATA0__KPP_COL01 0x110b0
MX6UL_PAD_ENET1_TX_EN__KPP_COL02 0x110b0
MX6UL_PAD_ENET1_RX_ER__KPP_COL03 0x110b0
>;
};
&kpp {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_kpp_1>;
clocks = <&clks IMX6UL_CLK_KPP>,
<&clks IMX6UL_CLK_IPG> ;
clock-names = "kpp","ipg";
linux,keymap = <
0x0000003B /* F1(59) */
0x0100003F /* F5(63) */
0x02000069 /* left(105) */
0x03000067 /* up(103) */
0x0001003C /* F2(60) */
0x01010040 /* F6(64) */
0x0201001c /* enter(28) */
0x0301006C /* down(108) */
0x0002003D /* F3(61) */
0x01020041 /* F7(65) */
0x02020001 /* escape(1) */
0x0302006A /* right(106) */
0x0003003E /* F4(62) */
0x01030042 /* F8(66) */
0x02030000 /* spare */
0x03030000 /* spare */
>;
};