From 0533144967fcf0cc4e485cf40e586140e7a1d960 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Pali=20Roh=C3=A1r?= Date: Wed, 18 Sep 2013 18:37:57 +0200 Subject: [PATCH] Add patch nokia-av_key.patch With this patch pressed headset button will be reported immediately as KEY_PROG1. But sometimes this key can be reported also when was not presses. Application should take care about false positive pressing, so this is reason why kernel will report it as KEY_PROG1 (and not KEY_PHONE). To verify if key was pressed application can wait for real KEY_PHONE event which would be delivered after few seconds as before. Application can receive notify about this presses key via HAL "prog1" key. So this will not break any existing applications. Thanks Pavel Machek for it! --- .../debian/patches/nokia-av_key.patch | 21 ++++++++++++++++++++ kernel-power-2.6.28/debian/patches/series | 1 + 2 files changed, 22 insertions(+) create mode 100644 kernel-power-2.6.28/debian/patches/nokia-av_key.patch diff --git a/kernel-power-2.6.28/debian/patches/nokia-av_key.patch b/kernel-power-2.6.28/debian/patches/nokia-av_key.patch new file mode 100644 index 0000000..c4c13d4 --- /dev/null +++ b/kernel-power-2.6.28/debian/patches/nokia-av_key.patch @@ -0,0 +1,21 @@ +--- kernel-power-2.6.28/drivers/misc/nokia-av.c 2013-08-08 01:06:58.603133117 +0200 ++++ kernel-power-2.6.28/drivers/misc/nokia-av.c 2013-08-08 01:18:39.367656481 +0200 +@@ -152,6 +152,10 @@ + int pressed, timeout; + + pressed = !gpio_get_value(drvdata->eci0_gpio); ++ ++ input_report_key(drvdata->input, KEY_PROG1, pressed); ++ input_sync(drvdata->input); ++ + if (drvdata->hs_btn_pressed == pressed) + return IRQ_HANDLED; + +@@ -185,6 +189,7 @@ + return ret; + } + ++ input_set_capability(drvdata->input, EV_KEY, KEY_PROG1); + input_set_capability(drvdata->input, EV_KEY, HS_BTN_KEY); + drvdata->input->name = "headset button"; + diff --git a/kernel-power-2.6.28/debian/patches/series b/kernel-power-2.6.28/debian/patches/series index 221a394..aee481c 100644 --- a/kernel-power-2.6.28/debian/patches/series +++ b/kernel-power-2.6.28/debian/patches/series @@ -88,3 +88,4 @@ udf-use-hw-sector-size.diff tif_restore_sigmask-syscalls-arm.patch dm9601-ethernet.patch asix-ethernet.patch +nokia-av_key.patch -- 1.7.9.5