On Mon, Jan 10, 2022 at 10:31:28PM +0100, Philipp Hortmann wrote: > Hi all, > > template usb-skeleton.c is working but outdated, documentation is helpful > but years old and checkpatch.pl is giving hints to deprecated functions. > This information is helpful but it does not show the way how to write a > state of the art USB driver. Where to find this information? In the USB > mailing list? By checking in git on which files most maintenance activities > were done? First off, what do you mean by "state of the art"? USB drivers are almost never just a USB driver. The USB portion of the driver is the "simple" part. The "real" part of the driver is going to be doing whatever functionality the device is (i.e. sound device, keyboard device, video device, etc.) USB is just a dumb pipe. The USB portion of your driver just needs to set up the pipes, and get the data flowing in them. How you deal with that data is going to be the real work you have to do, and the majority of the driver size. Otherwise you really do not even need a USB driver, and you can just do everything from userspace and use libusb to read/write to the USB device directly. If you have a new driver you need to write, look at the existing drivers for guidance, and the documentation. Then submit it to the linux-usb mailing list for review, the people there will help you out with any portions that you have problems with. So, what have you tried so far that is not working and what type of device are you trying to control that needs a new USB driver for? thanks, greg k-h _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies