Learning Linux Device Drivers Programming ? advice needed ? - Embedded

This is a discussion on Learning Linux Device Drivers Programming ? advice needed ? - Embedded ; Dear Friends, I want to learn the art of device drivers programming on linux. I just bought Linux Device Drivers 3rd Edition. I am a decent programmer in c and have programmed on linux using the system call interface for ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: Learning Linux Device Drivers Programming ? advice needed ?

  1. Learning Linux Device Drivers Programming ? advice needed ?

    Dear Friends,
    I want to learn the art of device drivers programming on linux.
    I just bought Linux Device Drivers 3rd Edition.

    I am a decent programmer in c and have programmed on linux using the
    system call interface for quite some time.

    i am bored writing simple linux applications and would like to get a
    job on
    embedding linux -- like porting linux to new processors / making linux
    run on
    newly built embedded board, porting device drivers for hardware
    pherpherals or writing new device drivers.


    As a start i have just bought Rubini 3rd Edition and started reading
    it. eventhough i am finding it tough to follow. i am trying and would
    need a little advice and help.

    I just have a pc and no external hardware. ok.


    I want to start a discussion on what i should i go about it.

    what should i do ?. can i learn device driver programming using a
    simple 0x486 intel pc.

    What externel cheap hardware will require to go about learning.

    What resources i should use in the web and what are popular device
    drivers materials available on the net.

    i searched using google and got confused seeing the amount the data
    available.

    Please do share your experiences as novices like me will find it very
    useful.
    as i am sure there are many like me out there.


    Please do advice.

    Thank You for your assistance.


    Regards,
    Maximus

  2. Re: Learning Linux Device Drivers Programming ? advice needed ?

    On Sun, 24 Apr 2005 06:13:15 -0700, Maximus wrote:

    > As a start i have just bought Rubini 3rd Edition and started reading it.
    > eventhough i am finding it tough to follow. i am trying and would need a
    > little advice and help.


    Not surprising. The 3rd edition almost assumes that you have read the 2nd
    edition; it concentrates on the newer features.

    See if you can find a 1st or 2nd edition in a used bookstore. If not,
    they are on the web (check xml.org).

    > what should i do ?. can i learn device driver programming using a simple
    > 0x486 intel pc.


    Sure!

    > What externel cheap hardware will require to go about learning.


    Insert a #1 paper clip between pins 4 & 5 on your parallel port connector.
    Now, you've got a dandy device that will generate interrupts and the
    whole shebang.

    > What resources i should use in the web and what are popular device
    > drivers materials available on the net.


    Be sure to visit
    http://janitor.kernelnewbies.org/docs/driver-howto.html regularly. The
    more times you read it, the more sense it will make.

    Superb articles on driver development can be found at http://www.lwn.net
    in the "Kernel" section. Don't freak about this being a subscription news
    site: everything a week old is free. If you can, subscribe to the paid
    content (this week's info) -- I think it's about $5.00USD per month.

    Be very, very careful about stuff you read on the web. Lots of articles
    get written and orphaned, so they might not be current and up to date.
    Interfaces within the kernel change *with* *every* *version*, so be sure
    you are looking at an example for a 2.6 kernel or better (the 2.4 stuff is
    getting stale and has been moved to legacy support).

    Since device drivers supply the kernel with knowledge of how to translate
    system calls such as open(2), close(2), read(2), write(2), et. al., into
    hardware operations, you need to be intimately familiar with, ahem, the
    actual hardware involved. You should at least be able to read a block
    diagram, a schematic, and a hardware reference book. Search online for
    the hardware specifications for PC serial ports to get a feel for this
    type of information.

    HTH

+ Reply to Thread