> On Mar 26, 2024, at 9:31 AM, Brian Buhrow <buh...@nfbcal.org> wrote:
> 
> Isn't it possible to do most of what Jason proposes by using the drvctl 
> interface to
> detach a driver from a specific USB device?  Then, some glue could be added 
> to the ugen driver
> to allow it to be attached to arbitrary devices using the same drvctl 
> interface?  That seems a
> lot easier to me than building a registry of devices and device IDs, which 
> will be  woefully
> out of date before it gets published.  It also has the advantage of allowing 
> the user to do
> creative stuff that the developers didn't think of.  Am I missing something 
> obvious?

It’s absolutely not easier, because there’s not really an easy way, once the 
kernel driver is detached, to say “attach ugen where that other thing was, AND 
ONLY THERE”.

Like I said in a previous message on this thread, I think the better model is 
for ugen to always exist for every USB device / interface, and for the kernel 
driver to attach there.  Then it’s easy to just say “detach whatever kernel 
driver is here [assuming it’s not busy providing some other service] so that 
user-space can take over”, and “re-attach any kernel driver that might match 
this device now that I’m done”.

-- thorpej

Reply via email to