On Fri, Dec 26, 2008 at 01:55:21PM -0700, Ted Bullock wrote: > Hi Folks, > > I have a thought that I want to run through some more experienced minds > in regards to migrating the various user space Media Transfer Protocol > implementations (libmtp, gphoto) into the kernel. > > I think most people here would have encountered the MTP before now, but > here is a bit of pre-reading just in case. > > http://en.wikipedia.org/wiki/Media_Transfer_Protocol > http://www.usb.org/developers/devclass_docs/MTP_1.0.zip > > Anyways, we currently have two implementations of the protocol which > both are user-space implementations running through libusb. > > These implementations have a couple of issues: > > I. Devices are locked to the first application to grab control > II. Some devices will not charge without a connection being > established and maintained by an application > III. Polling for new devices is hard. There are no really good ways > to see which mtp devices are connected, and then pick which ones > to connect to. > IV. Depend on libusb which seems to have stalled in development, > although I am not certain if this is an issue or not. libusb just came out with the new 1.0 release, and a libusb-compat release last week or so, showing that development on it is not stalled at all. > We have considered writing a user-space mtp connection daemon (using > libmtp) and talking to client applications asynchronously through d-bus > or something like it, but I would much rather have this be handled by > the kernel. Why would you want this handled by the kernel? What kind of userspace/kernelspace interface should the MTP device show? > I would like to see the kernel manage connecting to the device, > exporting the device file hierarchy as a mountable file system, then use > a nice sanitized API through which user space can poll and talk to mtp > devices asynchronously. You can do this today with fuse in userspace, right? Why not do that instead, it makes more sense than putting a new filesystem in the kernel. thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html