public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Clemens Ladisch <clemens@ladisch.de>
To: Dave Taht <d@teklibre.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Frontier USB Drivers (Was: Staging tree status for the .32 kernel merge)
Date: Tue, 15 Sep 2009 11:29:19 +0200	[thread overview]
Message-ID: <4AAF5E6F.4030307@ladisch.de> (raw)
In-Reply-To: <20090914173544.GC26582@kroah.com>

Dave Taht wrote:
> 	- fix userspace interface to be sane
> 
> This is the biggest open question I have. Right now the drivers just
> handle the interrupts, and queue up the data in a ringbuffer, sending the
> events in the exact same format as received from the device, and vice versa.
> 
> Coming up with an abstract means to handle a very specialized device - a
> control surface that simultaneously is a LCD screen, a bunch of LEDS, a
> scroll wheel, and 20+ buttons that can be pressed in various
> combinations, would kind of involve reinventing a char I/O based X11,
> and I don't really feel that much or any of that needs to happen in
> kernel space.
> 
> (the alphatrack is worse, it has a slider with feedback and buttons that
> have touch sensitivity, and a special key that remaps the sliders and
> buttons to another keymap entirely)
> 
> There are a lot of "surfaces" out there in the music world, with all
> kinds of combinations of buttons and knobs and gee-gaws, etc,

... and practically all of them send/receive MIDI messages, which ties
in with the fact that most applications you would want to control with
this allow to be controlled by MIDI.

The Frontier Windows drivers also have a MIDI mode, so I'd strongly
suggest that you implement that.

> Far better, I thought, to just handle the RT critical portions of the
> code in the kernel and hand off the rest of the chaos to userspace.

The ALSA framework already handles buffering and routing of MIDI events,
so you'd just have to map between the device's bits and sequencer events.


Best regards,
Clemens

      reply	other threads:[~2009-09-15  9:39 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-03  4:14 Staging tree status for the .32 kernel merge Greg KH
2009-09-03  8:49 ` Johannes Berg
2009-09-03 12:48   ` Stefan Lippers-Hollmann
2009-09-03 17:57     ` Greg KH
2009-09-03 18:35       ` Kalle Valo
2009-09-03 19:01         ` Greg KH
2009-09-03 13:14   ` Bartlomiej Zolnierkiewicz
2009-09-03 16:17   ` Christoph Hellwig
2009-09-03 17:55     ` Greg KH
2009-09-03 18:40       ` Christoph Hellwig
2009-09-03 18:55         ` Greg KH
2009-09-03 19:16           ` Christoph Hellwig
2009-09-05  0:16           ` Marcel Holtmann
2009-09-05  0:29             ` Greg KH
2009-09-03 19:35   ` Luis R. Rodriguez
2009-09-03 19:41     ` Greg KH
2009-09-04 10:20 ` Wolfram Sang
2009-09-04 18:25 ` Belisko Marek
2009-09-05 12:39 ` Willy Tarreau
2009-09-05 14:50   ` Greg KH
2009-09-10 21:57     ` Peter Huewe
2009-09-06  5:28 ` Pavel Machek
2009-09-07 15:55   ` Daniel Walker
2009-09-09  9:57     ` Pavel Machek
2009-09-09 14:19       ` Daniel Walker
2009-09-09  8:01         ` Pavel Machek
2009-09-09 21:47         ` Pavel Machek
2009-09-09 21:53         ` Brian Swetland
2009-09-09 22:25           ` Huntsman, Bryan
2009-09-07 23:12   ` Mauro Carvalho Chehab
2009-09-09  8:10     ` Pavel Machek
2009-09-07 23:21 ` Mauro Carvalho Chehab
2009-09-08  1:14   ` Greg KH
2009-09-12 19:40 ` Frontier USB Drivers (Was: Staging tree status for the .32 kernel merge) Dave Taht
2009-09-14 17:35   ` Greg KH
2009-09-15  9:29     ` Clemens Ladisch [this message]

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=4AAF5E6F.4030307@ladisch.de \
    --to=clemens@ladisch.de \
    --cc=d@teklibre.com \
    --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