Received: by 2002:a05:6358:45e:b0:b5:b6eb:e1f9 with SMTP id 30csp4220196rwe; Tue, 30 Aug 2022 06:41:19 -0700 (PDT) X-Google-Smtp-Source: AA6agR6uT1qzrVf0tYMwitES0mWcyarf8bl8pP2T4k7XEn+Yqb21d2elKyPsUmssLY3YequTBNhG X-Received: by 2002:a05:6402:5ca:b0:445:c80a:3c2 with SMTP id n10-20020a05640205ca00b00445c80a03c2mr20659727edx.247.1661866867498; Tue, 30 Aug 2022 06:41:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1661866867; cv=none; d=google.com; s=arc-20160816; b=cLnTF6FXcSxv8mx0cOsEp8hkO8QgzWYjQV6r+pDxlh5sqJTtVTZxTUOBcIlXag2PrL rebkjLDkaKAo/PL7SIKWgQ5vH3XRmTJalfFfky/Ar6zXNrCvxmzEF+lpd0zT8jpkStKF 0XtgXXLNwWAgG8nMvGjhAX9cDWpmzWmrxSW87+TSPxxo0YIiuVu0SlDd85GXXaHWe9V/ zhCfvRhtmxmhz4jmlIpEciCGF2aN67ghSODTUALRZ0Kloe4dL2l1UXt8tMv6gLo4uf7F eVl6GOSUhW1cHH3VaFx6D/mR3ezawLht0LjV7KzE2pKhj3+0QRvVteEJ19oz86pLYwBH WeqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=8vE7g5h5D8KJzjOg+JEvfUNSjLkfPcUQoFdVC1LDIUo=; b=duWbWn+9wfIp/D0s50Pd/Nro/MPXO2eSgLV1Nqv0d8bDEQsxzacDq2RUY0Ke20kqLU MoCIIwJceK7G1AO+IfamM5XsD39nGW4xlv2s69c0J/6Bj/KlEpMAR5xMKQTz37ERZ0JT 6BhOlC1t3mX8bhJBSP0tGdh160nxBWtv4YssVSL0y6aXf38cRJdlx4DSUraivap2eHin NI5RDMX7ncusCQKzja4ReOx4qy2ZoL8auFEcdupBqomoIneUHIl3fcu7c2b4Hqf5QcDf pzGISTUaUV2CExMD/0Kks8jGl+MqjY7UKWvKw9UUhjs4YQ3tPjB0Ldozo8fnIX/uGZUu hrEQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id v13-20020a50d58d000000b0043d54ba0a4dsi8906231edi.327.2022.08.30.06.40.40; Tue, 30 Aug 2022 06:41:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230304AbiH3N01 (ORCPT + 99 others); Tue, 30 Aug 2022 09:26:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46028 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230226AbiH3N0S (ORCPT ); Tue, 30 Aug 2022 09:26:18 -0400 Received: from relay7-d.mail.gandi.net (relay7-d.mail.gandi.net [IPv6:2001:4b98:dc4:8::227]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5190F7E00C; Tue, 30 Aug 2022 06:26:00 -0700 (PDT) Received: (Authenticated sender: hadess@hadess.net) by mail.gandi.net (Postfix) with ESMTPSA id ACECE20009; Tue, 30 Aug 2022 13:25:55 +0000 (UTC) From: Bastien Nocera To: linux-input@vger.kernel.org Cc: linux-kernel@vger.kernel.org, Jiri Kosina , Benjamin Tissoires , "Peter F . Patel-Schneider" , =?UTF-8?q?Filipe=20La=C3=ADns?= , Nestor Lopez Casado Subject: [v4 4/5] HID: logitech-hidpp: Fix "Sw. Id." for HID++ 2.0 commands Date: Tue, 30 Aug 2022 15:25:48 +0200 Message-Id: <20220830132549.7240-4-hadess@hadess.net> X-Mailer: git-send-email 2.37.2 In-Reply-To: <20220830132549.7240-1-hadess@hadess.net> References: <20220830132549.7240-1-hadess@hadess.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Always set a non-zero "Sw. Id." in the lower nibble of the Function/ASE and Software Identifier byte in HID++ 2.0 commands. As per the "Protocol HID++2.0 essential features" section in https://lekensteyn.nl/files/logitech/logitech_hidpp_2.0_specification_draft_2012-06-04.pdf " Software identifier (4 bits, unsigned) A number uniquely defining the software that sends a request. The firmware must copy the software identifier in the response but does not use it in any other ways. 0 Do not use (allows to distinguish a notification from a response). " Link: https://bugzilla.kernel.org/show_bug.cgi?id=215699 Signed-off-by: Bastien Nocera --- drivers/hid/hid-logitech-hidpp.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c index 98ebedb73d98..e51ccf2c04e3 100644 --- a/drivers/hid/hid-logitech-hidpp.c +++ b/drivers/hid/hid-logitech-hidpp.c @@ -41,6 +41,9 @@ module_param(disable_tap_to_click, bool, 0644); MODULE_PARM_DESC(disable_tap_to_click, "Disable Tap-To-Click mode reporting for touchpads (only on the K400 currently)."); +/* Define a non-zero software ID to identify our own requests */ +#define LINUX_KERNEL_SW_ID 0x01 + #define REPORT_ID_HIDPP_SHORT 0x10 #define REPORT_ID_HIDPP_LONG 0x11 #define REPORT_ID_HIDPP_VERY_LONG 0x12 @@ -343,7 +346,7 @@ static int hidpp_send_fap_command_sync(struct hidpp_device *hidpp, else message->report_id = REPORT_ID_HIDPP_LONG; message->fap.feature_index = feat_index; - message->fap.funcindex_clientid = funcindex_clientid; + message->fap.funcindex_clientid = funcindex_clientid | LINUX_KERNEL_SW_ID; memcpy(&message->fap.params, params, param_count); ret = hidpp_send_message_sync(hidpp, message, response); -- 2.37.2