Merge branches 'for-4.0/upstream-fixes', 'for-4.1/genius', 'for-4.1/huion-uclogic...
authorJiri Kosina <jkosina@suse.cz>
Mon, 13 Apr 2015 21:41:15 +0000 (23:41 +0200)
committerJiri Kosina <jkosina@suse.cz>
Mon, 13 Apr 2015 21:41:15 +0000 (23:41 +0200)
1  2  3  4  5  6  7  8  9  10  11 
drivers/hid/Kconfig
drivers/hid/hid-core.c
drivers/hid/hid-debug.c
drivers/hid/hid-ids.h
drivers/hid/hid-multitouch.c
drivers/hid/hid-sony.c
drivers/hid/usbhid/hid-quirks.c
drivers/input/input-mt.c
include/linux/hid.h

Simple merge
Simple merge
Simple merge
index 3bce9c7e6fa61eb605cf58a4d288fa01c380f087,b699daf08124c6cee7e452b9e06cc4b4aed20751,204312bfab2c6319985ce8d82d0a92900c746c65,204312bfab2c6319985ce8d82d0a92900c746c65,204312bfab2c6319985ce8d82d0a92900c746c65,46edb4d3ed28efc61582811ea6b5fdeac2a2808a,204312bfab2c6319985ce8d82d0a92900c746c65,46edb4d3ed28efc61582811ea6b5fdeac2a2808a,46edb4d3ed28efc61582811ea6b5fdeac2a2808a,46edb4d3ed28efc61582811ea6b5fdeac2a2808a,7fe5590b328b706a0eac568c6a5fbc544bcd05f6..41f167e4d75fdeec20d795b566fdeba1c642497f
           #define USB_DEVICE_ID_UGCI_FLYING    0x0020
           #define USB_DEVICE_ID_UGCI_FIGHTING  0x0030
           
          -#define USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE     0x0a4a
 +++++++++ #define USB_VENDOR_ID_HP             0x03f0
 ++++++++++#define USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE_0A4A        0x0a4a
 ++++++++++#define USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE_0B4A        0x0b4a
 +++++++++ #define USB_PRODUCT_ID_HP_PIXART_OEM_USB_OPTICAL_MOUSE               0x134a
 +++++++++ 
           #define USB_VENDOR_ID_HUION          0x256c
           #define USB_DEVICE_ID_HUION_TABLET   0x006e
           
Simple merge
index 1896c019e302934aa13c6f9ac434c51637f450ce,31e9d25611064d0500eba47ea0b710beac31bb0b,1896c019e302934aa13c6f9ac434c51637f450ce,1896c019e302934aa13c6f9ac434c51637f450ce,1896c019e302934aa13c6f9ac434c51637f450ce,31e9d25611064d0500eba47ea0b710beac31bb0b,1896c019e302934aa13c6f9ac434c51637f450ce,31e9d25611064d0500eba47ea0b710beac31bb0b,fa11930dfee29144b2b67aec5a6690bf7a21ea3d,31e9d25611064d0500eba47ea0b710beac31bb0b,1896c019e302934aa13c6f9ac434c51637f450ce..27f67e7ebf10b6065cee4da62f2ec78c39c28d07
@@@@@@@@@@@@ -802,9 -802,9 -802,9 -802,9 -802,9 -802,9 -802,9 -802,9 -802,10 -802,9 -802,9 +802,10 @@@@@@@@@@@@ union sixaxis_output_report_01 
           #define DS4_REPORT_0x05_SIZE 32
           #define DS4_REPORT_0x11_SIZE 78
           #define DS4_REPORT_0x81_SIZE 7
-------- --#define SIXAXIS_REPORT_0xF2_SIZE 18
++++++++ ++#define SIXAXIS_REPORT_0xF2_SIZE 17
++++++++ ++#define SIXAXIS_REPORT_0xF5_SIZE 8
           
 -   - --- static spinlock_t sony_dev_list_lock;
 +   + +++ static DEFINE_SPINLOCK(sony_dev_list_lock);
           static LIST_HEAD(sony_device_list);
           static DEFINE_IDA(sony_device_id_allocator);
           
@@@@@@@@@@@@ -1136,12 -1136,12 -1136,12 -1136,12 -1136,12 -1136,12 -1136,12 -1136,12 -1140,29 -1136,12 -1136,12 +1140,29 @@@@@@@@@@@@ static int sixaxis_set_operational_usb(
                if (!buf)
                        return -ENOMEM;
           
-------- --     ret = hid_hw_raw_request(hdev, 0xf2, buf, 17, HID_FEATURE_REPORT,
-------- --                              HID_REQ_GET_REPORT);
++++++++ ++     ret = hid_hw_raw_request(hdev, 0xf2, buf, SIXAXIS_REPORT_0xF2_SIZE,
++++++++ ++                              HID_FEATURE_REPORT, HID_REQ_GET_REPORT);
++++++++ ++     if (ret < 0) {
++++++++ ++             hid_err(hdev, "can't set operational mode: step 1\n");
++++++++ ++             goto out;
++++++++ ++     }
+ +++ +   +
++++++++ ++     /*
++++++++ ++      * Some compatible controllers like the Speedlink Strike FX and
++++++++ ++      * Gasia need another query plus an USB interrupt to get operational.
++++++++ ++      */
++++++++ ++     ret = hid_hw_raw_request(hdev, 0xf5, buf, SIXAXIS_REPORT_0xF5_SIZE,
++++++++ ++                              HID_FEATURE_REPORT, HID_REQ_GET_REPORT);
++++++++ ++     if (ret < 0) {
++++++++ ++             hid_err(hdev, "can't set operational mode: step 2\n");
++++++++ ++             goto out;
++++++++ ++     }
 +   + + + 
++++++++ ++     ret = hid_hw_output_report(hdev, buf, 1);
                if (ret < 0)
-------- --             hid_err(hdev, "can't set operational mode\n");
++++++++ ++             hid_err(hdev, "can't set operational mode: step 3\n");
           
++++++++ ++out:
                kfree(buf);
           
                return ret;
index 219ecb43fc233cb9859bb92809f5c90dfb4e5429,989c59a4b5c9c2d8e8ce5886049839ee595345dc,6c9eab4f58bc0325f72013f8f2664f545a09b80f,9be99a67bfe2ec9f042e765904913628f8c2b654,9be99a67bfe2ec9f042e765904913628f8c2b654,9be99a67bfe2ec9f042e765904913628f8c2b654,9be99a67bfe2ec9f042e765904913628f8c2b654,9be99a67bfe2ec9f042e765904913628f8c2b654,9be99a67bfe2ec9f042e765904913628f8c2b654,9be99a67bfe2ec9f042e765904913628f8c2b654,4e3ae9fbb9b52b59d9d74ee6453002b581be88c9..a775143e6265e337597e2dd15e6c9d682c04354f
@@@@@@@@@@@@ -78,13 -78,6 -78,6 -78,6 -78,6 -78,6 -78,6 -78,6 -78,6 -78,6 -78,9 +78,13 @@@@@@@@@@@@ static const struct hid_blacklist 
                { USB_VENDOR_ID_ELO, USB_DEVICE_ID_ELO_TS2700, HID_QUIRK_NOGET },
                { USB_VENDOR_ID_FORMOSA, USB_DEVICE_ID_FORMOSA_IR_RECEIVER, HID_QUIRK_NO_INIT_REPORTS },
                { USB_VENDOR_ID_FREESCALE, USB_DEVICE_ID_FREESCALE_MX28, HID_QUIRK_NOGET },
          -     { USB_VENDOR_ID_HP, USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE, HID_QUIRK_ALWAYS_POLL },
 ++++++++++     { USB_VENDOR_ID_HP, USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE_0A4A, HID_QUIRK_ALWAYS_POLL },
 ++++++++++     { USB_VENDOR_ID_HP, USB_PRODUCT_ID_HP_LOGITECH_OEM_USB_OPTICAL_MOUSE_0B4A, HID_QUIRK_ALWAYS_POLL },
 +++++++++      { USB_VENDOR_ID_HP, USB_PRODUCT_ID_HP_PIXART_OEM_USB_OPTICAL_MOUSE, HID_QUIRK_ALWAYS_POLL },
 +++++++++      { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_C077, HID_QUIRK_ALWAYS_POLL },
 ++++++++++     { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOUSE_C01A, HID_QUIRK_ALWAYS_POLL },
 ++++++++++     { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOUSE_C05A, HID_QUIRK_ALWAYS_POLL },
 ++++++++++     { USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOUSE_C06A, HID_QUIRK_ALWAYS_POLL },
                { USB_VENDOR_ID_MGE, USB_DEVICE_ID_MGE_UPS, HID_QUIRK_NOGET },
                { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3, HID_QUIRK_NO_INIT_REPORTS },
                { USB_VENDOR_ID_MICROSOFT, USB_DEVICE_ID_MS_TYPE_COVER_3_JP, HID_QUIRK_NO_INIT_REPORTS },
Simple merge
Simple merge