Chapter 8: Integrating with V4L2 Async and Media Controller Frameworks
Over time, media support has become a must and a saling argument for System on Chips (SoCs), which keep becoming more and more complex. The complexity of those media IP cores is such that grabbing sensor data requires a whole pipeline (made of several sub-devices) to be set up by the software. The asynchronous nature of a device tree-based system means the setup and probing of those sub-devices are not straightforward. Thus entered the async framework, which addresses the unordered probing of sub-devices in order for the media device to be popped on time, when all of the media sub-devices are ready. Last but not least, because of the complexity of the media pipe, it became necessary to find a way to ease the configuration of the sub-devices it is made of. Thus came the media controller framework, which wraps the whole media pipe in a single element, the media device. It comes with some abstractions, one of which...