LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Kernel (https://www.linuxquestions.org/questions/linux-kernel-70/)
-   -   Device Driver (https://www.linuxquestions.org/questions/linux-kernel-70/device-driver-460387/)

harsh_electro 07-02-2006 06:20 PM

Device Driver
 
Hi Friends,
I have been trying to learn Linux device driver programming.I have been following LKM Programming guide and Linux Device driver 3rd Edition.But it seems i have no clue of entire process to write a complete driver which i can use to interface the serial port or parrallel port.
I am looking for some concrete document/link/code which can give me a better idea of complete driverdevelopment cycle.

Thanks & Regards

rjsiva 07-02-2006 11:55 PM

help me too
 
hai ,
iam also a beginer of a device driver program.. if you find any code/ebook/website please share with me to start in a device driver.. i dont have any idea of how to enter into it.. can u guide me in this regard. where to start and proceed to be device driver programmer in linux..

regards
sivakumar

sundialsvcs 07-03-2006 11:08 AM

Duplicate thread...
Use the source-code of Linux itself.
It's in /usr/src/linux/drivers/block, probably.
If you are using packages, source-code might be in an optionally installed package.

madluther 07-03-2006 02:59 PM

Code examples that LDD3 refers to, that can be compiled and tested are available at

ftp://ftp.oreilly.com/pub/examples/l...xamples.tar.gz

They may help to fill in some gaps.

Mad.

Ulises 08-20-2006 09:18 AM

Hi:
I'm a newbie too and also trying to start in kernel programming. These links (most of it, related with serial port driver) I have found, maybe can help:
(I cannot post URLS yet ;-< ; don't copy&past! )

www[.]linux.it/~rubini/docs/serial/serial[.]html
www[.]linuxjournal[.]com/node/6331/print
www[.]linuxjournal[.]com/node/5896/print

Other resource to start is www[.]kernelnewbies[.]org Take a look of the mail list, it really can help you a lot!

Of course, the most important (also the hardest way):
/usr/src/linux/drivers/...
(For Serial Port - Generic UART)
/usr/src/linux/drivers/serial/serial_core.c
/usr/src/linux/drivers/serial/8250.c
/usr/src/linux/drivers/serial/8250_pnp.c

Regards,
Ulises

satya482 09-08-2006 07:52 AM

hai friends....

iam also newbie..

please help me in adding a new driver source code into /usr/sr/linux/drivers/ directory..
and what all the files i need to manipulate..

can u take example of adding bnx2.c driver into /usr/sr/linux/drivers/net/ directory .... and what all the changes should be made to make file and Kconfig file...

sundialsvcs 09-10-2006 09:54 PM

Please, gentlebeings, save yourself a lot of trouble and start by reading the existing source! I wasn't trying to "blow you off" by saying that.

You're not the first ones on the planet to start trying to write a driver, so it makes no sense at all to try to start from-scratch. The most efficient way to learn is by example, and Linux is by its very nature stuffed with literally hundreds of these.

Find a driver that's as close as possible to the one you need to write. Read all of the source-code systematically and then try to trace a request through it. Try to see what happens when an interrupt comes in.

Keep a diary. If you run into something you don't understand, write it down but keep going. Once you've captured the question on paper you won't forget it and you can pursue it at the most opportune time.


All times are GMT -5. The time now is 02:15 PM.