Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
ep93xx_keypad.c File Reference
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/interrupt.h>
#include <linux/clk.h>
#include <linux/io.h>
#include <linux/input/matrix_keypad.h>
#include <linux/slab.h>
#include <mach/hardware.h>
#include <linux/platform_data/keypad-ep93xx.h>

Go to the source code of this file.

Data Structures

struct  ep93xx_keypad
 

Macros

#define KEY_INIT   0x00 /* Key Scan Initialization register */
 
#define KEY_DIAG   0x04 /* Key Scan Diagnostic register */
 
#define KEY_REG   0x08 /* Key Value Capture register */
 
#define KEY_INIT_DBNC_MASK   (0x00ff0000)
 
#define KEY_INIT_DBNC_SHIFT   (16)
 
#define KEY_INIT_DIS3KY   (1<<15)
 
#define KEY_INIT_DIAG   (1<<14)
 
#define KEY_INIT_BACK   (1<<13)
 
#define KEY_INIT_T2   (1<<12)
 
#define KEY_INIT_PRSCL_MASK   (0x000003ff)
 
#define KEY_INIT_PRSCL_SHIFT   (0)
 
#define KEY_DIAG_MASK   (0x0000003f)
 
#define KEY_DIAG_SHIFT   (0)
 
#define KEY_REG_K   (1<<15)
 
#define KEY_REG_INT   (1<<14)
 
#define KEY_REG_2KEYS   (1<<13)
 
#define KEY_REG_1KEY   (1<<12)
 
#define KEY_REG_KEY2_MASK   (0x00000fc0)
 
#define KEY_REG_KEY2_SHIFT   (6)
 
#define KEY_REG_KEY1_MASK   (0x0000003f)
 
#define KEY_REG_KEY1_SHIFT   (0)
 
#define EP93XX_MATRIX_SIZE   (EP93XX_MATRIX_ROWS * EP93XX_MATRIX_COLS)
 

Functions

 module_platform_driver (ep93xx_keypad_driver)
 
 MODULE_LICENSE ("GPL")
 
 MODULE_AUTHOR ("H Hartley Sweeten <[email protected]>")
 
 MODULE_DESCRIPTION ("EP93xx Matrix Keypad Controller")
 
 MODULE_ALIAS ("platform:ep93xx-keypad")
 

Macro Definition Documentation

#define EP93XX_MATRIX_SIZE   (EP93XX_MATRIX_ROWS * EP93XX_MATRIX_COLS)

Definition at line 65 of file ep93xx_keypad.c.

#define KEY_DIAG   0x04 /* Key Scan Diagnostic register */

Definition at line 38 of file ep93xx_keypad.c.

#define KEY_DIAG_MASK   (0x0000003f)

Definition at line 52 of file ep93xx_keypad.c.

#define KEY_DIAG_SHIFT   (0)

Definition at line 53 of file ep93xx_keypad.c.

#define KEY_INIT   0x00 /* Key Scan Initialization register */

Definition at line 37 of file ep93xx_keypad.c.

#define KEY_INIT_BACK   (1<<13)

Definition at line 46 of file ep93xx_keypad.c.

#define KEY_INIT_DBNC_MASK   (0x00ff0000)

Definition at line 42 of file ep93xx_keypad.c.

#define KEY_INIT_DBNC_SHIFT   (16)

Definition at line 43 of file ep93xx_keypad.c.

#define KEY_INIT_DIAG   (1<<14)

Definition at line 45 of file ep93xx_keypad.c.

#define KEY_INIT_DIS3KY   (1<<15)

Definition at line 44 of file ep93xx_keypad.c.

#define KEY_INIT_PRSCL_MASK   (0x000003ff)

Definition at line 48 of file ep93xx_keypad.c.

#define KEY_INIT_PRSCL_SHIFT   (0)

Definition at line 49 of file ep93xx_keypad.c.

#define KEY_INIT_T2   (1<<12)

Definition at line 47 of file ep93xx_keypad.c.

#define KEY_REG   0x08 /* Key Value Capture register */

Definition at line 39 of file ep93xx_keypad.c.

#define KEY_REG_1KEY   (1<<12)

Definition at line 59 of file ep93xx_keypad.c.

#define KEY_REG_2KEYS   (1<<13)

Definition at line 58 of file ep93xx_keypad.c.

#define KEY_REG_INT   (1<<14)

Definition at line 57 of file ep93xx_keypad.c.

#define KEY_REG_K   (1<<15)

Definition at line 56 of file ep93xx_keypad.c.

#define KEY_REG_KEY1_MASK   (0x0000003f)

Definition at line 62 of file ep93xx_keypad.c.

#define KEY_REG_KEY1_SHIFT   (0)

Definition at line 63 of file ep93xx_keypad.c.

#define KEY_REG_KEY2_MASK   (0x00000fc0)

Definition at line 60 of file ep93xx_keypad.c.

#define KEY_REG_KEY2_SHIFT   (6)

Definition at line 61 of file ep93xx_keypad.c.

Function Documentation

MODULE_ALIAS ( "platform:ep93xx-keypad"  )
MODULE_AUTHOR ( "H Hartley Sweeten <[email protected]>"  )
MODULE_DESCRIPTION ( "EP93xx Matrix Keypad Controller )
MODULE_LICENSE ( "GPL"  )
module_platform_driver ( ep93xx_keypad_driver  )