Re: [PATCH] Fujitsu Amilo PA 1510 key-release events quirk

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 29 Nov 2008 22:59:36 +0100 Daniel Mierswa <impulze@xxxxxxxxxxx> wrote:

> From: Daniel Mierswa <impulze@xxxxxxxxxxx>
> Date: Sat, 29 Nov 2008 22:40:20 +0100
> Subject: [PATCH] Fujitsu Siemens Amilo PA 1510 quirks
> 
> The volume up and down keys on the Fujitsu Siemens Amilo PA 1510 laptop
> won't generate release events, so we have to do that. Use the same
> way that is already used with other models.
> ---
>  drivers/input/keyboard/atkbd.c |   22 ++++++++++++++++++++++
>  1 files changed, 22 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
> index 99ef522..1250242 100644
> --- a/drivers/input/keyboard/atkbd.c
> +++ b/drivers/input/keyboard/atkbd.c
> @@ -845,6 +845,19 @@ static void atkbd_disconnect(struct serio *serio)
>  				atkbd->force_release_mask);
>  
>  /*
> + * The volume up and volume down special keys on a Fujitsu Amilo PA 1510 laptop
> + * do not generate release events so we have to do it ourselves.
> + */
> +static void atkbd_amilopa1510_keymap_fixup(struct atkbd *atkbd)
> +{
> +	const unsigned int forced_release_keys[] = {
> +		0xb0, 0xae,
> +	};
> +
> +	GEN_RELEASE_EVENT
> +}

It's best to make forced_release_keys static as well - there is no need
to build this array on the stack at runtime.  The compiler _could_
perform this optimisation itself andallegedly it will sometimes do so. 
Last time I checked it did not.

> +/*
>   * Most special keys (Fn+F?) on Dell laptops do not generate release
>   * events so we have to do it ourselves.
>   */
> @@ -1463,6 +1476,15 @@ static struct dmi_system_id atkbd_dmi_quirk_table[] __initdata = {
>  		.driver_data = atkbd_dell_laptop_keymap_fixup,
>  	},
>  	{
> +		.ident = "Fujitsu Amilo PA 1510",
> +		.matches = {
> +			DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"), 
> +			DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Pa 1510"),
> +		},
> +		.callback = atkbd_setup_fixup,
> +		.driver_data = atkbd_amilopa1510_keymap_fixup,
> +	},
> +	{
>  		.ident = "HP 2133",
>  		.matches = {
>  			DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux