[RFC][PATCH 0/5] omap1: Amstrad Delta: add support for external keyboard
Janusz Krzysztofik
jkrzyszt at tis.icnet.pl
Fri Dec 11 09:39:34 EST 2009
(resending with LAKML added to CC: after Tony's suggestion)
---------- Original message ----------
Subject: [RFC][PATCH 0/5] omap1: Amstrad Delta: add support for external
keyboard
Date: Thursday 10 December 2009
Od: Janusz Krzysztofik <jkrzyszt at tis.icnet.pl>
Do: linux-omap at vger.kernel.org
This series of patches adds support for an external keyboard (called
mailboard) connected to the Amstrad Delta (E3) videophone.
The series is based on a patch by Matt Callow, created against
linux-omap-2.6.19[1], initially submitted to the e3-hacking mailing list in
April 2006[2].
Since the keyboard serial clock line is connected to a GPIO line, it generates
interrupts every single bit received. In order to handle this correctly, the
code makes use of a FIQ hardware feature. Since all MPU GPIO generated
interrupts would be converted to FIQ, the handler must include support for all
supported MPU GPIO connected devices: the keyboard, a modem and a hook switch.
My modifications to the original patch include:
- split into several patches,
- refresh against a recent linux version,
- a lot of cleanups, mainly to get rid of checkpatch reported issues,
- add support for also handling interrupts generated by a GPIO line that the
recently added hook switch hangs off.
Created and tested against linux-omap for-next,
commit 82f1d8f22f2c65e70206e40a6f17688bf64a892c dated 2009-12-02.
Janusz Krzysztofik(5)
omap1: Amstrad Delta: add FIQ handler for serial keyboard port interrupt
processing
omap1: Amstrad Delta: add a handler for processing interrupts generated by
the FIQ routine
omap1: Amstrad Delta: use FIQ for processing MPU GPIO interrupts
input: serio: add support for Amstrad Delta serial keyboard port
omap1: Amstrad Delta: modify defconfig for external keyboard support
arch/arm/configs/ams_delta_defconfig | 2
arch/arm/mach-omap1/Kconfig | 8
arch/arm/mach-omap1/Makefile | 3
arch/arm/mach-omap1/ams-delta-fiq-handler.S | 342 +++++++++++++++++++++++
arch/arm/mach-omap1/ams-delta-fiq.c | 175 +++++++++++
arch/arm/mach-omap1/board-ams-delta.c | 6
arch/arm/mach-omap1/include/mach/ams-delta-fiq.h | 56 +++
arch/arm/plat-omap/include/plat/irqs.h | 4
drivers/input/serio/Kconfig | 9
drivers/input/serio/Makefile | 1
drivers/input/serio/ams_delta_keyboard.c | 240 ++++++++++++++++
11 files changed, 845 insertions(+), 1 deletion(-)
[1] http://the.earth.li/pub/e3/2.6.19/ams-delta-keyboard.patch
[2] http://www.earth.li/pipermail/e3-hacking/2006-April/000453.html
---
There is one minor issue that I have not dealt with yet: when built with
CONFIG_OMAP_RESET_CLOCKS=y, the keyboard driver stops working. I have no idea
how I could find which clock I should enable to get it working regardless of
boot loader used. Any suggestions?
Thanks,
Janusz
-------------------------------------------------------
More information about the linux-arm-kernel
mailing list