--- a/drivers/hid/hid-logitech-hidpp.c 2019-09-15 23:19:32.000000000 +0200 +++ b/drivers/hid/hid-logitech-hidpp.c 2019-10-03 14:38:07.108428331 +0200 @@ -3483,7 +3483,7 @@ static bool hidpp_validate_device(struct hid_device *hdev) { return hidpp_validate_report(hdev, REPORT_ID_HIDPP_SHORT, - HIDPP_REPORT_SHORT_LENGTH, false) && + HIDPP_REPORT_SHORT_LENGTH, true) && hidpp_validate_report(hdev, REPORT_ID_HIDPP_LONG, HIDPP_REPORT_LONG_LENGTH, true); } @@ -3577,7 +3577,10 @@ * Plain USB connections need to actually call start and open * on the transport driver to allow incoming data. */ - ret = hid_hw_start(hdev, 0); + if (hidpp->quirks & HIDPP_QUIRK_CLASS_G920) + ret = hid_hw_start(hdev, HID_CONNECT_DEFAULT); + else + ret = hid_hw_start(hdev, 0); if (ret) { hid_err(hdev, "hw start failed\n"); goto hid_hw_start_fail;