Introduction - If you have any usage issues, please Google them yourself
"Linux Device Drivers" Implementations based on the source of the 2.6 kernel, Whether engaged in pc or embedded system-driven development, I believe, are a good learning materials