Input: PS/2 gpio bit banging driver for serio bus
authorDanilo Krummrich <danilokrummrich@dk-develop.de>
Mon, 28 Aug 2017 16:59:20 +0000 (09:59 -0700)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Mon, 28 Aug 2017 17:32:10 +0000 (10:32 -0700)
commit9ee0a0558819e63d189426c953668fe1ce7cb637
tree3fa59eab6b045632a2cd119dbd206d9e2110ece5
parent0ca0681002587d56ebadc16a6c6653028c3c5cbf
Input: PS/2 gpio bit banging driver for serio bus

This driver provides PS/2 serio bus support by implementing bit banging
with the GPIO API. The GPIO pins, data and clock, can be configured with
a node in the device tree or by generic device properties (GDP).

Writing to a device is supported as well, though it is possible timings
can not be halt as they are tough and difficult to reach with bit banging.
Therefore it can be configured (also in DT and GDP) whether the serio
write function should be available for clients.

This driver is for development purposes and not recommended for productive
use. However, this driver can be useful e.g. when no USB port is available
or using old peripherals is desired as PS/2 controller chips getting rare.

This driver was tested on bcm2825 and on Kirin 960 and it worked well
together with the atkbd and psmouse driver.

Signed-off-by: Danilo Krummrich <danilokrummrich@dk-develop.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Documentation/devicetree/bindings/serio/ps2-gpio.txt [new file with mode: 0644]
Documentation/gpio/drivers-on-gpio.txt
drivers/input/serio/Kconfig
drivers/input/serio/Makefile
drivers/input/serio/ps2-gpio.c [new file with mode: 0644]