Linux Input/HID development
 help / color / mirror / Atom feed
From: Andrew Deason <adeason@dson.org>
To: linux-input@vger.kernel.org
Subject: [PATCH 0/2] synaptics_usb trackpoint cursor movement improvements
Date: Sun, 15 Sep 2013 16:01:34 -0500	[thread overview]
Message-ID: <20130915160134.cd2eb260d8a5703a78ebfe84@dson.org> (raw)

Here are a couple of patches for improving trackpoint movement with
synaptics_usb. Currently, without these, the movement is much worse than
it was before synaptics_usb was introduced into the tree, since the
device was previously handled by usbhid. This is intended to be applied
instead of the "Input: synaptics_usb - Scale stick axes evenly" patch
submitted previously; there's no reason to apply that one if these
patches are applied.

I'm not familiar with code for input devices (in Linux or in general),
so I may be making silly mistakes or violating certain conventions. Feel
free to tear me apart :) Some particular highlights of things I was
unsure of, and so may have been dumb things to do:

 - I'm not sure if there's a better way or if there are standard
   conventions for doing fixed-point arithmetic. I just multiplied or
   divided by STICK_PRECISION at the appropriate places, but since this
   needs to be done pretty often in the calculations and with care, it
   seems pretty easy to accidentally screw it up in future changes.

 - The sysfs attributes getters/setters are mostly boilerplate. I don't
   know if it's frowned upon to do it this way and I need to reduce the
   duplication, or if it doesn't really matter since there are only 3
   items.

 - I'm not sure if there's a better way to transition between the HID
   and non-HID modes. It seems like this should be switchable at runtime
   instead of needing to reload the module, but I can't find an example
   of another module doing this.

Also, I've been testing these changes with my own devices just by
myself; I would welcome feedback from others with similar devices if any
of them see this. It's difficult to objectively test how the trackpoint
"feel"s with different parameters.

Andrew Deason (2):
  Input: synaptics_usb - Improve stick movement
  Input: synaptics_usb - Add stick_hid param

 drivers/input/mouse/synaptics_usb.c | 431 ++++++++++++++++++++++++++++++++++--
 1 file changed, 418 insertions(+), 13 deletions(-)

-- 
Andrew Deason
adeason@dson.org

             reply	other threads:[~2013-09-15 21:01 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-15 21:01 Andrew Deason [this message]
2014-07-08 12:43 ` [PATCH 0/2] synaptics_usb trackpoint cursor movement improvements Rasmus Villemoes

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=20130915160134.cd2eb260d8a5703a78ebfe84@dson.org \
    --to=adeason@dson.org \
    --cc=linux-input@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