Greg KH <gre...@linuxfoundation.org> writes: > Normally you just start with a > driver for a device like the one you need to write and modify it from > there.
Yes. Even if the template driver is fixed up to be the most beautiful driver ever made, it will still always be made for non-existing hardware. This causes two major problems: - the driver will not be tested, so it will have bugs - the driver will not be used by anyone, so it will not be maintained (remember that it is initially perfect, so there is no reason to change it) May I suggest another approach? How about selecting a set of existing drivers which are suitable as templates, and put all this effort into making those drivers *the* perfect examples instead? Start submitting cleanup patches for the selected drivers until everyone is satisfied and then document them as starting points for anyone wanting to write a similar driver. I believe many subsystem maintainers already have such sample drivers which they point new submitters to when asked. That does not mean that these drivers necessarily are perfect, so there is still work to do here for anyone interested. And collecting this information and documenting it would be useful in itself. It would also be nice if hardware availability was considered when selecting the sample drivers. Buying an already supported device to experiment with its driver can be useful even if you have another device you want to write a driver for. Or just for the learning experience. Just my € .02 Bjørn _______________________________________________ Celinux-dev mailing list Celinux-dev@lists.celinuxforum.org https://lists.celinuxforum.org/mailman/listinfo/celinux-dev