Need suggestions for the learning new things of device driver programming
Linux - KernelThis forum is for all discussion relating to the Linux kernel.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Need suggestions for the learning new things of device driver programming
Dear all,
I have been working with Linux for last two years. and have written USB driver for vendor specific devices n done some small stuff related with the Linux kernel.
But I thing need to improve myself a lot. I decided to do some real time practices on my own. I would like to developing some kernel code like network driver, storage drivers or anything which will give me more knowledge.
1. I have bought one BeagleBone Black, Ethernet cable, HDMI cable, USB cable.
I want to write the driver. please give me suggestion according to my experience and available hardware.
please do give ideas and related documentation, material. All are welcome and thanks in advance. and if need more info. then just let me know.
Dear all,
I have been working with Linux for last two years. and have written USB driver for vendor specific devices n done some small stuff related with the Linux kernel. But I thing need to improve myself a lot. I decided to do some real time practices on my own. I would like to developing some kernel code like network driver, storage drivers or anything which will give me more knowledge.
I have bought one BeagleBone Black, Ethernet cable, HDMI cable, USB cable. I want to write the driver. please give me suggestion according to my experience and available hardware.
please do give ideas and related documentation, material. All are welcome and thanks in advance. and if need more info. then just let me know.
Your question doesn't make any sense. If you have ALREADY been writing kernel code and device drivers for the last two years, why do you suddenly need help doing what you have already DONE? You also say that you have a Beaglebone black...but what do you want to write a driver FOR?? Add to that the fact that Ubuntu and Debian already runs on that platform, it seems there's little to do.
Their support forums are loaded with information, along with complete specs and information. Did you start there???
Dear sir
Thanks for reply I am doing this for time but I haven't done any of the Linux storage drivers or network drivers n let me admit even don't have that much knowledge. So just ordered beagle bone to start with n wanting to get help related with topics for assignment which will help me in above areas of Linux. I know everything is right there in source code that's why I was expecting some inputs which can be implemented and will be good learning curve
Dear sir
Thanks for reply I am doing this for time but I haven't done any of the Linux storage drivers or network drivers n let me admit even don't have that much knowledge. So just ordered beagle bone to start with n wanting to get help related with topics for assignment which will help me in above areas of Linux.
Read the LQ Rules, and please stop using text-speak. It's "and", not "n".
If you've been working for two YEARS writing USB drivers and kernel code, I find it VERY hard to believe that you can't easily open the existing Linux storage modules and figure them out. Did you do that?
Quote:
I know everything is right there in source code that's why I was expecting some inputs which can be implemented and will be good learning curve
No one here is going to look things up for you, or write you sample code. The code is available on their website, and if you tried to look through their forums, you'd also find lots of help and samples.
sorry for my single wrong word 'n'. and I am not at all expecting someone to write sample code for me. Its just i want suggestion like hey you can do this or why dont you try and write this. a simple problem statement will help me to get going. I am asking here because I ahve good experience of this forum perticularly. Its any how good to get problem statement from experts or more experience people like you and all here. lot of people would have worked on storage drivers and kernel networking projects so i wanted to get suggestions, I am not at all expecting any kind of code.
its my kind and simple request for suggestions and if it doesnt fit into your rules then I am extremely sorry from bottum of heart, really!
The way to approach this sort of thing is to start with an existing driver ... for your particular distribution or at least your major-version of Linux, which is as close as possible to what you want ... and then "play whack-a-mole with it" until you have adjusted it to do what exactly you need it to do.
You never start these things "from scratch." And, although there are good online and printed references on how the various kernel releases work, the definitive source is always the kernel source-code itself. With Linux you can not only examine a particular driver at your leisure, but you can also examine all of the other kernel source-code that it calls. "Priceless.™"
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.