ACPI from scratch: U-Boot implementation
ACPI is a full featured framework to serve power management needs along with helping operating system to discovery devices. While the power management becomes often a transparent to the developers and users, the device discovery raises many topics due to neglecting OS agnostic practices, leading to bugs in firmware, as well as misunderstanding of ACPI basics. Here we dive into ACPI device discovery part while showing how ACPI is built up using U-Boot.
Linux driver developer
Andriy Shevchenko was born in Donetsk in 1977. He studied electronics at the State University of Donetsk and graduated in 1999. Andriy joined Intel Finland Oy in May 2011. He has participated in few projects since and eventually become one of the active contributors to the Linux kernel. Andriy has over fifteen years of software development experience in Linux environment, especially in a low speed peripheral drivers area in the kernel programming. During this time he has contributed hundreds of patches to the Linux kernel. In his current position, he has been developing, reviewing and maintaining several drivers for Intel hardware, such as GPIO, pin control, SPI, I²C, and many others.
Besides, Andriy has done a proof-of-concept (not yet in upstream) of correct run time power management support in 8250 UART driver.