{"push_id":935970689,"size":146,"distinct_size":146,"ref":"refs/heads/master","head":"7d1fc01afc5af35e5197e0e75abe900f6bd279b8","before":"10a0c0f0595b20efa127a1816670c64a3d0e4965","commits":[{"sha":"d8aaccda7144df1c3d35251313197aed4cbea7bc","author":{"email":"f15ca1017e972332ff061b480de666d55b1ccfa2@gmail.com","name":"Frank Praznik"},"message":"HID: sony: Refactor the output report sending functions\n\nRefactor the output report sending functions to allow for the sending of output\nreports without enqueuing a work item.  Output reports for any device can now be\nsent via the send_output_report function pointer in the sony_sc struct which\npoints to the appropriate output function.  The individual state worker\nfunctions have been replaced with a universal sony_state_worker function which\nuses this function pointer.\n\nSigned-off-by: Frank Praznik <frank.praznik@gmail.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/d8aaccda7144df1c3d35251313197aed4cbea7bc"},{"sha":"decd946c99f6b3826bda0bfd5d1b2ddd56ef6b54","author":{"email":"f15ca1017e972332ff061b480de666d55b1ccfa2@gmail.com","name":"Frank Praznik"},"message":"HID: sony: Save and restore the controller state on suspend and resume\n\nOn hardware which provides standby power for charging devices the state of the\nLEDs and force-feedback on controllers can persist even when the system is in\nstandby.  Additionally, the state of the controllers on resume may be different\nfrom the state they were in at the time when they were suspended (ie. LEDs are\ncleared on resume).\n\nThis implements the suspend and resume callbacks which saves and clears the\nstate of the LEDs on suspend and restores them on resume.  Force-feedback is\nstopped on suspend but not automatically restored on resume until a new event is\nreceived to avoid potentially damaging hardware.\n\nUSB Sixaxis and navigation controllers must be reinitialized when the hardware\nis reset on resume or they won't send any input reports.\n\nSigned-off-by: Frank Praznik <frank.praznik@gmail.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/decd946c99f6b3826bda0bfd5d1b2ddd56ef6b54"},{"sha":"b71b5578a84d297954e4812ba0ca2d466e61cf42","author":{"email":"f15ca1017e972332ff061b480de666d55b1ccfa2@gmail.com","name":"Frank Praznik"},"message":"HID: sony: Remove the size check for the Dualshock 4 HID Descriptor\n\nSony has modified the HID descriptor in new revisions of the Dualshock 4 which\ncauses the size check in the descriptor replacement function to fail.  Remove it\nso that new revisions of the controller will work correctly.\n\nThe module is completely replacing the descriptor instead of patching it, so the\nsize check isn't really necessary anyways.\n\nSigned-off-by: Frank Praznik <frank.praznik@gmail.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/b71b5578a84d297954e4812ba0ca2d466e61cf42"},{"sha":"6cf2e31bea1445ae50644d4d359786f43eb10afc","author":{"email":"1a8531307367602b8284517edb33d53d54e5ce8e@samsung.com","name":"Krzysztof Kozlowski"},"message":"HID: Drop owner assignment from i2c_driver\n\ni2c_driver does not need to set an owner because i2c_register_driver()\nwill set it.\n\nSigned-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>\nAcked-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/6cf2e31bea1445ae50644d4d359786f43eb10afc"},{"sha":"27ba1d56e1e150294802f0dca8368abc51a664fb","author":{"email":"da4b4ed1d87736710c484a0ca84b2abc9f4ef095@users.sourceforge.net","name":"Markus Elfring"},"message":"HID: wacom: Delete an unnecessary check before kobject_put()\n\nThe kobject_put() function tests whether its argument is NULL and then\nreturns immediately. Thus the test around the call is not needed.\n\nThis issue was detected by using the Coccinelle software.\n\nSigned-off-by: Markus Elfring <elfring@users.sourceforge.net>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/27ba1d56e1e150294802f0dca8368abc51a664fb"},{"sha":"54f32fd5dff96a903f838de1efcdfb9831c5b207","author":{"email":"2cc0d0d76de2e6f37b92deeb83c85cb306fc5dc1@kernel.org","name":"Andy Lutomirski"},"message":"HID: Make report_descriptor available for all devices\n\nCurrently the sysfs report_descriptor attribute is only available if the device\nis claimed.  We have the descriptor before we even create the device node, so\njust instantiate report_descriptor statically.\n\nSigned-off-by: Andy Lutomirski <luto@kernel.org>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/54f32fd5dff96a903f838de1efcdfb9831c5b207"},{"sha":"406df15344cc54be9f6852917b19394c375c7b59","author":{"email":"ed58f755cc8caaf10c3e8c731a8b86fb8f13d6cb@suse.cz","name":"Jiri Kosina"},"message":"HID: add Benjamin Tissoires as designated reviewer / co-maintainer\n\nBenjamin has been helping a lot over time with reviewing patches flowing\ninto HID subsystem. Let's make it official.\n\nAcked-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/406df15344cc54be9f6852917b19394c375c7b59"},{"sha":"27b9d5a254dcbc6095404c1bab7c335419601eb8","author":{"email":"088e16a1019277b15d58faf0541e11910eb756f6@mungewell.org","name":"Simon Wood"},"message":"INPUT: xpad: switch Logitech G920 Wheel into HID mode\n\nWhen plugged in the Logitech G920 wheel starts with USBID 046d:c261\nand behaviors as a vendor specific class. If a 'magic' byte sequence\nis sent the wheel will detach and reconnect as a HID device with the\nUSBID 046d:c262.\n\nSigned-off-by: Simon Wood <simon@mungewell.org>\nAcked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>\nReviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/27b9d5a254dcbc6095404c1bab7c335419601eb8"},{"sha":"2f23985879c2fb2967e8bca77b1014b437a9b9ff","author":{"email":"ed58f755cc8caaf10c3e8c731a8b86fb8f13d6cb@suse.cz","name":"Jiri Kosina"},"message":"Merge branch 'for-dmitry/logitech-g920-merge-base' into for-4.5/logitech\n\nPull the branch that has been established to be jointly merged to both hid.git\nand input.git, because both trees have different depending patches on top.\n\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/2f23985879c2fb2967e8bca77b1014b437a9b9ff"},{"sha":"a5ce8f5b12966d34623d6c20278b5b4da7a53675","author":{"email":"088e16a1019277b15d58faf0541e11910eb756f6@mungewell.org","name":"Simon Wood"},"message":"HID: hid-logitech-hidpp: Add support for very long packets\n\nPatch add support for the 'very long' HID++ packets, which are\n64 bytes in length.\n\nSigned-off-by: Simon Wood <simon@mungewell.org>\nReviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/a5ce8f5b12966d34623d6c20278b5b4da7a53675"},{"sha":"7bfd2927adcacac2930a2709a9bcc1231e5bba1c","author":{"email":"088e16a1019277b15d58faf0541e11910eb756f6@mungewell.org","name":"Simon Wood"},"message":"HID: hid-logitech-hidpp: Add basic support for Logitech G920\n\nThis patch adds basic support for the Logitech G920 wheel when in HID\nmode. This wheel 'speaks' the HID++ protocol, and therefor is driven\nwith hid-logitech-hidpp.\n\nAt this stage the driver only shows that it can communicate with the\nwheel by outputting the name discovered over HID++.\n\nThe normal HID functions work to give input functionality using\njoystick/event interface.\n\nNote: in 'hidpp_probe()' we have to start the hardware to get packets\nflowing, the same might apply in future for other devices which don't\nuse the unifying protocol.\n\nSigned-off-by: Simon Wood <simon@mungewell.org>\nReviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/7bfd2927adcacac2930a2709a9bcc1231e5bba1c"},{"sha":"7f4b49fef6ffb5021c01a915c21b3221fd521e81","author":{"email":"088e16a1019277b15d58faf0541e11910eb756f6@mungewell.org","name":"Simon Wood"},"message":"HID: hid-logitech-hidpp: Add range sysfs for Logitech G920\n\nThe G920 can adjust the amount of 'turn' it permits, this patch adds\na sysfs file 'range' to control this.\n\nSigned-off-by: Simon Wood <simon@mungewell.org>\nReviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/7f4b49fef6ffb5021c01a915c21b3221fd521e81"},{"sha":"b466c1dd73d5303a313fb0c962e4eb5879bc1336","author":{"email":"088e16a1019277b15d58faf0541e11910eb756f6@mungewell.org","name":"Simon Wood"},"message":"HID: Add vendor specific usage pages for Logitech G920\n\nThe Logitech G920 uses a couple of vendor specific usage pages,\nwhich results in incorrect number of axis/buttons being detected.\n\nThis patch adds these pages to the 'ignore' list.\n\nReported-by: Elias Vanderstuyft <elias.vds@gmail.com>\nSigned-off-by: Simon Wood <simon@mungewell.org>\nReviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/b466c1dd73d5303a313fb0c962e4eb5879bc1336"},{"sha":"0b1804e3d6ee820303cd07fd5b9579db6110840b","author":{"email":"088e16a1019277b15d58faf0541e11910eb756f6@mungewell.org","name":"Simon Wood"},"message":"HID: hid-logitech-hidpp: G920 remove deadzones\n\nEnsure that the G920 is not given the default deadzones.\n\nSigned-off-by: Simon Wood <simon@mungewell.org>\nReviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/0b1804e3d6ee820303cd07fd5b9579db6110840b"},{"sha":"dfa0c5faf1b8964fa508373232b4cb597a5c226b","author":{"email":"ba324ca7b1c77fc20bb970d5aff6eea9377918a5@rasmusvillemoes.dk","name":"Rasmus Villemoes"},"message":"HID: core: use scnprintf in modalias_show()\n\nscnprintf() exists to provide these semantics, so we might as well use\nit.\n\nSigned-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/dfa0c5faf1b8964fa508373232b4cb597a5c226b"},{"sha":"cc8a9d79222c6b259ea9eceef21b94a5610616f0","author":{"email":"bfee72d94d376f4e00f72b756466867d7f9eb24e@suse.com","name":"Oliver Neukum"},"message":"HID: usbhid: discarded events don't abort idleness\n\nIf an event is discarded the device stays idle.  Just reverse the order of\ncheck and marking busy.\n\nFound by code inspection.\n\nSigned-off-by: Oliver Neukum <oneukum@suse.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/cc8a9d79222c6b259ea9eceef21b94a5610616f0"},{"sha":"25a84db15b3f3a24d3ea7d2baf90693bcff34b0c","author":{"email":"eaf427d598ff7ceff167583df781d0ae2d320570@dell.com","name":"Allen Hung"},"message":"HID: multitouch: enable palm rejection if device implements confidence usage\n\nThe usage Confidence is mandary to Windows Precision Touchpad devices. The\nappearance of this usage is checked in hidinput_connect but the quirk\nMT_QUIRK_VALID_IS_CONFIDENCE is not applied to device accordingly.\nApply this quirk and also remove quirk MT_QUIRK_ALWAYS_VALID to enable palm\nrejection for the WIN 8 touchpad devices which have implemented usage\nConfidence in its input reports.\n\nTested on Dell XPS 13 laptop.\n\nSigned-off-by: Allen Hung <allen_hung@dell.com>\nReviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/25a84db15b3f3a24d3ea7d2baf90693bcff34b0c"},{"sha":"92529623d242cea4440958d7bcebdf291f4ab15e","author":{"email":"ba324ca7b1c77fc20bb970d5aff6eea9377918a5@rasmusvillemoes.dk","name":"Rasmus Villemoes"},"message":"HID: debug: improve hid_debug_event()\n\nThe code in hid_debug_event() causes horrible code generation. First,\nwe do a strlen() call for every byte we copy (we're doing a store to\nglobal memory, so gcc has no way of proving that strlen(buf) doesn't\nchange). Second, since both i, list->tail and HID_DEBUG_BUFSIZE have\nsigned type, the modulo computation has to take into account the\npossibility that list->tail+i is negative, so it's not just a simple\nand.\n\nFix the former by simply not doing strlen() at all (we have to load\nbuf[i] anyway, so testing it is almost free) and the latter by\nchanging i to unsigned. This cuts 29% (69 bytes) of the size of the\nfunction.\n\nSigned-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/92529623d242cea4440958d7bcebdf291f4ab15e"},{"sha":"e470127e9606b1fa151c4184243e61296d1e0c0f","author":{"email":"b3e8ff7ac1c7e75661e16152a5dce1ff36a3e140@adirat.com","name":"Ioan-Adrian Ratiu"},"message":"HID: usbhid: fix recursive deadlock\n\nThe critical section protected by usbhid->lock in hid_ctrl() is too\nbig and because of this it causes a recursive deadlock. \"Too big\" means\nthe case statement and the call to hid_input_report() do not need to be\nprotected by the spinlock (no URB operations are done inside them).\n\nThe deadlock happens because in certain rare cases drivers try to grab\nthe lock while handling the ctrl irq which grabs the lock before them\nas described above. For example newer wacom tablets like 056a:033c try\nto reschedule proximity reads from wacom_intuos_schedule_prox_event()\ncalling hid_hw_request() -> usbhid_request() -> usbhid_submit_report()\nwhich tries to grab the usbhid lock already held by hid_ctrl().\n\nThere are two ways to get out of this deadlock:\n    1. Make the drivers work \"around\" the ctrl critical region, in the\n    wacom case for ex. by delaying the scheduling of the proximity read\n    request itself to a workqueue.\n    2. Shrink the critical region so the usbhid lock protects only the\n    instructions which modify usbhid state, calling hid_input_report()\n    with the spinlock unlocked, allowing the device driver to grab the\n    lock first, finish and then grab the lock afterwards in hid_ctrl().\n\nThis patch implements the 2nd solution.\n\nSigned-off-by: Ioan-Adrian Ratiu <adi@adirat.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/e470127e9606b1fa151c4184243e61296d1e0c0f"},{"sha":"73e7d63efb4d774883a338997943bfa59e127085","author":{"email":"7a0e50e3f6a0939db82b6a8a423c08a163896f41@redhat.com","name":"Benjamin Tissoires"},"message":"HID: multitouch: fix input mode switching on some Elan panels\n\nas reported by https://bugzilla.kernel.org/show_bug.cgi?id=108481\n\nThis bug reports mentions 6d4f5440 (\"HID: multitouch: Fetch feature\nreports on demand for Win8 devices\") as the origin of the problem but this\ncommit actually masked 2 firmware bugs that are annihilating each other:\n\nThe report descriptor declares two features in reports 3 and 5:\n\n0x05, 0x0d,                    // Usage Page (Digitizers)             318\n0x09, 0x0e,                    // Usage (Device Configuration)        320\n0xa1, 0x01,                    // Collection (Application)            322\n0x85, 0x03,                    //  Report ID (3)                      324\n0x09, 0x22,                    //  Usage (Finger)                     326\n0xa1, 0x00,                    //  Collection (Physical)              328\n0x09, 0x52,                    //   Usage (Inputmode)                 330\n0x15, 0x00,                    //   Logical Minimum (0)               332\n0x25, 0x0a,                    //   Logical Maximum (10)              334\n0x75, 0x08,                    //   Report Size (8)                   336\n0x95, 0x02,                    //   Report Count (2)                  338\n0xb1, 0x02,                    //   Feature (Data,Var,Abs)            340\n0xc0,                          //  End Collection                     342\n0x09, 0x22,                    //  Usage (Finger)                     343\n0xa1, 0x00,                    //  Collection (Physical)              345\n0x85, 0x05,                    //   Report ID (5)                     347\n0x09, 0x57,                    //   Usage (Surface Switch)            349\n0x09, 0x58,                    //   Usage (Button Switch)             351\n0x15, 0x00,                    //   Logical Minimum (0)               353\n0x75, 0x01,                    //   Report Size (1)                   355\n0x95, 0x02,                    //   Report Count (2)                  357\n0x25, 0x03,                    //   Logical Maximum (3)               359\n0xb1, 0x02,                    //   Feature (Data,Var,Abs)            361\n0x95, 0x0e,                    //   Report Count (14)                 363\n0xb1, 0x03,                    //   Feature (Cnst,Var,Abs)            365\n0xc0,                          //  End Collection                     367\n\nThe report ID 3 presents 2 input mode features, while only the first one\nis handled by the device. Given that we did not checked if one was\npreviously assigned, we were dealing with the ignored featured and we\nshould never have been able to switch this panel into the multitouch mode.\n\nHowever, the firmware presents an other bugs which allowed 6d4f5440\nto counteract the faulty report descriptor. When we request the values\nof the feature 5, the firmware answers \"03 03 00\". The fields are correct\nbut the report id is wrong. Before 6d4f5440, we retrieved all the features\nand injected them in the system. So when we called report 5, we injected\nin the system the report 3 with the values \"03 00\".\nSetting the second input mode to 03 in this report changed it to \"03 03\"\nand the touchpad switched to the mt mode. We could have set anything\nin the second field because the actual value (the first 03 in this report)\nwas given by the query of report ID 5.\n\nTo sum up: 2 bugs in the firmware were hiding that we were accessing the\nwrong feature.\n\nSigned-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>\nSigned-off-by: Jiri Kosina <jkosina@suse.cz>","distinct":true,"url":"https://api.github.com/repos/torvalds/linux/commits/73e7d63efb4d774883a338997943bfa59e127085"}]}