sculpt: system reset via PS/2 and ACPI

This patch enables sculpt to utilize the CPU reset mechanism via the
PS/2 controller as well as the information provided via the ACPI FADT
information. Whenever the /config/system file is changed to <system
state="reset"/>, both mechanisms are triggered.

Supporting both mechanisms is useful because the PS/2-based reset does
not work reliably on modern machines. The PS/2-based reset is useful in
the case when the FADT reset information refers to the PS/2 command
port. In this case, the platform driver is unable to access this port
because it is already handed out to the PS/2 driver. In this case, the
PS/2 driver kicks in.

Issue #2726
This commit is contained in:
Norman Feske 2021-03-29 17:45:38 +02:00
parent 2c7c7767fc
commit 96cc660f95
2 changed files with 4 additions and 1 deletions

View File

@ -170,12 +170,13 @@
<start name="ps2_drv">
<resource name="RAM" quantum="1M"/>
<config capslock_led="rom" numlock_led="rom"/>
<config capslock_led="rom" numlock_led="rom" system="yes"/>
<route>
<service name="Platform"> <child name="platform_drv"/> </service>
<service name="Event"> <child name="event_filter" label="ps2"/> </service>
<service name="ROM" label="capslock"> <parent label="capslock"/> </service>
<service name="ROM" label="numlock"> <parent label="numlock"/> </service>
<service name="ROM" label="system"> <parent label="system"/> </service>
<service name="ROM"> <parent/> </service>
<service name="PD"> <parent/> </service>
<service name="CPU"> <parent/> </service>

View File

@ -258,6 +258,8 @@ install_config {
<child name="config_fs_rom" label="numlock_remap"/> </service>
<service name="ROM" label_last="usb_policy">
<child name="config_fs_rom" label="usb"/> </service>
<service name="ROM" label_last="system">
<child name="config_fs_rom" label="system"/> </service>
<service name="ROM" label_last="numlock"> <child name="report_rom"/> </service>
<service name="Timer"> <child name="timer"/> </service>
<service name="Capture"> <child name="nitpicker"/> </service>