コード例 #1
0
errno_t
acpi_reboot(void)
{
    ACPI_STATUS status;

    status = AcpiReset();
    if (status == AE_NOT_EXIST)
        return ENXIO;

    if (status != AE_OK) {
        SHOW_ERROR( 0, "Reset failed, status = %d", status );
        return ENXIO;
    }

    phantom_spinwait(10000); // 10 sec
    SHOW_ERROR0( 0, "Reset failed, timeout" );
    return ENXIO;
}
コード例 #2
0
ファイル: BusManager.cpp プロジェクト: simonsouth/haiku
status_t
reboot(void)
{
    ACPI_STATUS status;

    TRACE("reboot\n");

    status = AcpiReset();
    if (status == AE_NOT_EXIST)
        return B_UNSUPPORTED;

    if (status != AE_OK) {
        ERROR("Reset failed, status = %d\n", status);
        return B_ERROR;
    }

    snooze(1000000);
    ERROR("Reset failed, timeout\n");
    return B_ERROR;
}
コード例 #3
0
void acpi_reset(void) {
	AcpiReset();
}