Hello,
I want to use 4 row,4 col on my board.I have activated the keypad driver in the kernel and configured the column and row keypads in the board file.
In the device filesystem is the entry :
I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="imx-keypad"
P: Phys=
S: Sysfs=/devices/platform/imx-keypad/input/input1
U: Uniq=
H: Handlers=event1
B: PROP=0
B: EV=100013
B: KEY=3 0 0 0 0 0 0 40000800 1680 0 78000000 10000ffe
B: MSC=10
the interrupts is:
114: 0 0 0 0 GIC imx-keypad
But,when press then button,there is no interrupts on.
How to set clk? The BSP has not kpp clk.
keypad->clk = clk_get(&pdev->dev, "kpp");
Has somebody an idea what could be the reason?
THX
Solved! Go to Solution.
Hi,
i.MX KPP is designed to interface with a keypad matrix with 2-point contact or 3-point contact keys. If your application requires a different configuration, you can reference (in Linux) Documentation/devicetree/bindings/input/imx-keypad.txt to add the keymap in kpp driver configuration.
Also can you add debug message in drivers/input/keyboard/imx_keypad.c to check whether kpp driver is correctly loaded.
Additionally, in Linux BSP, the KPP driver does not ready for wakeup (generating interrupts in Suspend mode). The attached patch (for BSP L3.0.35_12.10.02_GA) enables KPP key detection in suspend mode (i.MX6SL).
Regarding Android integration, you could check the KPP configuration on the init.rc file. Please take a look at the following thread:
Hope this will be useful for you.
Best regards!
/Carlos
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi,
i.MX KPP is designed to interface with a keypad matrix with 2-point contact or 3-point contact keys. If your application requires a different configuration, you can reference (in Linux) Documentation/devicetree/bindings/input/imx-keypad.txt to add the keymap in kpp driver configuration.
Also can you add debug message in drivers/input/keyboard/imx_keypad.c to check whether kpp driver is correctly loaded.
Additionally, in Linux BSP, the KPP driver does not ready for wakeup (generating interrupts in Suspend mode). The attached patch (for BSP L3.0.35_12.10.02_GA) enables KPP key detection in suspend mode (i.MX6SL).
Regarding Android integration, you could check the KPP configuration on the init.rc file. Please take a look at the following thread:
Hope this will be useful for you.
Best regards!
/Carlos
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi,Carlos
Thanks for your answer,I have solved this problem.I just set the wrong keymap.
Your another advice is also very useful to me.
Best regards!
YanpinJiang
Hi YanpinJiang,
Actually I am also trying the same thing in Linux bu I am confused in driver, Should I make any modifications in driver? Can you please share your board file and the Keymap you set ? may it solve my problem
Thanks in advance
I sorry I have not seen your message.