LDD is a project mainly written in ..., it's free.
My solutions to the labs from Writing Linux Device Drivers by Jerry Cooperstein