Skip to content

Commit

Permalink
HID: make Media key on Logitech DiNovo Mini work
Browse files Browse the repository at this point in the history
Put proper mapping of Media key on Logitech DiNovo Mini.

According to the specification from Logitech webpage, this
key is intended to launch a Media center.

Reported-by: Stefan Plattner <Stefan.Plattner@ilogs.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
  • Loading branch information
Jiri Kosina committed Nov 25, 2009
1 parent 1168df7 commit 66d61be
Showing 1 changed file with 20 additions and 0 deletions.
20 changes: 20 additions & 0 deletions drivers/hid/hid-lg.c
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,22 @@ static int lg_ultrax_remote_mapping(struct hid_input *hi,
return 1;
}

static int lg_dinovo_mapping(struct hid_input *hi, struct hid_usage *usage,
unsigned long **bit, int *max)
{
if ((usage->hid & HID_USAGE_PAGE) != HID_UP_LOGIVENDOR)
return 0;

switch (usage->hid & HID_USAGE) {

case 0x00d: lg_map_key_clear(KEY_MEDIA); break;
default:
return 0;

}
return 1;
}

static int lg_wireless_mapping(struct hid_input *hi, struct hid_usage *usage,
unsigned long **bit, int *max)
{
Expand Down Expand Up @@ -164,6 +180,10 @@ static int lg_input_mapping(struct hid_device *hdev, struct hid_input *hi,
lg_ultrax_remote_mapping(hi, usage, bit, max))
return 1;

if (hdev->product == USB_DEVICE_ID_DINOVO_MINI &&
lg_dinovo_mapping(hi, usage, bit, max))
return 1;

if ((quirks & LG_WIRELESS) && lg_wireless_mapping(hi, usage, bit, max))
return 1;

Expand Down

0 comments on commit 66d61be

Please sign in to comment.