Brussels / 1 & 2 February 2014


Making the Linux Kernel better (without coding)

In this presentation, I want to show little-known mechanisms to add hardware support to the kernel at runtime, i.e. without recompiling. After this presentation, the Linux kernel will have gained support for a previously unsupported USB device (without having to write any code).

Not everyone is interested in becoming a kernel developer or being able to write device drivers from scratch. Yet, there are a number of people who would like to help the kernel development "just a little bit". Yay, this is easily done!

I aim to enable people to improve the kernel by adding support for previously unsupported hardware. How? Consumer hardware often shares a common core which is then simply re-branded by the actual vendor. This branding often includes changing the USB-ID or PCI-ID. A kernel developer can make a driver for that core, but will not be able to know all the incarnations of that device, i.e. all the IDs. This is where the community comes in. Having all kinds of hardware, people can add missing pieces to the puzzle.

In this presentation, I want to show some little-known mechanisms to add hardware support to the kernel at run-time, i.e. without recompiling. For that, I will also present ways to effectively obtain the required information about hardware to be added. Finally, information is given how to report the findings.

Intended audience: Everyone who is interested in kernel hacking is invited. Basic shell knowledge (sudo, echo) and ability to send e-mail are enough.


Wolfram Sang