FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Ubuntu > Ubuntu Kernel Team

 
 
LinkBack Thread Tools
 
Old 01-15-2009, 01:04 PM
Stefan Bader
 
Default Input: atkbd - add keyboard quirk for HP Pavilion ZV6100 laptop

Andy Whitcroft wrote:
> From: Rikard Ljungstrand <lrikard@student.chalmers.se>
>
> Bug: #291878
>
> commit 181f63827a7655e84781fe0494189c1fea52816f upstream
>
> Add quirk for misbehaving volume buttons on HP Pavilion ZV6100 laptop which
> are not sending keyrelease events, as reported by Aaron Pickett.
>
> Signed-off-by: Rikard Ljungstrand <lrikard@student.chalmers.se>
> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
> Signed-off-by: Andy Whitcroft <apw@canonical.com>
> ---
> drivers/input/keyboard/atkbd.c | 26 ++++++++++++++++++++++++++
> 1 files changed, 26 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
> index c694eaa..1aa2eaf 100644
> --- a/drivers/input/keyboard/atkbd.c
> +++ b/drivers/input/keyboard/atkbd.c
> @@ -884,6 +884,23 @@ static void atkbd_inventec_keymap_fixup(struct atkbd *atkbd)
> }
>
> /*
> + * Perform fixup for HP Pavilion ZV6100 laptop that doesn't generate release
> + * for its volume buttons
> + */
> +static void atkbd_hp_zv6100_keymap_fixup(struct atkbd *atkbd)
> +{
> + const unsigned int forced_release_keys[] = {
> + 0xae, 0xb0,
> + };
> + int i;
> +
> + if (atkbd->set == 2)
> + for (i = 0; i < ARRAY_SIZE(forced_release_keys); i++)
> + __set_bit(forced_release_keys[i],
> + atkbd->force_release_mask);
> +}
> +
> +/*
> * atkbd_set_keycode_table() initializes keyboard's keycode table
> * according to the selected scancode set
> */
> @@ -1495,6 +1512,15 @@ static struct dmi_system_id atkbd_dmi_quirk_table[] __initdata = {
> .driver_data = atkbd_hp_keymap_fixup,
> },
> {
> + .ident = "HP Pavilion ZV6100",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "Pavilion ZV6100"),
> + },
> + .callback = atkbd_setup_fixup,
> + .driver_data = atkbd_hp_zv6100_keymap_fixup,
> + },
> + {
> .ident = "Inventec Symphony",
> .matches = {
> DMI_MATCH(DMI_SYS_VENDOR, "INVENTEC"),

ACK

--

When all other means of communication fail, try words!



--
kernel-team mailing list
kernel-team@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/kernel-team
 

Thread Tools




All times are GMT. The time now is 07:19 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org