From 21ee8eb586b4e578874f3487de2b7aab9d38cf42 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Sat, 1 Oct 2011 07:19:57 +0000 Subject: [PATCH] [ACPI] - Implement AcpiOsGetPhysicalAddress - Make sure that AcpiOsGetThreadId returns a non-zero value svn path=/trunk/; revision=53913 --- reactos/drivers/bus/acpi/osl.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/reactos/drivers/bus/acpi/osl.c b/reactos/drivers/bus/acpi/osl.c index 70985d951bf..714cff833ef 100644 --- a/reactos/drivers/bus/acpi/osl.c +++ b/reactos/drivers/bus/acpi/osl.c @@ -124,7 +124,18 @@ AcpiOsGetPhysicalAddress( void *LogicalAddress, ACPI_PHYSICAL_ADDRESS *PhysicalAddress) { - ASSERT(FALSE); + PHYSICAL_ADDRESS PhysAddr; + + if (!LogicalAddress || !PhysicalAddress) + { + DPRINT1("Bad parameter\n"); + return AE_BAD_PARAMETER; + } + + PhysAddr = MmGetPhysicalAddress(LogicalAddress); + + *PhysicalAddress = (ACPI_PHYSICAL_ADDRESS)PhysAddr.QuadPart; + return AE_OK; } @@ -190,7 +201,8 @@ AcpiOsWritable( ACPI_THREAD_ID AcpiOsGetThreadId (void) { - return (ULONG)PsGetCurrentThreadId(); + /* Thread ID must be non-zero */ + return (ULONG)PsGetCurrentThreadId() + 1; } ACPI_STATUS