This book explains the basic knowledge of Linux driver development and the development environment used. The book is divided into 22 chapters. Its content covers various Linux subsystems, including memory management, PWM, RTC, IIO and IRQ management, etc. It also explains the practical methods of direct memory access and network device drivers. After studying this book, readers will master the concept of a device driver development environment and be able to write drivers for hardware devices from scratch.
Reading this book requires basic C programming skills and familiarity with basic Linux commands. This book is primarily designed for embedded engineers, Linux system administrators, developers, and kernel hackers. Whether you are a software developer, system architect or manufacturer, as long as you are willing to delve into Linux driver development, you will gain something from reading this book.