How to practice writing real Linux device drivers?

I am an intermediate programmer with decent Linux Kernel programming experience. During my internship, I was mainly involved in debugging kernel and driver code. I recently finished studying the book "Core Development" by Robert Love. I'm halfway through the device driver book for devices from Jonathan Corbet. But now I am faced with a disturbing problem. None of these books teach me how to write real (hardware) device drivers. the LDD3e book tells how to write memory-based software drivers and the sysfs interface, which I am pretty good at. So where to start? What are the requirements and how can I do this?

PS: I started reading the book "Essential Linux device drivers from Sreekrishnan Venkateswaran"

+4
source share
1 answer

You should do this, not just read.

There is a great way to do this with pleasure.

Follow the requirements of the eudiptula. Just got to eudyptula-challenge.org and do what they say. There are 20 tasks. After solving them, you would not only learn about the kernel, but you would do with Linux and the kernel.

They say they use a script to check your drivers during call tasks, but I really doubt it because of the humorous and funny answers I get from them.

+3
source

Source: https://habr.com/ru/post/1524867/


All Articles