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



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-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • [PATCH] Fujitsu Amilo PA 1510 key-release events quirk
    ... the fujitsu amilo pa 1510 laptop needs a little lovin' regarding the release event of the volume up and down keys. ... I attached a format-patch which separates the generation of release events for certain scancodes into a macro since 3 dmi matches are already using it and generation of the missing release events for that particular laptop. ... Most special keys on Dell laptops do not generate release ...
    (Linux-Kernel)
  • Re: [PATCH] Fujitsu Amilo PA 1510 key-release events quirk (PATCH 3/3)
    ... The volume up and down keys on the Fujitsu Siemens Amilo PA 1510 laptop ... * The volume up and volume down special keys on a Fujitsu Amilo PA 1510 laptop ...
    (Linux-Kernel)
  • Re: My experiences with a Dell D620 Laptop. Part 1.
    ... This post is to show Mac Users just what they are missing compared to a 9 month old PowerBook G4/15.4/1.6Mhz and a white MacBook. ... On a number of occasions I've opened up the machine only to find the battery is drained or find a very hot laptop in my bag. ... It has a rather tacky looking two-tone appearance around the keyboard and trackpad with the keys being a different colour to the inner silver 'ring'. ... Why couldn't these go underneath with the WIndows XP license label? ...
    (comp.sys.mac.advocacy)
  • dell latitude Fn+ buttons and 2.6.0
    ... I'm running RH9 on a Dell Latitude C610 laptop, ... uses function keys for suspend, live bios, and other system functions. ... With APM only, the system at least responds to the buttons; ... Why do I have to disable ACPI to use the Fn keys? ...
    (Linux-Kernel)
  • Re: Well, I have given up on Apple
    ... He's clearly talking about the physical lack of certain keys, ... all versions of Mac OS: ... (you'll need to make sure your laptop's trackpad supports this ... "If your laptop is too old to support this, or if you'd rather not go ...
    (comp.sys.mac.advocacy)