Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
Input: atkbd - add force relese key quirk for Soltech TA12
Input: fix EVIOCGNAME/JSIOCGNAME regression
Input: atkbd - add forced release keys quirk for FSC Amilo Pi 3525
Input: pcspkr - switch driver to dev_pm_ops
Input: xpad - don't resend successfully sent outgoing requests
Input: wistron_btns - recognize Maxdata Pro 7000 notebooks

+62 -18
+1 -2
drivers/input/evdev.c
··· 608 608 p, compat_mode); 609 609 610 610 if (_IOC_NR(cmd) == _IOC_NR(EVIOCGNAME(0))) 611 - return str_to_user(dev_name(&evdev->dev), 612 - _IOC_SIZE(cmd), p); 611 + return str_to_user(dev->name, _IOC_SIZE(cmd), p); 613 612 614 613 if (_IOC_NR(cmd) == _IOC_NR(EVIOCGPHYS(0))) 615 614 return str_to_user(dev->phys, _IOC_SIZE(cmd), p);
+1 -1
drivers/input/joydev.c
··· 536 536 default: 537 537 if ((cmd & ~IOCSIZE_MASK) == JSIOCGNAME(0)) { 538 538 int len; 539 - const char *name = dev_name(&dev->dev); 539 + const char *name = dev->name; 540 540 541 541 if (!name) 542 542 return 0;
+13 -13
drivers/input/joystick/xpad.c
··· 470 470 status = urb->status; 471 471 472 472 switch (status) { 473 - case 0: 473 + case 0: 474 474 /* success */ 475 - break; 476 - case -ECONNRESET: 477 - case -ENOENT: 478 - case -ESHUTDOWN: 479 - /* this urb is terminated, clean up */ 480 - dbg("%s - urb shutting down with status: %d", 481 - __func__, status); 482 - return; 483 - default: 484 - dbg("%s - nonzero urb status received: %d", 485 - __func__, status); 486 - goto exit; 475 + return; 476 + 477 + case -ECONNRESET: 478 + case -ENOENT: 479 + case -ESHUTDOWN: 480 + /* this urb is terminated, clean up */ 481 + dbg("%s - urb shutting down with status: %d", __func__, status); 482 + return; 483 + 484 + default: 485 + dbg("%s - nonzero urb status received: %d", __func__, status); 486 + goto exit; 487 487 } 488 488 489 489 exit:
+32
drivers/input/keyboard/atkbd.c
··· 895 895 }; 896 896 897 897 /* 898 + * Amilo Pi 3525 key release for Fn+Volume keys not working 899 + */ 900 + static unsigned int atkbd_amilo_pi3525_forced_release_keys[] = { 901 + 0x20, 0xa0, 0x2e, 0xae, 0x30, 0xb0, -1U 902 + }; 903 + 904 + /* 898 905 * Amilo Xi 3650 key release for light touch bar not working 899 906 */ 900 907 static unsigned int atkbd_amilo_xi3650_forced_release_keys[] = { 901 908 0x67, 0xed, 0x90, 0xa2, 0x99, 0xa4, 0xae, 0xb0, -1U 909 + }; 910 + 911 + /* 912 + * Soltech TA12 system with broken key release on volume keys and mute key 913 + */ 914 + static unsigned int atkdb_soltech_ta12_forced_release_keys[] = { 915 + 0xa0, 0xae, 0xb0, -1U 902 916 }; 903 917 904 918 /* ··· 1582 1568 .driver_data = atkbd_amilo_pa1510_forced_release_keys, 1583 1569 }, 1584 1570 { 1571 + .ident = "Fujitsu Amilo Pi 3525", 1572 + .matches = { 1573 + DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"), 1574 + DMI_MATCH(DMI_PRODUCT_NAME, "AMILO Pi 3525"), 1575 + }, 1576 + .callback = atkbd_setup_forced_release, 1577 + .driver_data = atkbd_amilo_pi3525_forced_release_keys, 1578 + }, 1579 + { 1585 1580 .ident = "Fujitsu Amilo Xi 3650", 1586 1581 .matches = { 1587 1582 DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU SIEMENS"), ··· 1598 1575 }, 1599 1576 .callback = atkbd_setup_forced_release, 1600 1577 .driver_data = atkbd_amilo_xi3650_forced_release_keys, 1578 + }, 1579 + { 1580 + .ident = "Soltech Corporation TA12", 1581 + .matches = { 1582 + DMI_MATCH(DMI_SYS_VENDOR, "Soltech Corporation"), 1583 + DMI_MATCH(DMI_PRODUCT_NAME, "TA12"), 1584 + }, 1585 + .callback = atkbd_setup_forced_release, 1586 + .driver_data = atkdb_soltech_ta12_forced_release_keys, 1601 1587 }, 1602 1588 { } 1603 1589 };
+6 -2
drivers/input/misc/pcspkr.c
··· 114 114 return 0; 115 115 } 116 116 117 - static int pcspkr_suspend(struct platform_device *dev, pm_message_t state) 117 + static int pcspkr_suspend(struct device *dev) 118 118 { 119 119 pcspkr_event(NULL, EV_SND, SND_BELL, 0); 120 120 ··· 127 127 pcspkr_event(NULL, EV_SND, SND_BELL, 0); 128 128 } 129 129 130 + static struct dev_pm_ops pcspkr_pm_ops = { 131 + .suspend = pcspkr_suspend, 132 + }; 133 + 130 134 static struct platform_driver pcspkr_platform_driver = { 131 135 .driver = { 132 136 .name = "pcspkr", 133 137 .owner = THIS_MODULE, 138 + .pm = &pcspkr_pm_ops, 134 139 }, 135 140 .probe = pcspkr_probe, 136 141 .remove = __devexit_p(pcspkr_remove), 137 - .suspend = pcspkr_suspend, 138 142 .shutdown = pcspkr_shutdown, 139 143 }; 140 144
+9
drivers/input/misc/wistron_btns.c
··· 646 646 }, 647 647 { 648 648 .callback = dmi_matched, 649 + .ident = "Maxdata Pro 7000 DX", 650 + .matches = { 651 + DMI_MATCH(DMI_SYS_VENDOR, "MAXDATA"), 652 + DMI_MATCH(DMI_PRODUCT_NAME, "Pro 7000"), 653 + }, 654 + .driver_data = keymap_fs_amilo_pro_v2000 655 + }, 656 + { 657 + .callback = dmi_matched, 649 658 .ident = "Fujitsu N3510", 650 659 .matches = { 651 660 DMI_MATCH(DMI_SYS_VENDOR, "FUJITSU"),