Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 165181
b: refs/heads/master
c: de4c8cc
h: refs/heads/master
i:
  165179: 124b9d6
v: v3
  • Loading branch information
Henrique de Moraes Holschuh authored and Len Brown committed Sep 19, 2009
1 parent 8b4ff56 commit 439f652
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 12 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 230d8cf25ac32c7d2fdb4dda861ec5d954000ffb
refs/heads/master: de4c8cc7bddd9c43dc1b85517ab445ffa8163058
30 changes: 19 additions & 11 deletions trunk/drivers/platform/x86/thinkpad_acpi.c
Original file line number Diff line number Diff line change
Expand Up @@ -2854,6 +2854,15 @@ static void hotkey_exit(void)
}
}

static void __init hotkey_unmap(const unsigned int scancode)
{
if (hotkey_keycode_map[scancode] != KEY_RESERVED) {
clear_bit(hotkey_keycode_map[scancode],
tpacpi_inputdev->keybit);
hotkey_keycode_map[scancode] = KEY_RESERVED;
}
}

static int __init hotkey_init(struct ibm_init_struct *iibm)
{
/* Requirements for changing the default keymaps:
Expand Down Expand Up @@ -2932,11 +2941,11 @@ static int __init hotkey_init(struct ibm_init_struct *iibm)
KEY_UNKNOWN, /* 0x0D: FN+INSERT */
KEY_UNKNOWN, /* 0x0E: FN+DELETE */

/* These either have to go through ACPI video, or
* act like in the IBM ThinkPads, so don't ever
* enable them by default */
KEY_RESERVED, /* 0x0F: FN+HOME (brightness up) */
KEY_RESERVED, /* 0x10: FN+END (brightness down) */
/* These should be enabled --only-- when ACPI video
* is disabled (i.e. in "vendor" mode), and are handled
* in a special way by the init code */
KEY_BRIGHTNESSUP, /* 0x0F: FN+HOME (brightness up) */
KEY_BRIGHTNESSDOWN, /* 0x10: FN+END (brightness down) */

KEY_RESERVED, /* 0x11: FN+PGUP (thinklight toggle) */

Expand Down Expand Up @@ -3162,15 +3171,14 @@ static int __init hotkey_init(struct ibm_init_struct *iibm)
"Disabling thinkpad-acpi brightness events "
"by default...\n");

/* The hotkey_reserved_mask change below is not
* necessary while the keys are at KEY_RESERVED in the
* default map, but better safe than sorry, leave it
* here as a marker of what we have to do, especially
* when we finally become able to set this at runtime
* on response to X.org requests */
/* Disable brightness up/down on Lenovo thinkpads when
* ACPI is handling them, otherwise it is plain impossible
* for userspace to do something even remotely sane */
hotkey_reserved_mask |=
(1 << TP_ACPI_HOTKEYSCAN_FNHOME)
| (1 << TP_ACPI_HOTKEYSCAN_FNEND);
hotkey_unmap(TP_ACPI_HOTKEYSCAN_FNHOME);
hotkey_unmap(TP_ACPI_HOTKEYSCAN_FNEND);
}

#ifdef CONFIG_THINKPAD_ACPI_HOTKEY_POLL
Expand Down

0 comments on commit 439f652

Please sign in to comment.