summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorNitin Garg <nitin.garg@freescale.com>2014-05-27 14:26:54 -0500
committerNitin Garg <nitin.garg@freescale.com>2014-05-27 22:18:37 -0500
commitb79371410aa44972dea53d5c19d256170928dcbd (patch)
tree6927b8dda8141ac55833a0a28f169462a9d55feb /arch
parent1309b1ed78b3156310cc1564d669e8e2b1c0ce5f (diff)
downloadu-boot-imx-b79371410aa44972dea53d5c19d256170928dcbd.zip
u-boot-imx-b79371410aa44972dea53d5c19d256170928dcbd.tar.gz
u-boot-imx-b79371410aa44972dea53d5c19d256170928dcbd.tar.bz2
ENGR00315499-9: ARM:iMX6SL EVK: Add keyboard support
i.MX6sl evk has keyboards on the board, so add mxc_keyb driver to support key press checking. Signed-off-by: Nitin Garg <nitin.garg@freescale.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/include/asm/arch-mx6/mx6sl_pins.h9
-rw-r--r--arch/arm/include/asm/imx-common/mxc_key_defs.h40
2 files changed, 49 insertions, 0 deletions
diff --git a/arch/arm/include/asm/arch-mx6/mx6sl_pins.h b/arch/arm/include/asm/arch-mx6/mx6sl_pins.h
index 9e68d95..a5d58fe 100644
--- a/arch/arm/include/asm/arch-mx6/mx6sl_pins.h
+++ b/arch/arm/include/asm/arch-mx6/mx6sl_pins.h
@@ -76,5 +76,14 @@ enum {
MX6_PAD_EPDC_SDCE1__GPIO_1_28 = IOMUX_PAD(0x03F4, 0x0104, 5, 0x0000, 0, 0),
MX6_PAD_EPDC_SDCE2__GPIO_1_29 = IOMUX_PAD(0x03F8, 0x0108, 5, 0x0000, 0, 0),
MX6_PAD_EPDC_PWRCOM__ANATOP_USBOTG1_ID = IOMUX_PAD(0x03D0, 0x00E0, 4, 0x05DC, 0, 0),
+
+ MX6_PAD_KEY_COL0__KPP_COL_0 = IOMUX_PAD(0x0474, 0x016C, 0, 0x0734, 0, 0),
+ MX6_PAD_KEY_COL1__KPP_COL_1 = IOMUX_PAD(0x0478, 0x0170, 0, 0x0738, 0, 0),
+ MX6_PAD_KEY_COL2__KPP_COL_2 = IOMUX_PAD(0x047C, 0x0174, 0, 0x073C, 0, 0),
+ MX6_PAD_KEY_COL3__KPP_COL_3 = IOMUX_PAD(0x0480, 0x0178, 0, 0x0740, 0, 0),
+ MX6_PAD_KEY_ROW0__KPP_ROW_0 = IOMUX_PAD(0x0494, 0x018C, 0, 0x0754, 0, 0),
+ MX6_PAD_KEY_ROW1__KPP_ROW_1 = IOMUX_PAD(0x0498, 0x0190, 0, 0x0758, 0, 0),
+ MX6_PAD_KEY_ROW2__KPP_ROW_2 = IOMUX_PAD(0x049C, 0x0194, 0, 0x075C, 0, 0),
+ MX6_PAD_KEY_ROW3__KPP_ROW_3 = IOMUX_PAD(0x04A0, 0x0198, 0, 0x0760, 0, 0),
};
#endif /* __ASM_ARCH_MX6_MX6SL_PINS_H__ */
diff --git a/arch/arm/include/asm/imx-common/mxc_key_defs.h b/arch/arm/include/asm/imx-common/mxc_key_defs.h
new file mode 100644
index 0000000..5a1fec7
--- /dev/null
+++ b/arch/arm/include/asm/imx-common/mxc_key_defs.h
@@ -0,0 +1,40 @@
+/*
+ * Copyright (C) 2009-2014 Freescale Semiconductor, Inc. All Rights Reserved.
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+#ifndef _MXC_KEYPAD_H_
+#define _MXC_KEYPAD_H_
+
+#include <config.h>
+
+#define KEY_1 2
+#define KEY_2 3
+#define KEY_3 4
+#define KEY_F1 59
+#define KEY_UP 103
+#define KEY_F2 60
+
+#define KEY_4 5
+#define KEY_5 6
+#define KEY_6 7
+#define KEY_LEFT 105
+#define KEY_SELECT 0x161
+#define KEY_RIGHT 106
+
+#define KEY_7 8
+#define KEY_8 9
+#define KEY_9 10
+#define KEY_F3 61
+#define KEY_DOWN 108
+#define KEY_F4 62
+
+#define KEY_0 11
+#define KEY_OK 0x160
+#define KEY_ESC 1
+#define KEY_ENTER 28
+#define KEY_MENU 139 /* Menu (show menu) */
+#define KEY_BACK 158 /* AC Back */
+
+#endif