Where to find the information how to write a state of the art USB driver?

Pavel Skripkin paskripkin at gmail.com
Sun Jan 16 08:45:16 EST 2022

Hi Philipp,

On 1/13/22 21:54, Philipp Hortmann wrote:
> On 1/13/22 4:33 PM, Greg KH wrote:
>> On Thu, Jan 13, 2022 at 07:39:38AM +0100, Philipp Hortmann wrote:
>>> On 1/12/22 10:54 AM, Greg KH wrote:
>>>> That driver tried to be an example for an unknown device, doing multiple
>>>> different things that no single driver/device would probably ever need.
>>>> Also it can almost always just be replaced with a simple userspace
>>>> program using libusb, as I bet your driver could be replaced with as
>>>> well, right?
>>> Yes it can be replaced by a userspace program but even this is not required.
>> It is an issue if you are trying to write a new driver.  We do not take
>> new drivers into the kernel tree if they can be in the kernel instead.
> Sorry I did not clearly express what I plan to do. I plan to do
> maintenance and bug fixes on the kernel.
> I am writing on drivers only for my personal education. No new drivers
> for the kernel.

I think, syzbot dashboard can be a good place to start from [1]. There 
are a lot of usb related warnings in old drivers. Just grep the web page 
for 'usb_submit_urb'. Might be valuable work to get familiar with basic 
kernel APIs.

Good luck :)

[1] https://syzkaller.appspot.com/upstream

With regards,
Pavel Skripkin

More information about the Kernelnewbies mailing list