Driver Development C Roadmaps
-
For a beginner C programmer, what would be a good roadmap for getting to the OpenBSD Driver Development level?, I reckon there are books about developing on FreeBSD and other books, but the more specific for OpenBSD, the better.
So far, I learned about the flags in order to set more debug output, and debugged a specific issue I had with the msk(4) driver, now, if I were to add another device in another place, for example, uaudio(4) as a side project, I can understand its flow, from pci, to uhub, and so on. So from there I should be able to understand by reading the code on it.
I can recompile the kernel, debug and well, read the code, now, I wonder if there are other specifics that I can have regarding how the code is organized and written in OpenBSD. There is a good presentation about driver development, now it talks about specifics when you are already in that world, it doesn't specify the work process, or even, a video of how a driver was made with good standards. Given that OpenBSD is well written and structured, any programmer should be able to understand and be able to add support of something simple, like a microphone.
PD. Microphone with issues on uhub is AKG lyra, which I will debug later... I have to recompile my kernel of course.
-
I can't provide a roadmap, but something that helped me was to review the code for
axe(4), the driver for my ethernet dongle.I'm also interested in learning more about writing device drivers on OpenBSD. Some useful links I've reviewed before:
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login