Skip to content

Commit

Permalink
ARM: 6232/1: add nuc900 keypad arch platform data
Browse files Browse the repository at this point in the history
This patch is to add nuc900 keypad arch platform data.

Signed-off-by: Wan ZongShun <mcuos.com@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
wanzongshun authored and Russell King committed Jul 22, 2010
1 parent 6a446b9 commit 9e3aaac
Showing 1 changed file with 37 additions and 0 deletions.
37 changes: 37 additions & 0 deletions arch/arm/mach-w90x900/dev.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
#include <mach/map.h>
#include <mach/fb.h>
#include <mach/regs-ldm.h>
#include <mach/w90p910_keypad.h>

#include "cpu.h"

Expand Down Expand Up @@ -362,6 +363,39 @@ struct platform_device nuc900_device_fmi = {

/* KPI controller*/

static int nuc900_keymap[] = {
KEY(0, 0, KEY_A),
KEY(0, 1, KEY_B),
KEY(0, 2, KEY_C),
KEY(0, 3, KEY_D),

KEY(1, 0, KEY_E),
KEY(1, 1, KEY_F),
KEY(1, 2, KEY_G),
KEY(1, 3, KEY_H),

KEY(2, 0, KEY_I),
KEY(2, 1, KEY_J),
KEY(2, 2, KEY_K),
KEY(2, 3, KEY_L),

KEY(3, 0, KEY_M),
KEY(3, 1, KEY_N),
KEY(3, 2, KEY_O),
KEY(3, 3, KEY_P),
};

static struct matrix_keymap_data nuc900_map_data = {
.keymap = nuc900_keymap,
.keymap_size = ARRAY_SIZE(nuc900_keymap),
};

struct w90p910_keypad_platform_data nuc900_keypad_info = {
.keymap_data = &nuc900_map_data,
.prescale = 0xfa,
.debounce = 0x50,
};

static struct resource nuc900_kpi_resource[] = {
[0] = {
.start = W90X900_PA_KPI,
Expand All @@ -381,6 +415,9 @@ struct platform_device nuc900_device_kpi = {
.id = -1,
.num_resources = ARRAY_SIZE(nuc900_kpi_resource),
.resource = nuc900_kpi_resource,
.dev = {
.platform_data = &nuc900_keypad_info,
}
};

/* LCD controller*/
Expand Down

0 comments on commit 9e3aaac

Please sign in to comment.