Subject: Re: retry: NetBSD umidi driver shuns M-Audio / Midiman Midisport
To: Chapman Flack <flack@cerias.purdue.edu>
From: Matthew Orgass <darkstar@city-net.com>
List: tech-kern
Date: 09/02/2004 14:33:09
On 2004-09-02 flack@cerias.purdue.edu wrote:
> I was able to express the endpoint assignments in terms of the existing
> FIXED_EP quirk, and I added a separate MIDIMAN_GARBLE quirk for the
> packet format. The last bit of fun was that umidi expected bulk input
> endpoints and explicitly rejected an interrupt endpoint, but the basic
> logic seems usable with either kind; I just took out the test that rejected
> an interrupt endpoint, and tweaked the very few other places in the code
> that noticed the difference.
Note that there is no difference between bulk and interrupt on the bus;
the only difference is that interrupt reserves bus time (and, currently,
NetBSD does not support multi packet interrupt requests). Having read the
standard first this was quite surprising to me when I realized it, since I
assumed bulk would error if not recieved or sent immediately based on the
language used in the standard. I couldn't find text in the 1.1 standard
that says difinitively either way, but hardware assumes it behaves like
interrupt transactions. Unless it needs to be multi-packet, I don't think
an interrupt endpoint should be rejected.
Matthew Orgass
darkstar@city-net.com