Input devices are devices by which you can interact with the system. Such devices include buttons, keyboards, touchscreens, mouse, and so on. They work by sending events, caught and broadcast over the system by the input core. This chapter will explain each structure used by the input core to handle input devices. We will also see how you can manage events from the user space.
In this chapter, we will cover the following topics:
- Inputting core data structures
- Allocating and registering input devices, as well as the polled device family
- Generating and reporting events to the input core
- Input device from user space
- Writing a driver example