How to determine link of umass/da devices

Tom Alsberg alsbergt at cs.huji.ac.il
Mon Oct 17 07:34:01 PDT 2005


Hi.

I need to write some user interface to perform some tasks with USB
storage devices.  One of the tasks is to show a list of all USB
storage connected and all slices/partitions and filesystems in them.

With tools like usbdevs and sysctl, I can find out what USB devices
are connected, and also what USB drivers handle them (so I can see,
for example, that there is a SanDisk Cruzer Micro connected to port 2
in bus 3 and the umass driver under it).

I can also find out what da devices there are using camcontrol.

However, how can I find out which da device was assigned to which
umass/usb device?  I see this info in some inconvenient form in
dmesg.  But I need something easier to handle programmatically to
write a program that uses that data.  I prefer not to resort to some
ugly hack like trying to parse dmesg.

Also, I'd be interested if it were possible to have my program
informed when devices are connected/disconnected.  Can a process ask
usbd to send it some signal and somehow provide the details of the
event when a device is connected/disconnected?

  Thanks,
  -- Tom

-- 
  Tom Alsberg - certified insane, complete illiterate.
	Homepage: http://www.cs.huji.ac.il/~alsbergt/
  * An idea is not responsible for the people who believe in it.


More information about the freebsd-hackers mailing list