Patchwork [SRU] UBUNTU: SAUCE: (drop after 2.6.31) input: Add hotkey quirk for Fujitsu Amilo 1848+u

login
register
mail settings
Submitter Keng-Yu Lin
Date Jan. 20, 2010, 9:18 a.m.
Message ID <1263979096-30776-1-git-send-email-keng-yu.lin@canonical.com>
Download mbox | patch
Permalink /patch/43265/
State Accepted
Delegated to: Stefan Bader
Headers show

Comments

Keng-Yu Lin - Jan. 20, 2010, 9:18 a.m.
From: Pascal Bach <pascal@nextrem.ch)>

SRU Justification:

Impact:
  Some hotkeys do not produce key release events so not function well.

Fix:
  Add quirks in atkbd.c to force a key release.
  (in 2.6.32, this can be done via /sys from userspace)

Testcase:
  The reportor reported this patch works well.

-
From e846e9be96c925c3c491828b6fc7d59ab2abc6fe Mon Sep 17 00:00:00 2001
From: Pascal Bach <pascal@nextrem.ch)>
Date: Thu, 22 Oct 2009 21:54:44 +0200
Subject: [PATCH] UBUNTU: SAUCE: (drop after 2.6.31) input: Add hotkey quirk for Fujitsu Amilo 1848+u

Volume keys do not produce release events. Add the quirk to force a key release.

In 2.6.32, a /sys interface is provided to handle setting from userspace.
It is not necessary to apply this patch to newer version than 2.6.31.

BugLink: http://bugs.launchpad.net/bugs/458503

Signed-off-by: Keng-Yu Lin <keng-yu.lin@canonical.com>
---
 drivers/input/keyboard/atkbd.c |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)
Tim Gardner - Jan. 20, 2010, 2:08 p.m.
Keng-Yu Lin wrote:
> From: Pascal Bach <pascal@nextrem.ch)>
> 
> SRU Justification:
> 
> Impact:
>   Some hotkeys do not produce key release events so not function well.
> 
> Fix:
>   Add quirks in atkbd.c to force a key release.
>   (in 2.6.32, this can be done via /sys from userspace)
> 
> Testcase:
>   The reportor reported this patch works well.
> 
> -
> From e846e9be96c925c3c491828b6fc7d59ab2abc6fe Mon Sep 17 00:00:00 2001
> From: Pascal Bach <pascal@nextrem.ch)>
> Date: Thu, 22 Oct 2009 21:54:44 +0200
> Subject: [PATCH] UBUNTU: SAUCE: (drop after 2.6.31) input: Add hotkey quirk for Fujitsu Amilo 1848+u
> 
> Volume keys do not produce release events. Add the quirk to force a key release.
> 
> In 2.6.32, a /sys interface is provided to handle setting from userspace.
> It is not necessary to apply this patch to newer version than 2.6.31.
> 
> BugLink: http://bugs.launchpad.net/bugs/458503
> 
> Signed-off-by: Keng-Yu Lin <keng-yu.lin@canonical.com>
> ---
>  drivers/input/keyboard/atkbd.c |   16 ++++++++++++++++
>  1 files changed, 16 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
> index 63f5c94..1189978 100644
> --- a/drivers/input/keyboard/atkbd.c
> +++ b/drivers/input/keyboard/atkbd.c
> @@ -910,6 +910,13 @@ static unsigned int atkbd_amilo_pi3525_forced_release_keys[] = {
>  };
>  
>  /*
> + * Amilo Si 1848 key release for Fn+Volume keys not working
> + */
> +static unsigned int atkbd_amilo_si1848_forced_release_keys[] = {
> +	0xa0, 0xae, 0xb0, -1U
> +};
> +
> +/*
>   * Amilo Xi 3650 key release for light touch bar not working
>   */
>  static unsigned int atkbd_amilo_xi3650_forced_release_keys[] = {
> @@ -1652,6 +1659,15 @@ static struct dmi_system_id atkbd_dmi_quirk_table[] __initdata = {
>  		.driver_data = atkbd_amilo_pa1510_forced_release_keys,
>  	},
>  	{
> +		.ident = "Fujitsu Amilo Si 1848+u",
> +		.matches = {
> +			DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),
> +			DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Si 1848+u"),
> +		},
> +		.callback = atkbd_setup_forced_release,
> +		.driver_data = atkbd_amilo_si1848_forced_release_keys,
> +	},
> +	{
>  		.ident = "Fujitsu Amilo Pi 3525",
>  		.matches = {
>  			DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),

Acked-by: Tim Gardner <tim.gardner@canonical.com>
Stefan Bader - Jan. 22, 2010, 2:40 p.m.
Looks reasonable.

Keng-Yu Lin wrote:
> From: Pascal Bach <pascal@nextrem.ch)>
> 
> SRU Justification:
> 
> Impact:
>   Some hotkeys do not produce key release events so not function well.
> 
> Fix:
>   Add quirks in atkbd.c to force a key release.
>   (in 2.6.32, this can be done via /sys from userspace)
> 
> Testcase:
>   The reportor reported this patch works well.
> 
> -
> From e846e9be96c925c3c491828b6fc7d59ab2abc6fe Mon Sep 17 00:00:00 2001
> From: Pascal Bach <pascal@nextrem.ch)>
> Date: Thu, 22 Oct 2009 21:54:44 +0200
> Subject: [PATCH] UBUNTU: SAUCE: (drop after 2.6.31) input: Add hotkey quirk for Fujitsu Amilo 1848+u
> 
> Volume keys do not produce release events. Add the quirk to force a key release.
> 
> In 2.6.32, a /sys interface is provided to handle setting from userspace.
> It is not necessary to apply this patch to newer version than 2.6.31.
> 
> BugLink: http://bugs.launchpad.net/bugs/458503
> 
> Signed-off-by: Keng-Yu Lin <keng-yu.lin@canonical.com>
Acked-by: Stefan Bader <stefan.bader@canonical.com>
> ---
>  drivers/input/keyboard/atkbd.c |   16 ++++++++++++++++
>  1 files changed, 16 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
> index 63f5c94..1189978 100644
> --- a/drivers/input/keyboard/atkbd.c
> +++ b/drivers/input/keyboard/atkbd.c
> @@ -910,6 +910,13 @@ static unsigned int atkbd_amilo_pi3525_forced_release_keys[] = {
>  };
>  
>  /*
> + * Amilo Si 1848 key release for Fn+Volume keys not working
> + */
> +static unsigned int atkbd_amilo_si1848_forced_release_keys[] = {
> +	0xa0, 0xae, 0xb0, -1U
> +};
> +
> +/*
>   * Amilo Xi 3650 key release for light touch bar not working
>   */
>  static unsigned int atkbd_amilo_xi3650_forced_release_keys[] = {
> @@ -1652,6 +1659,15 @@ static struct dmi_system_id atkbd_dmi_quirk_table[] __initdata = {
>  		.driver_data = atkbd_amilo_pa1510_forced_release_keys,
>  	},
>  	{
> +		.ident = "Fujitsu Amilo Si 1848+u",
> +		.matches = {
> +			DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),
> +			DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Si 1848+u"),
> +		},
> +		.callback = atkbd_setup_forced_release,
> +		.driver_data = atkbd_amilo_si1848_forced_release_keys,
> +	},
> +	{
>  		.ident = "Fujitsu Amilo Pi 3525",
>  		.matches = {
>  			DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),
Colin King - Jan. 22, 2010, 3:17 p.m.
On Wed, 2010-01-20 at 17:18 +0800, Keng-Yu Lin wrote:
> From: Pascal Bach <pascal@nextrem.ch)>
> 
> SRU Justification:
> 
> Impact:
>   Some hotkeys do not produce key release events so not function well.
> 
> Fix:
>   Add quirks in atkbd.c to force a key release.
>   (in 2.6.32, this can be done via /sys from userspace)
> 
> Testcase:
>   The reportor reported this patch works well.
> 
> -
> From e846e9be96c925c3c491828b6fc7d59ab2abc6fe Mon Sep 17 00:00:00 2001
> From: Pascal Bach <pascal@nextrem.ch)>
> Date: Thu, 22 Oct 2009 21:54:44 +0200
> Subject: [PATCH] UBUNTU: SAUCE: (drop after 2.6.31) input: Add hotkey quirk for Fujitsu Amilo 1848+u
> 
> Volume keys do not produce release events. Add the quirk to force a key release.
> 
> In 2.6.32, a /sys interface is provided to handle setting from userspace.
> It is not necessary to apply this patch to newer version than 2.6.31.
> 
> BugLink: http://bugs.launchpad.net/bugs/458503
> 
> Signed-off-by: Keng-Yu Lin <keng-yu.lin@canonical.com>
> ---
>  drivers/input/keyboard/atkbd.c |   16 ++++++++++++++++
>  1 files changed, 16 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
> index 63f5c94..1189978 100644
> --- a/drivers/input/keyboard/atkbd.c
> +++ b/drivers/input/keyboard/atkbd.c
> @@ -910,6 +910,13 @@ static unsigned int atkbd_amilo_pi3525_forced_release_keys[] = {
>  };
>  
>  /*
> + * Amilo Si 1848 key release for Fn+Volume keys not working
> + */
> +static unsigned int atkbd_amilo_si1848_forced_release_keys[] = {
> +	0xa0, 0xae, 0xb0, -1U
> +};
> +
> +/*
>   * Amilo Xi 3650 key release for light touch bar not working
>   */
>  static unsigned int atkbd_amilo_xi3650_forced_release_keys[] = {
> @@ -1652,6 +1659,15 @@ static struct dmi_system_id atkbd_dmi_quirk_table[] __initdata = {
>  		.driver_data = atkbd_amilo_pa1510_forced_release_keys,
>  	},
>  	{
> +		.ident = "Fujitsu Amilo Si 1848+u",
> +		.matches = {
> +			DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),
> +			DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Si 1848+u"),
> +		},
> +		.callback = atkbd_setup_forced_release,
> +		.driver_data = atkbd_amilo_si1848_forced_release_keys,
> +	},
> +	{
>  		.ident = "Fujitsu Amilo Pi 3525",
>  		.matches = {
>  			DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),
> -- 
> 1.6.3.3
> 
> 
I'm happy with this. Looks sane

Acked-by: Colin King <colin.king@canonical.com>
Stefan Bader - Jan. 22, 2010, 4:43 p.m.
Applied to Karmic

Patch

diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
index 63f5c94..1189978 100644
--- a/drivers/input/keyboard/atkbd.c
+++ b/drivers/input/keyboard/atkbd.c
@@ -910,6 +910,13 @@  static unsigned int atkbd_amilo_pi3525_forced_release_keys[] = {
 };
 
 /*
+ * Amilo Si 1848 key release for Fn+Volume keys not working
+ */
+static unsigned int atkbd_amilo_si1848_forced_release_keys[] = {
+	0xa0, 0xae, 0xb0, -1U
+};
+
+/*
  * Amilo Xi 3650 key release for light touch bar not working
  */
 static unsigned int atkbd_amilo_xi3650_forced_release_keys[] = {
@@ -1652,6 +1659,15 @@  static struct dmi_system_id atkbd_dmi_quirk_table[] __initdata = {
 		.driver_data = atkbd_amilo_pa1510_forced_release_keys,
 	},
 	{
+		.ident = "Fujitsu Amilo Si 1848+u",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Si 1848+u"),
+		},
+		.callback = atkbd_setup_forced_release,
+		.driver_data = atkbd_amilo_si1848_forced_release_keys,
+	},
+	{
 		.ident = "Fujitsu Amilo Pi 3525",
 		.matches = {
 			DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"),