Subject: Re: Q: USB, umass and custom subclass layer driver
To: Jens Heilig <>
From: Charles M. Hannum <>
List: tech-kern
Date: 06/18/2004 20:19:28
On Friday 18 June 2004 18:43, Jens Heilig wrote:
> I'm new to this list and to NetBSD. While I usually write software for
> embedded systems (32k RAM or less) it is now my task to write a USB driver
> for a device we developped using a custom USB mass storage class protocol
> (i.e. an alternative to the SCSI subclass commands).

I suppose it doesn't matter if the device is already on the market, but *why* 
did you not use the standard protocol?

> I would like to call umass_bbb_*() from userspace, after the device has
> enumerated. Can you give me a hint how to approach this? Any documentation
> about umass.c and adding custom USB drivers, beyond the source?

The existing interface for this sort of thing is the ugen driver, which allows 
you to execute random USB transactions.  It's used by several existing pieces 
of software to talk to cameras, scanners and MP3 jukeboxes that do not use 
standard protocols.