Virtualization.framework - Request stop?

Hi! I'm trying to figure out what mechanism request stop sends to the guest to actually request a stop. It doesn't appear that Virtualization.framework implements any ACPI bits relating to power buttons, so unclear how a linux VM would detect that a request has been stopped. I don't see any documentation around what devices are implemented by Virtualization.framework either, in terms of things like realtime clock, etc.

Thanks for any help!

It depends if the virtual machine is using Apple Silicon or an Intel CPU.

On Apple Silicon Macs, the shutdown is signaled through the PL061. In order to use it, the kernel needs to be compiled with that device (CONFIG_GPIO_PL061). From user space, a process like input-event-daemon can turn the event in an action.

On Intel Macs, the stop request is done through the ICH9. The PM1_STS’s Power Button Status (PWRBTN_STS) is set in response to the request.

Virtualization.framework - Request stop?
 
 
Q