linux/drivers/staging/nvec
Julian Andres Klode 0cab4cb852 staging: nvec: Rewrite the interrupt handler
Rewrite the interrupt handler to use a state machine similar to
that found in the various kernels for the Advent Vega. This also
changes the code to use the new functions introduced in the
previous commits.

This also merges the rewrite sent in August 2011 by Marc
Dietrich, and thus also includes code by him. His original
patch can be found on the mailing list.

Signed-off-by: Julian Andres Klode <jak@jak-linux.org>
Acked-by: Marc Dietrich <marvin24@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-09-29 17:41:33 -07:00
..
Kconfig staging: nvec: fix Kconfig dependencies 2011-09-29 17:40:40 -07:00
Makefile staging: nvec: add LED support 2011-09-29 17:40:38 -07:00
nvec-keytable.h staging: nvec: coding style fixes / add copyright notice 2011-09-29 17:40:37 -07:00
nvec.c staging: nvec: Rewrite the interrupt handler 2011-09-29 17:41:33 -07:00
nvec.h staging: nvec: Rewrite the interrupt handler 2011-09-29 17:41:33 -07:00
nvec_kbd.c staging: nvec: Rewrite the interrupt handler 2011-09-29 17:41:33 -07:00
nvec_leds.c staging: nvec: add LED support 2011-09-29 17:40:38 -07:00
nvec_power.c staging: nvec: coding style fixes / add copyright notice 2011-09-29 17:40:37 -07:00
nvec_ps2.c staging: nvec: coding style fixes / add copyright notice 2011-09-29 17:40:37 -07:00
README Staging: initial version of the nvec driver 2011-05-19 15:36:10 -07:00
TODO staging: nvec: update ToDo list 2011-09-29 17:40:39 -07:00

NVEC: An NVidia compliant Embedded Controller Protocol Implemenation

This is an implementation of the NVEC protocol used to communicate with an
embedded controller (EC) via I2C bus. The EC is an I2C master while the host
processor is the I2C slave. Requests from the host processor to the EC are
started by triggering a gpio line.

There is no written documentation of the protocol available to the public,
but the source code[1] of the published nvec reference drivers can be a guide.
This driver is currently only used by the AC100 project[2], but it is likely,
that other Tegra boards (not yet mainlined, if ever) also use it.

[1] e.g. http://nv-tegra.nvidia.com/gitweb/?p=linux-2.6.git;a=tree;f=arch/arm/mach-tegra/nvec;hb=android-tegra-2.6.32
[2] http://gitorious.org/ac100, http://launchpad.net/ac100