linux-hotplug.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* hotplug arch. and apps
@ 2001-11-15 20:38 Scott Cuyle Fritzinger
  2001-11-15 20:48 ` Stephen Williams
                   ` (12 more replies)
  0 siblings, 13 replies; 14+ messages in thread
From: Scott Cuyle Fritzinger @ 2001-11-15 20:38 UTC (permalink / raw)
  To: linux-hotplug


Hey hotplug developers! My name is Scott Fritzinger, a developer with the
gPhoto project (www.gphoto.org)

In pushing out our newest version (2.0), we are coming up with ideas as to
how to make digital cameras truly "plug and play" (when the user plugs in
the camera, it's ready to use). We have come up with the following
solution:

Using a hotplug script (/etc/hotplug/usb/camera), we either set the
ownership of the device (/proc/bus/usb/001/003 for example) to that of the
locally logged in user in the case of a non-mass-storage camera, or we
mount the mass-storage camera to /camera0 and set ownership again to the
locally logged in user. this alleviates all the problems with permissions,
and make the camera ready to use right away.

the base of this is of course a hotplug script. there is a catch though:
how does hotplug know which cameras gphoto (or other applications)
support? we can easily go through and append the ID's to
/etc/hotplug/usb.handmap|usb.usermap, but what about when gphoto is
updated with a new camera list? we'd have to go back through find out
which entries are there, and then add new ones. and removing an ID would
be a bit tough too.

I've come up with an idea that would make this REALLY easy to do, and it
is only slightly different than what hotplug currently does. instead of
just relying on usb.handmap or usb.usermap, why not create a directory
/etc/hotplug/usb.map/ and place files in there that contain the ID's for
the supported devices? the hotplug agent can open each file, look for ID's
and then run the corresponding scripts.

like, you can place all the HID device "lines" in /etc/hotplug/usb.map/hid

in our (gphoto's) case, we can place everything in
/etc/hotplug/usb.map/camera for all known (still) camera ID's. This will
be a VERY generic file, not gphoto specific at all, but rather supportive
of all apps out there. this file will cause the agent to run the
/etc/hotplug/usb/camera script, which will then mount (usb mass storage)
or set permissions on the device. 

this design allows for other applications that implement user-land drivers
via libusb to set up proper permissions on the device when it is plugged
in. 

is it possible alter the usb agent to work in this way? the downside would
be disk hits for each file in /etc/hotplug/usb.map/* (a little slower),
but the flexibility is that each application can EASILY update the devices
it supports by just placing a file in there instead of having to search
through a single file and replace (usb.handmap).

ideas? thoughts?

Thanks for reading! :)

-=Scott


_______________________________________________
Linux-hotplug-devel mailing list  http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2001-11-16 19:45 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-11-15 20:38 hotplug arch. and apps Scott Cuyle Fritzinger
2001-11-15 20:48 ` Stephen Williams
2001-11-15 21:45 ` Scott Cuyle Fritzinger
2001-11-15 21:51 ` Stephen Williams
2001-11-15 22:02 ` Greg KH
2001-11-15 22:51 ` David Brownell
2001-11-15 23:39 ` Scott Cuyle Fritzinger
2001-11-15 23:44 ` Scott Cuyle Fritzinger
2001-11-16  1:42 ` Johannes Erdfelt
2001-11-16  2:26 ` Greg KH
2001-11-16  3:42 ` David Brownell
2001-11-16  4:06 ` Johannes Erdfelt
2001-11-16 16:11 ` Ken Hahn
2001-11-16 19:45 ` Scott Cuyle Fritzinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).