diff options
author | Gary King <gking@nvidia.com> | 2010-03-22 17:23:26 -0700 |
---|---|---|
committer | Gary King <gking@nvidia.com> | 2010-03-23 08:38:55 -0800 |
commit | 854209499f803b7670599c720a9cf1b154e7334c (patch) | |
tree | 84e6e46873417cc6b66b2ed190199988c71466e9 | |
parent | 5c1af346ca8d2d9e69fc55cf68455265d36d75a3 (diff) |
tegra harmony: fix ODM kit issues with internal keyboard
fix broken build of nvodm_kbc.c caused by path changes during initial
p4 to git merge
keyboard should be a wake event when the KEYBOARD_TEGRA driver is
compiled into the kernel
reduce the repeat and debouce times; the keyboard was nearly
unusable with a repeat ping time of 100ms
fix the row and column numbers for the select wakeup keys: the values
need to be absolute row & column offsets, not the harmony-local GPIO
enumerants (in which columns have numbers above rows), and the values
previously defined ([0,0] and [1,1]) aren't actually keys on the
satellite keyboard; change the values to the ESC and Windows keys.
Change-Id: I50bca7eee5c9101163b01e08457606cb4a5f32de
Reviewed-on: http://git-master/r/932
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Gary King <gking@nvidia.com>
Tested-by: Gary King <gking@nvidia.com>
3 files changed, 10 insertions, 6 deletions
diff --git a/arch/arm/mach-tegra/odm_kit/adaptations/misc/harmony/nvodm_kbc.c b/arch/arm/mach-tegra/odm_kit/adaptations/misc/harmony/nvodm_kbc.c index 5dea42a0d1e4..3f07a61a66c4 100644 --- a/arch/arm/mach-tegra/odm_kit/adaptations/misc/harmony/nvodm_kbc.c +++ b/arch/arm/mach-tegra/odm_kit/adaptations/misc/harmony/nvodm_kbc.c @@ -37,7 +37,7 @@ * @Description : Implementation of the odm KBC API */ #include "nvodm_kbc.h" -#include "../../query/nvodm_query_kbc_qwerty_def.h" +#include "../../../query/harmony/nvodm_query_kbc_qwerty_def.h" NvU32 NvOdmKbcFilterKeys( diff --git a/arch/arm/mach-tegra/odm_kit/query/harmony/nvodm_query.c b/arch/arm/mach-tegra/odm_kit/query/harmony/nvodm_query.c index dbd051ef9c7d..63116a5d9557 100644 --- a/arch/arm/mach-tegra/odm_kit/query/harmony/nvodm_query.c +++ b/arch/arm/mach-tegra/odm_kit/query/harmony/nvodm_query.c @@ -311,7 +311,11 @@ static NvOdmWakeupPadInfo s_NvOdmWakeupPadInfo[] = {NV_FALSE, 14, NvOdmWakeupPadPolarity_High}, // Wake Event 14 - gp3_pv[6] (WLAN_INT) {NV_FALSE, 15, NvOdmWakeupPadPolarity_AnyEdge}, // Wake Event 15 - gmi_ad16 (SPI3_DOUT, DTV_SPI4_CS1) {NV_TRUE, 16, NvOdmWakeupPadPolarity_High}, // Wake Event 16 - rtc_irq - {NV_FALSE, 17, NvOdmWakeupPadPolarity_High}, // Wake Event 17 - kbc_interrupt +#ifdef CONFIG_KEYBOARD_TEGRA + {NV_TRUE, 17, NvOdmWakeupPadPolarity_High}, // Wake Event 17 - kbc_interrupt +#else + {NV_FALSE, 17, NvOdmWakeupPadPolarity_High}, +#endif {NV_FALSE, 18, NvOdmWakeupPadPolarity_Low}, // Wake Event 18 - pwr_int (PMIC_INT) {NV_TRUE, 19, NvOdmWakeupPadPolarity_High}, // Wake Event 19 - usb_vbus_wakeup[0] {NV_FALSE, 20, NvOdmWakeupPadPolarity_High}, // Wake Event 20 - usb_vbus_wakeup[1] diff --git a/arch/arm/mach-tegra/odm_kit/query/harmony/nvodm_query_kbc.c b/arch/arm/mach-tegra/odm_kit/query/harmony/nvodm_query_kbc.c index 6782bd778aeb..951fc9730f41 100644 --- a/arch/arm/mach-tegra/odm_kit/query/harmony/nvodm_query_kbc.c +++ b/arch/arm/mach-tegra/odm_kit/query/harmony/nvodm_query_kbc.c @@ -41,8 +41,8 @@ #include "nvodm_query_kbc_gpio_def.h" #include "nvodm_query_kbc_qwerty_def.h" -static NvU32 RowNumbers[] = {NvOdmKbcGpioPin_KBRow0, NvOdmKbcGpioPin_KBRow1}; -static NvU32 ColNumbers[] = {NvOdmKbcGpioPin_KBCol0, NvOdmKbcGpioPin_KBCol0}; +static NvU32 RowNumbers[] = {1, 15}; +static NvU32 ColNumbers[] = {7, 0}; void NvOdmKbcGetParameter( @@ -55,11 +55,11 @@ NvOdmKbcGetParameter( { case NvOdmKbcParameter_DebounceTime: pTempVar = (NvU32 *)pValue; - *pTempVar = 10; + *pTempVar = 2; break; case NvOdmKbcParameter_RepeatCycleTime: pTempVar = (NvU32 *)pValue; - *pTempVar = 100; + *pTempVar = 5; break; default: break; |