hid-apple.c (ed3982cf3748b657ffb79d9d1c2e4a562661db2d) | hid-apple.c (d762cc290b9f17e346f4297fd5984b70ce71ef66) |
---|---|
1/* 2 * USB HID quirks support for Linux 3 * 4 * Copyright (c) 1999 Andreas Gal 5 * Copyright (c) 2000-2005 Vojtech Pavlik <vojtech@suse.cz> 6 * Copyright (c) 2005 Michael Haboustak <mike-@cinci.rr.com> for Concept2, Inc 7 * Copyright (c) 2006-2007 Jiri Kosina 8 * Copyright (c) 2007 Paul Walmsley --- 68 unchanged lines hidden (view full) --- 77 { KEY_F12, KEY_EJECTCD, APPLE_FLAG_FKEY }, 78 { KEY_UP, KEY_PAGEUP }, 79 { KEY_DOWN, KEY_PAGEDOWN }, 80 { KEY_LEFT, KEY_HOME }, 81 { KEY_RIGHT, KEY_END }, 82 { } 83}; 84 | 1/* 2 * USB HID quirks support for Linux 3 * 4 * Copyright (c) 1999 Andreas Gal 5 * Copyright (c) 2000-2005 Vojtech Pavlik <vojtech@suse.cz> 6 * Copyright (c) 2005 Michael Haboustak <mike-@cinci.rr.com> for Concept2, Inc 7 * Copyright (c) 2006-2007 Jiri Kosina 8 * Copyright (c) 2007 Paul Walmsley --- 68 unchanged lines hidden (view full) --- 77 { KEY_F12, KEY_EJECTCD, APPLE_FLAG_FKEY }, 78 { KEY_UP, KEY_PAGEUP }, 79 { KEY_DOWN, KEY_PAGEDOWN }, 80 { KEY_LEFT, KEY_HOME }, 81 { KEY_RIGHT, KEY_END }, 82 { } 83}; 84 |
85static const struct apple_key_translation macbookair4_fn_keys[] = { 86 { KEY_BACKSPACE, KEY_DELETE }, 87 { KEY_ENTER, KEY_INSERT }, 88 { KEY_F1, KEY_BRIGHTNESSDOWN, APPLE_FLAG_FKEY }, 89 { KEY_F2, KEY_BRIGHTNESSUP, APPLE_FLAG_FKEY }, 90 { KEY_F3, KEY_SCALE, APPLE_FLAG_FKEY }, 91 { KEY_F4, KEY_DASHBOARD, APPLE_FLAG_FKEY }, 92 { KEY_F5, KEY_KBDILLUMDOWN, APPLE_FLAG_FKEY }, 93 { KEY_F6, KEY_KBDILLUMUP, APPLE_FLAG_FKEY }, 94 { KEY_F7, KEY_PREVIOUSSONG, APPLE_FLAG_FKEY }, 95 { KEY_F8, KEY_PLAYPAUSE, APPLE_FLAG_FKEY }, 96 { KEY_F9, KEY_NEXTSONG, APPLE_FLAG_FKEY }, 97 { KEY_F10, KEY_MUTE, APPLE_FLAG_FKEY }, 98 { KEY_F11, KEY_VOLUMEDOWN, APPLE_FLAG_FKEY }, 99 { KEY_F12, KEY_VOLUMEUP, APPLE_FLAG_FKEY }, 100 { KEY_UP, KEY_PAGEUP }, 101 { KEY_DOWN, KEY_PAGEDOWN }, 102 { KEY_LEFT, KEY_HOME }, 103 { KEY_RIGHT, KEY_END }, 104 { } 105}; 106 |
|
85static const struct apple_key_translation apple_fn_keys[] = { 86 { KEY_BACKSPACE, KEY_DELETE }, 87 { KEY_ENTER, KEY_INSERT }, 88 { KEY_F1, KEY_BRIGHTNESSDOWN, APPLE_FLAG_FKEY }, 89 { KEY_F2, KEY_BRIGHTNESSUP, APPLE_FLAG_FKEY }, 90 { KEY_F3, KEY_SCALE, APPLE_FLAG_FKEY }, 91 { KEY_F4, KEY_DASHBOARD, APPLE_FLAG_FKEY }, 92 { KEY_F5, KEY_KBDILLUMDOWN, APPLE_FLAG_FKEY }, --- 85 unchanged lines hidden (view full) --- 178 } 179 180 if (fnmode) { 181 int do_translate; 182 183 if (hid->product >= USB_DEVICE_ID_APPLE_WELLSPRING4_ANSI && 184 hid->product <= USB_DEVICE_ID_APPLE_WELLSPRING4A_JIS) 185 table = macbookair_fn_keys; | 107static const struct apple_key_translation apple_fn_keys[] = { 108 { KEY_BACKSPACE, KEY_DELETE }, 109 { KEY_ENTER, KEY_INSERT }, 110 { KEY_F1, KEY_BRIGHTNESSDOWN, APPLE_FLAG_FKEY }, 111 { KEY_F2, KEY_BRIGHTNESSUP, APPLE_FLAG_FKEY }, 112 { KEY_F3, KEY_SCALE, APPLE_FLAG_FKEY }, 113 { KEY_F4, KEY_DASHBOARD, APPLE_FLAG_FKEY }, 114 { KEY_F5, KEY_KBDILLUMDOWN, APPLE_FLAG_FKEY }, --- 85 unchanged lines hidden (view full) --- 200 } 201 202 if (fnmode) { 203 int do_translate; 204 205 if (hid->product >= USB_DEVICE_ID_APPLE_WELLSPRING4_ANSI && 206 hid->product <= USB_DEVICE_ID_APPLE_WELLSPRING4A_JIS) 207 table = macbookair_fn_keys; |
208 else if (hid->product >= USB_DEVICE_ID_APPLE_WELLSPRING6_ANSI && 209 hid->product <= USB_DEVICE_ID_APPLE_WELLSPRING6_JIS) 210 table = macbookair_fn_keys; 211 else if (hid->product >= USB_DEVICE_ID_APPLE_WELLSPRING6A_ANSI && 212 hid->product <= USB_DEVICE_ID_APPLE_WELLSPRING6A_JIS) 213 table = macbookair4_fn_keys; |
|
186 else if (hid->product < 0x21d || hid->product >= 0x300) 187 table = powerbook_fn_keys; 188 else 189 table = apple_fn_keys; 190 191 trans = apple_find_translation (table, usage->code); 192 193 if (trans) { --- 245 unchanged lines hidden (view full) --- 439 .driver_data = APPLE_HAS_FN }, 440 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_GEYSER4_HF_ANSI), 441 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 442 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_GEYSER4_HF_ISO), 443 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 444 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_GEYSER4_HF_JIS), 445 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN | 446 APPLE_RDESC_JIS }, | 214 else if (hid->product < 0x21d || hid->product >= 0x300) 215 table = powerbook_fn_keys; 216 else 217 table = apple_fn_keys; 218 219 trans = apple_find_translation (table, usage->code); 220 221 if (trans) { --- 245 unchanged lines hidden (view full) --- 467 .driver_data = APPLE_HAS_FN }, 468 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_GEYSER4_HF_ANSI), 469 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 470 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_GEYSER4_HF_ISO), 471 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 472 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_GEYSER4_HF_JIS), 473 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN | 474 APPLE_RDESC_JIS }, |
447 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_REVB_ANSI), 448 .driver_data = APPLE_HAS_FN }, 449 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_REVB_ISO), 450 .driver_data = APPLE_HAS_FN | APPLE_ISO_KEYBOARD }, 451 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_REVB_JIS), 452 .driver_data = APPLE_HAS_FN }, | |
453 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_ANSI), 454 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 455 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_ISO), 456 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN | 457 APPLE_ISO_KEYBOARD }, 458 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_JIS), 459 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 460 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING_ANSI), --- 27 unchanged lines hidden (view full) --- 488 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING4A_JIS), 489 .driver_data = APPLE_HAS_FN | APPLE_RDESC_JIS }, 490 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_ANSI), 491 .driver_data = APPLE_HAS_FN }, 492 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_ISO), 493 .driver_data = APPLE_HAS_FN | APPLE_ISO_KEYBOARD }, 494 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_JIS), 495 .driver_data = APPLE_HAS_FN | APPLE_RDESC_JIS }, | 475 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_ANSI), 476 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 477 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_ISO), 478 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN | 479 APPLE_ISO_KEYBOARD }, 480 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_JIS), 481 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 482 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING_ANSI), --- 27 unchanged lines hidden (view full) --- 510 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING4A_JIS), 511 .driver_data = APPLE_HAS_FN | APPLE_RDESC_JIS }, 512 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_ANSI), 513 .driver_data = APPLE_HAS_FN }, 514 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_ISO), 515 .driver_data = APPLE_HAS_FN | APPLE_ISO_KEYBOARD }, 516 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5_JIS), 517 .driver_data = APPLE_HAS_FN | APPLE_RDESC_JIS }, |
518 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6_ANSI), 519 .driver_data = APPLE_HAS_FN }, 520 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6_ISO), 521 .driver_data = APPLE_HAS_FN | APPLE_ISO_KEYBOARD }, 522 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6_JIS), 523 .driver_data = APPLE_HAS_FN | APPLE_RDESC_JIS }, 524 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6A_ANSI), 525 .driver_data = APPLE_HAS_FN }, 526 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6A_ISO), 527 .driver_data = APPLE_HAS_FN | APPLE_ISO_KEYBOARD }, 528 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6A_JIS), 529 .driver_data = APPLE_HAS_FN | APPLE_RDESC_JIS }, |
|
496 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ANSI), 497 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 498 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ISO), 499 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN | 500 APPLE_ISO_KEYBOARD }, 501 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_JIS), 502 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 503 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_FOUNTAIN_TP_ONLY), --- 38 unchanged lines hidden --- | 530 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ANSI), 531 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 532 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ISO), 533 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN | 534 APPLE_ISO_KEYBOARD }, 535 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_JIS), 536 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, 537 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_FOUNTAIN_TP_ONLY), --- 38 unchanged lines hidden --- |