From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
To: Nikolai Kondrashov <spbnick@gmail.com>, Jiri Kosina <jkosina@suse.cz>
Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org,
DIGImend-devel <DIGImend-devel@lists.sourceforge.net>
Subject: [PATCH v2 3/6] HID: uclogic: name the input nodes based on their tool
Date: Thu, 26 Feb 2015 13:57:26 -0500 [thread overview]
Message-ID: <1424977049-18648-4-git-send-email-benjamin.tissoires@redhat.com> (raw)
In-Reply-To: <1424977049-18648-1-git-send-email-benjamin.tissoires@redhat.com>
We append "Pen", "Pad", "Mouse", "Keyboard", "Consumer Control" or
"System Control" suffix to the appropriate input node to match what
the Wacom driver does and be more convenient for the user to know
which one is which.
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
---
changes in v2:
- completed the list with "Consumer Control" and "System Control" to
force having a suffix to each input node on the Huion H610 Pro
drivers/hid/hid-uclogic.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/drivers/hid/hid-uclogic.c b/drivers/hid/hid-uclogic.c
index 397f1df..90e2612 100644
--- a/drivers/hid/hid-uclogic.c
+++ b/drivers/hid/hid-uclogic.c
@@ -713,6 +713,51 @@ static __u8 *uclogic_report_fixup(struct hid_device *hdev, __u8 *rdesc,
return rdesc;
}
+static void uclogic_input_configured(struct hid_device *hdev,
+ struct hid_input *hi)
+{
+ char *name;
+ const char *suffix = NULL;
+ struct hid_field *field;
+ size_t len;
+
+ /* no report associated (HID_QUIRK_MULTI_INPUT not set) */
+ if (!hi->report)
+ return;
+
+ field = hi->report->field[0];
+
+ switch (field->application) {
+ case HID_GD_KEYBOARD:
+ suffix = "Keyboard";
+ break;
+ case HID_GD_MOUSE:
+ suffix = "Mouse";
+ break;
+ case HID_GD_KEYPAD:
+ suffix = "Pad";
+ break;
+ case HID_DG_PEN:
+ suffix = "Pen";
+ break;
+ case HID_CP_CONSUMER_CONTROL:
+ suffix = "Consumer Control";
+ break;
+ case HID_GD_SYSTEM_CONTROL:
+ suffix = "System Control";
+ break;
+ }
+
+ if (suffix) {
+ len = strlen(hdev->name) + 2 + strlen(suffix);
+ name = devm_kzalloc(&hi->input->dev, len, GFP_KERNEL);
+ if (name) {
+ snprintf(name, len, "%s %s", hdev->name, suffix);
+ hi->input->name = name;
+ }
+ }
+}
+
/**
* Enable fully-functional tablet mode and determine device parameters.
*
@@ -901,6 +946,7 @@ static struct hid_driver uclogic_driver = {
.probe = uclogic_probe,
.report_fixup = uclogic_report_fixup,
.raw_event = uclogic_raw_event,
+ .input_configured = uclogic_input_configured,
};
module_hid_driver(uclogic_driver);
--
2.1.0
next prev parent reply other threads:[~2015-02-26 18:57 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-26 18:57 [PATCH v2 0/6] HID: huion/uclogic merge and few additions Benjamin Tissoires
2015-02-26 18:57 ` [PATCH v2 1/6] HID: uclogic: Set quirks from inside the driver Benjamin Tissoires
2015-02-26 18:57 ` [PATCH v2 2/6] HID: uclogic: merge hid-huion driver in hid-uclogic Benjamin Tissoires
2015-02-26 18:57 ` Benjamin Tissoires [this message]
2015-03-01 18:04 ` [PATCH v2 3/6] HID: uclogic: name the input nodes based on their tool Nikolai Kondrashov
2015-02-26 18:57 ` [PATCH v2 4/6] HID: uclogic: apply quirk NO_EMPTY_INPUT Benjamin Tissoires
2015-03-01 18:07 ` Nikolai Kondrashov
2015-02-26 18:57 ` [PATCH v2 5/6] HID: uclogic: discard the extra Pen input node on Huion tablets Benjamin Tissoires
2015-03-01 18:13 ` Nikolai Kondrashov
2015-02-26 18:57 ` [PATCH v2 6/6] HID: uclogic: actually invert the in-range bit for huion tablets only Benjamin Tissoires
2015-02-28 13:59 ` Nikolai Kondrashov
2015-03-02 22:25 ` Benjamin Tissoires
2015-03-03 10:54 ` Nikolai Kondrashov
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=1424977049-18648-4-git-send-email-benjamin.tissoires@redhat.com \
--to=benjamin.tissoires@redhat.com \
--cc=DIGImend-devel@lists.sourceforge.net \
--cc=jkosina@suse.cz \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=spbnick@gmail.com \
/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).