All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nikolai Kondrashov <spbnick@gmail.com>
To: Jiri Kosina <jkosina@suse.cz>
Cc: linux-input <linux-input@vger.kernel.org>
Subject: Re: [PATCH 1/1] HID: add have_special_driver hid module parameter
Date: Tue, 28 Feb 2012 17:12:36 +0200	[thread overview]
Message-ID: <4F4CEEE4.7020204@gmail.com> (raw)
In-Reply-To: <alpine.LNX.2.00.1202281527250.31150@pobox.suse.cz>

Hi Jiri,

On 02/28/2012 04:30 PM, Jiri Kosina wrote:
> well, I am not really sure what value does it provide to have such
> functionality in the kernel.
>
> I can understand that it helps you when developing out-of-tree (yet)
> drivers ...

It doesn't just help, it makes them possible. Without this parameter it is
not possible to have out-of-tree HID drivers. Currently, a driver won't be
used if it isn't in the hid_have_special_driver array, as you probably know.

> but as you are patching the kernel anyway with those drivers,
> you can easily run a kernel that has hid_have_special_driver[] array
> adjusted accordingly.

Me yes, but I can't expect tablet users to patch and build their kernels
every time their distributions update them.

> And once you are submitting the driver for inclusion, you are of course
> submitting it together with hid_have_special_driver[] addition.

Sure.

> So it doesn't seem to be a debugging facility to me, and neither does it
> provide any added value for users of vanilla kernel.

The current workflow is this:

1. The user buys a new tablet, which is not yet supported by the kernel.
2. I add and submit kernel support for it.

Now, until my patch gets into the user's distribution kernel (which takes
3 months minimum, but usually about 5), he/she should build a kernel with my
patch *every* time the distribution updates it, if the user whishes to keep
up with the security updates and have a working tablet.

This is a bit too much to expect from the regular graphics tablet users.

Ubuntu, for example, does lots of kernel releases even for LTS
distributions. Then, there are users who want to stay on an older kernel for
some reasons.

My plan is to have regular releases of a DKMS-enabled driver package, which
once installed is rebuilt and installed automatically with each kernel
update. The only additional required action would be putting "options hid
have_special_driver=usb:VID:PID" into modprobe.conf.

So, the full planned workflow is this:

1. The user buys a new tablet, which is not yet supported by the kernel.
2. I add and submit kernel support for it.
3. I release a new version of the DKMS-enabled driver package including
    support for the user's tablet.
4. The user downloads and installs the package variant for his distribution,
    say, a .deb.
5. The user adds the "options hid have_special_driver=usb:VID:PID" line into
    his modprobe.conf.
6. The tablet driver is automatically re-built and re-installed with each
    kernel update.
7. Once the distribution pushes a kernel release with his tablet driver, the
    user is free to remove the DKMS package.

It would also be useful to be able to send the user a DKMS package with an
experimental driver to have him easily install and test it. Currently I'm
forced to build whole kernel packages in these cases.

Another point in support of this change is that the usbhid module already
has "quirks" parameter, which is somewhat similar in purpose.

Thanks :)!

Sincerely,
Nick

  reply	other threads:[~2012-02-28 15:12 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-20 21:29 [PATCH 1/1] HID: add have_special_driver hid module parameter Nikolai Kondrashov
2012-02-27 14:15 ` Nikolai Kondrashov
2012-02-28 14:30   ` Jiri Kosina
2012-02-28 15:12     ` Nikolai Kondrashov [this message]
2012-02-29 21:23     ` Nikolai Kondrashov
2012-03-29  8:00     ` Nikolai Kondrashov
2012-03-30 13:49 ` Jiri Kosina
2012-03-30 15:22   ` Nikolai Kondrashov
2012-03-30 23:03     ` David Herrmann
2012-04-01 19:44       ` Nikolai Kondrashov
2012-04-01 19:49         ` Jiri Kosina
2012-04-01 20:11           ` Nikolai Kondrashov
2012-04-01 20:10         ` David Herrmann
2012-04-01 20:22           ` Nikolai Kondrashov
2012-04-01 19:33   ` Nikolai Kondrashov
2012-04-01 19:46     ` Jiri Kosina
2012-04-01 20:50       ` Nikolai Kondrashov
2012-04-02 23:41         ` Jiri Kosina
2012-04-04  8:27           ` Nikolai Kondrashov
2012-04-08 10:48           ` Nikolai Kondrashov
2012-04-03 14:46         ` Henrik Rydberg
2012-04-03 15:09           ` Jiri Kosina
2012-04-03 16:37             ` Henrik Rydberg
2012-04-03 17:01               ` Jiri Kosina
2012-04-03 17:11                 ` Henrik Rydberg

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=4F4CEEE4.7020204@gmail.com \
    --to=spbnick@gmail.com \
    --cc=jkosina@suse.cz \
    --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 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.