This document introduces GPIO and GPIO virtualization in ACRN. It discusses:
1. GPIO hardware consists of pin configuration logic, GPIO logic blocks, and multiplexers that allow pins to take on different functions like GPIO, SPI, I2C.
2. GPIO virtualization in ACRN follows the virtio specification and allows each VM to access a virtual GPIO chip with a configured number of pins mapped to physical pins.
3. GPIO IRQ virtualization allows VMs to request, apply, and be notified of IRQ events on their virtual GPIO pins, which are forwarded by the hypervisor to the corresponding physical pins.