From 50dcf40f2441a36089f7d68e12e7d97b40bcdd89 Mon Sep 17 00:00:00 2001 From: Alexander Boettcher Date: Mon, 3 Sep 2018 11:50:26 +0200 Subject: [PATCH] acpica: fix regressions (poweroff and semaphore) introduced by acpica update to version 2018-08-10. Fixes #2935 --- repos/libports/src/lib/acpica/osl.cc | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/repos/libports/src/lib/acpica/osl.cc b/repos/libports/src/lib/acpica/osl.cc index 9329e5cb4..a90932fe4 100644 --- a/repos/libports/src/lib/acpica/osl.cc +++ b/repos/libports/src/lib/acpica/osl.cc @@ -124,8 +124,16 @@ ACPI_STATUS AcpiOsSignalSemaphore (ACPI_SEMAPHORE h, UINT32 units) return AE_OK; } -ACPI_STATUS AcpiOsDeleteSemaphore (ACPI_SEMAPHORE) - FAIL(AE_BAD_PARAMETER) +ACPI_STATUS AcpiOsDeleteSemaphore (ACPI_SEMAPHORE h) +{ + Genode::Semaphore *sem = reinterpret_cast(h); + + if (!sem) + return AE_BAD_PARAMETER; + + Genode::destroy(Acpica::heap(), sem); + return AE_OK; +} ACPI_THREAD_ID AcpiOsGetThreadId (void) { return reinterpret_cast(Genode::Thread::myself()); } @@ -265,6 +273,9 @@ void AcpiOsStall (UINT32 stall_us) timer_connection().usleep(stall_us); } +ACPI_STATUS AcpiOsEnterSleep (UINT8, UINT32, UINT32) { + /* unused notification hook for OS */ + return (AE_OK); } /******************************** * unsupported/unused functions * @@ -304,14 +315,6 @@ AcpiOsNotifyCommandComplete ( FAIL(AE_BAD_PARAMETER) } -ACPI_STATUS -AcpiOsEnterSleep ( - UINT8 SleepState, - UINT32 RegaValue, - UINT32 RegbValue) -{ - FAIL(AE_BAD_PARAMETER) -} extern "C" {