Subject: Re: kern/32567 umidi cable number
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: Chapman Flack <nbgnats@anastigmatix.net>
List: netbsd-bugs
Date: 01/20/2006 13:45:01
The following reply was made to PR kern/32567; it has been noted by GNATS.

From: Chapman Flack <nbgnats@anastigmatix.net>
To: gnats-bugs@netbsd.org
Cc: 
Subject: Re: kern/32567 umidi cable number
Date: Fri, 20 Jan 2006 08:49:24 -0500

 hmm ... belay that patch for a moment ... this is more complicated yet.
 There exist devices that require a particular assignment of cable
 numbers, such as { 1, 3 } on endpoint 2 and { 2, 4 } on endpoint 4,
 which will not match either general scheme. A CN_FIXED quirk type that
 explicitly gives the mapping will be needed. I am working on updating
 the patch.
 
 My comments about array bounds were (taken literally) off base, as the
 array has a fixed size of 16 so any CN will be a legal index; taken
 broadly, they were still on the mark because alloc_all_jacks places the
 jacks in the first consecutive slots of the array, not the slots
 corresponding to their CNs. But just putting the jacks in the right slots
 would be an easier fix than the cn_base field I added, and would have
 the advantage of being able to cover the CN_FIXED case, which the cn_base
 approach cannot.