Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9e3aaac3 authored by wanzongshun's avatar wanzongshun Committed by Russell King
Browse files

ARM: 6232/1: add nuc900 keypad arch platform data



This patch is to add nuc900 keypad arch platform data.

Signed-off-by: default avatarWan ZongShun <mcuos.com@gmail.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 6a446b90
Loading
Loading
Loading
Loading
+37 −0
Original line number Diff line number Diff line
@@ -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"

@@ -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,
@@ -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*/