From: Nikolai Kondrashov <spbnick@gmail.com>
To: Benjamin Tissoires <benjamin.tissoires@redhat.com>,
Jiri Kosina <jkosina@suse.cz>
Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] HID: uclogic: make input_mapping independent of usb
Date: Sat, 14 Mar 2015 20:52:20 +0200 [thread overview]
Message-ID: <55048364.3000204@gmail.com> (raw)
In-Reply-To: <1426261322-7451-1-git-send-email-benjamin.tissoires@redhat.com>
On 03/13/2015 05:42 PM, Benjamin Tissoires wrote:
> No need to retrieve the USB handle in input_mapping() when we already
> do that in probe. It also allows to use the quirk without having to
> add the product ID matching.
>
> Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
> ---
>
> Nick,
>
> no need to cc DIGImend-devel when replying on this one, I'll send the same
> to DIGImend-devel as soon as I have a patchwork link.
>
> Cheers,
> Benjamin
>
> drivers/hid/hid-uclogic.c | 17 ++++++++---------
> 1 file changed, 8 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/hid/hid-uclogic.c b/drivers/hid/hid-uclogic.c
> index bdda9fd..6473e83 100644
> --- a/drivers/hid/hid-uclogic.c
> +++ b/drivers/hid/hid-uclogic.c
> @@ -627,6 +627,7 @@ struct uclogic_drvdata {
> __u8 *rdesc;
> unsigned int rsize;
> bool invert_pen_inrange;
> + bool ignore_pen_interface;
> };
>
> static __u8 *uclogic_report_fixup(struct hid_device *hdev, __u8 *rdesc,
> @@ -719,16 +720,12 @@ static int uclogic_input_mapping(struct hid_device *hdev, struct hid_input *hi,
> struct hid_field *field, struct hid_usage *usage,
> unsigned long **bit, int *max)
> {
> - struct usb_interface *intf;
> -
> - if (hdev->product == USB_DEVICE_ID_HUION_TABLET) {
> - intf = to_usb_interface(hdev->dev.parent);
> + struct uclogic_drvdata *drvdata = hid_get_drvdata(hdev);
>
> - /* discard the unused pen interface */
> - if ((intf->cur_altsetting->desc.bInterfaceNumber != 0) &&
> - (field->application == HID_DG_PEN))
> - return -1;
> - }
> + /* discard the unused pen interface */
> + if ((drvdata->ignore_pen_interface) &&
> + (field->application == HID_DG_PEN))
> + return -1;
>
> /* let hid-core decide what to do */
> return 0;
> @@ -908,6 +905,8 @@ static int uclogic_probe(struct hid_device *hdev,
> return rc;
> }
> drvdata->invert_pen_inrange = true;
> + } else {
> + drvdata->ignore_pen_interface = true;
> }
> break;
> }
This looks fine to me logically, but the "ignore_pen_interface" name is a bit
confusing.
From the driver code and comments it follows that "pen interface" is the USB
interface #0 and we're not ignoring it (uclogic_probe code becomes the worst
here). I think that it is better to call it in terms of what the
"input_mapping" description says, i.e. "ignore_pen_usage".
Nick
next prev parent reply other threads:[~2015-03-14 18:52 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-13 15:42 [PATCH] HID: uclogic: make input_mapping independent of usb Benjamin Tissoires
2015-03-14 18:52 ` Nikolai Kondrashov [this message]
2015-03-15 17:09 ` Benjamin Tissoires
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=55048364.3000204@gmail.com \
--to=spbnick@gmail.com \
--cc=benjamin.tissoires@redhat.com \
--cc=jkosina@suse.cz \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.