Skip to content

Commit

Permalink
README: update project goal according to reality
Browse files Browse the repository at this point in the history
The initial goal of this project was to update the LDD3
example drivers to recent kernels so they can be used by
students to learn about driver development under Linux.

The idea was to not only update the drivers but also add
new drivers that show newer kernel facilities that did
not exist (or was not common) by the time the LDD3 book
was written.

Unfortunately I haven't had time to work on this for
years so it's better to just try to keep the current
drivers building and working.

Also, only maintain the master branch that should track
Linus master tree. Anyone that is interested on kernel
hacking should develop against the latest master tree
anyways. If someone needs to use an older kernel version
it shouldn't be hard to figure out what commit id could
be used for any specific kernel version.

Signed-off-by: Javier Martinez Canillas <javier@dowhile0.org>
  • Loading branch information
martinezjavier committed Apr 27, 2013
1 parent b18a1db commit 6aae03d
Showing 1 changed file with 4 additions and 20 deletions.
24 changes: 4 additions & 20 deletions README
Original file line number Diff line number Diff line change
Expand Up @@ -6,38 +6,22 @@ About

Linux Device Drivers 3 (http://lwn.net/Kernel/LDD3/) book is now a few years
old and most of the example drivers do not compile in recent kernels.
Also, many new changes were introduced in the kernel since version 2.6.10.
Examples for many ABIs are not covered in the book, like netlink sockets,
threaded interrupt handlers, debugfs, etc.

This project aims to keep LDD3 example drivers up-to-date with recent kernels.

The original code can be found at: http://examples.oreilly.com/9780596005900/

Besides the original drivers, there is a plan to add more examples that cover
more recent kernel features like the listed before.

Compiling
----------

The example drivers should compile and work with popular kernel versions.
Right now version 2.6.32, 2.6.35 and linux-next are supported.

The tree has three branches:
* v2.6.32
* v2.6.35
* master

These branches will compile and work with the trees:
* git://git.kernel.org/pub/scm/linux/kernel/git/longterm/linux-2.6.32.y.git
* git://git.kernel.org/pub/scm/linux/kernel/git/longterm/linux-2.6.35.y.git
The example drivers should compile against latest Linus Torvalds kernel tree:
* git://git.kernel.org/pub/scm/linux/kernel/git/sfr/linux-next.git

To compile the drivers against a specific tree (for example linux-next):
To compile the drivers against a specific tree (for example Linus tree):

$ git clone git://github.com/martinezjavier/ldd3.git
$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/sfr/linux-next.git
$ export KERNELDIR=/path/to/linux-net
$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
$ export KERNELDIR=/path/to/linux
$ cd ldd3
$ make

Expand Down

0 comments on commit 6aae03d

Please sign in to comment.