Keypad

Welcome to the OMAP4 Keypad Controller wiki.

Introduction
OMAP4 Keyboard Controller includes the following features:


 * Support for multiconfiguration keyboard up to 9 rows x 9 columns
 * Each key coded in one bit in two 32-bit registers
 * Long-key value or repeat timing reconfigurable on the fly
 * Event detection on key press and key release
 * Multikey-press detection and deconding
 * Long-key detection or prolonged key press
 * Some others

List of Features Supported
The following implementations are supported


 * Input Subsystem
 * HWMOD Framework

System Architectural Diagram
To be added


 * Input Subsystem
 * Generic Linux framework for all input devices (keyboard, mouse, touchscreen)
 * Defines a standard set of events
 * Interface to user space through /sys/class/input


 * Evdev
 * Generic way for input device events to be accessible under /dev/input/eventX

Feature Status Summary
Summary of completed, ongoing and planned features in the Keyboard driver.

Defect Status Summary
Summary of completed, ongoing and planned defect fixes in the Keyboard driver.

FAQ
TBD

KEYBOARD01 OMAP4 Keyboard Controller Support
No ongoing development; waiting for review comments

Defect Status Details
None reported so far

Future Development Plan
None at present

Unit Testing Procedures
A simple cat to devfs entry, you should see some data while depressing keys
 * 1) cat /dev/input/event[number]

If you want to check key codes then use use evtest evtest
 * 1) evtest /dev/input/event[number]

You may want to check also interrupts, keyboard shall have one irq assigned
 * 1) cat /proc/interrupts

A complete list of test scenarios to be added

Submit Your Ideas Here
Please list them as separate subsections (use ===title===). Please include your name, email ID and date for easy processing.

Owner
Manjunath GK 

Patches Merged in kernel.org
None

Current Status of Patches in Omapzoom Tree
None