da850-evm: add UI Expander pushbuttons
authorBen Gardiner <bengardiner@nanometrics.ca>
Thu, 9 Dec 2010 21:51:04 +0000 (16:51 -0500)
committerKevin Hilman <khilman@deeprootsystems.com>
Wed, 22 Dec 2010 19:45:18 +0000 (11:45 -0800)
commit75929f5e2bcba7cc328fcf9a3d7ba7076946ac3a
tree7b54c518dc0e4e6987ff58ffab9a02cac2ebf28a
parent22ca466847ad477d060baed84733c495bc6e81c8
da850-evm: add UI Expander pushbuttons

This patch adds EV_KEYs for each of the 8 pushbuttons on the UI board via a
gpio-key device.

The expander is a tca6416; it controls the SEL_{A,B,C} lines which enable and
disable the peripherals found on the UI board in addition to the 8 pushbuttons
mentioned above. The reason the existing tca6416-keypad driver is not employed
is because there was no aparent way to keep the gpio lines used as
SEL_{A,B,C} registered while simultaneously registering the pushbuttons as a
tca6416-keypad instance.

Some experimentation with the polling interval was performed; we were searching
for the largest polling interval that did not affect the feel of the
responsiveness of the buttons. It is very subjective but 200ms seems to be a
good value that accepts firm pushes but rejects very light ones. The key values
assigned to the buttons were arbitrarily chosen to be F1-F8.

Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
Reviewed-by: Chris Cordahi <christophercordahi@nanometrics.ca>
CC: Govindarajan, Sriramakrishnan <srk@ti.com>
Reviewed-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
CC: Kevin Hilman <khilman@deeprootsystems.com>
CC: Gabor Juhos <juhosg@openwrt.org>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
arch/arm/mach-davinci/board-da850-evm.c