From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
To: Jiri Kosina <jikos@kernel.org>, Bastien Nocera <hadess@hadess.net>
Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH v3 09/19] HID: logitech-hidpp: handle battery events in hidpp_raw_hidpp_event()
Date: Mon, 27 Mar 2017 16:59:29 +0200 [thread overview]
Message-ID: <20170327145939.29824-10-benjamin.tissoires@redhat.com> (raw)
In-Reply-To: <20170327145939.29824-1-benjamin.tissoires@redhat.com>
Battery events are reported through HID++, so we need to be sure
the report ID is the HID++ one.
Without this, we might receive keyboard events that looks just like
battery events with wrong data and which will confuse user space.
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
---
new in v3
---
drivers/hid/hid-logitech-hidpp.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c
index 81ebded..3e2f716 100644
--- a/drivers/hid/hid-logitech-hidpp.c
+++ b/drivers/hid/hid-logitech-hidpp.c
@@ -2250,6 +2250,7 @@ static int hidpp_raw_hidpp_event(struct hidpp_device *hidpp, u8 *data,
struct hidpp_report *question = hidpp->send_receive_buf;
struct hidpp_report *answer = hidpp->send_receive_buf;
struct hidpp_report *report = (struct hidpp_report *)data;
+ int ret;
/*
* If the mutex is locked then we have a pending answer from a
@@ -2283,6 +2284,12 @@ static int hidpp_raw_hidpp_event(struct hidpp_device *hidpp, u8 *data,
return 1;
}
+ if (hidpp->capabilities & HIDPP_CAPABILITY_HIDPP20_BATTERY) {
+ ret = hidpp20_battery_event(hidpp, data, size);
+ if (ret != 0)
+ return ret;
+ }
+
return 0;
}
@@ -2325,12 +2332,6 @@ static int hidpp_raw_event(struct hid_device *hdev, struct hid_report *report,
if (ret != 0)
return ret;
- if (hidpp->capabilities & HIDPP_CAPABILITY_HIDPP20_BATTERY) {
- ret = hidpp20_battery_event(hidpp, data, size);
- if (ret != 0)
- return ret;
- }
-
if (hidpp->quirks & HIDPP_QUIRK_CLASS_WTP)
return wtp_raw_event(hdev, data, size);
else if (hidpp->quirks & HIDPP_QUIRK_CLASS_M560)
--
2.9.3
next prev parent reply other threads:[~2017-03-27 15:01 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-27 14:59 [PATCH v3 00/19] Report power supply from hid-logitech-hidpp Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 01/19] HID: logitech-dj: allow devices to request full pairing information Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 02/19] HID: logitech-hidpp: Add scope to battery Benjamin Tissoires
2017-04-06 9:48 ` Jiri Kosina
2017-04-06 9:57 ` Benjamin Tissoires
2017-04-06 18:34 ` Jiri Kosina
2017-03-27 14:59 ` [PATCH v3 03/19] HID: logitech-hidpp: make sure we only register one battery per device Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 04/19] HID: logitech-hidpp: do not query the name through HID++ for 1.0 devices Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 05/19] HID: logitech-hidpp: create a capabilities bits field Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 06/19] HID: logitech-hidpp: rework probe path for unifying devices Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 07/19] HID: logitech-hidpp: retrieve the HID++ device name when available Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 08/19] HID: logitech-hidpp: rework hidpp_connect_event() Benjamin Tissoires
2017-03-27 14:59 ` Benjamin Tissoires [this message]
2017-03-27 14:59 ` [PATCH v3 10/19] HID: logitech-hidpp: forward device info in power_supply Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 11/19] HID: logitech-hidpp: create the battery for all types of HID++ devices Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 12/19] HID: logitech-hidpp: return an error if the queried feature is not present Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 13/19] HID: logitech-hidpp: notify battery on connect Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 14/19] HID: logitech-hidpp: battery: provide ONLINE property Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 15/19] HID: logitech-hidpp: rename battery level into capacity Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 16/19] HID: logitech-hidpp: battery: provide CAPACITY_LEVEL Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 17/19] HID: logitech-hidpp: add support for battery status for the K750 Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 18/19] HID: logitech-hidpp: enable HID++ 1.0 battery reporting Benjamin Tissoires
2017-03-27 14:59 ` [PATCH v3 19/19] HID: logitech-hidpp: add a sysfs file to tell we support power_supply Benjamin Tissoires
2017-03-27 16:23 ` [PATCH v3 00/19] Report power supply from hid-logitech-hidpp Bastien Nocera
2017-06-01 18:06 ` Dave Hansen
2017-06-01 19:26 ` Bastien Nocera
2017-06-02 7:29 ` Benjamin Tissoires
2017-06-02 12:54 ` Bastien Nocera
2017-06-02 13:47 ` Benjamin Tissoires
2017-06-02 14:10 ` Dave Hansen
2017-06-05 8:01 ` Jiri Kosina
2017-06-05 13:09 ` Bastien Nocera
2017-06-05 14:53 ` Dave Hansen
2017-06-05 16:22 ` Bastien Nocera
2017-06-06 7:25 ` Benjamin Tissoires
2017-06-06 7:46 ` Bastien Nocera
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170327145939.29824-10-benjamin.tissoires@redhat.com \
--to=benjamin.tissoires@redhat.com \
--cc=hadess@hadess.net \
--cc=jikos@kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).