summaryrefslogtreecommitdiffstats
path: root/sys/contrib/dev/acpica/nsxfname.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/contrib/dev/acpica/nsxfname.c')
-rw-r--r--sys/contrib/dev/acpica/nsxfname.c58
1 files changed, 42 insertions, 16 deletions
diff --git a/sys/contrib/dev/acpica/nsxfname.c b/sys/contrib/dev/acpica/nsxfname.c
index 257aafd..6b46010 100644
--- a/sys/contrib/dev/acpica/nsxfname.c
+++ b/sys/contrib/dev/acpica/nsxfname.c
@@ -2,7 +2,7 @@
*
* Module Name: nsxfname - Public interfaces to the ACPI subsystem
* ACPI Namespace oriented interfaces
- * $Revision: 75 $
+ * $Revision: 79 $
*
*****************************************************************************/
@@ -126,7 +126,7 @@
#include "acevents.h"
-#define _COMPONENT NAMESPACE
+#define _COMPONENT ACPI_NAMESPACE
MODULE_NAME ("nsxfname")
@@ -159,6 +159,16 @@ AcpiGetHandle (
ACPI_NAMESPACE_NODE *PrefixNode = NULL;
+ /* Ensure that ACPI has been initialized */
+
+ ACPI_IS_INITIALIZATION_COMPLETE (Status);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ /* Parameter Validation */
+
if (!RetHandle || !Pathname)
{
return (AE_BAD_PARAMETER);
@@ -168,16 +178,16 @@ AcpiGetHandle (
if (Parent)
{
- AcpiCmAcquireMutex (ACPI_MTX_NAMESPACE);
+ AcpiUtAcquireMutex (ACPI_MTX_NAMESPACE);
PrefixNode = AcpiNsConvertHandleToEntry (Parent);
if (!PrefixNode)
{
- AcpiCmReleaseMutex (ACPI_MTX_NAMESPACE);
+ AcpiUtReleaseMutex (ACPI_MTX_NAMESPACE);
return (AE_BAD_PARAMETER);
}
- AcpiCmReleaseMutex (ACPI_MTX_NAMESPACE);
+ AcpiUtReleaseMutex (ACPI_MTX_NAMESPACE);
}
/* Special case for root, since we can't search for it */
@@ -229,6 +239,14 @@ AcpiGetName (
ACPI_NAMESPACE_NODE *Node;
+ /* Ensure that ACPI has been initialized */
+
+ ACPI_IS_INITIALIZATION_COMPLETE (Status);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
/* Buffer pointer must be valid always */
if (!RetPathPtr || (NameType > ACPI_NAME_TYPE_MAX))
@@ -258,7 +276,7 @@ AcpiGetName (
* Validate handle and convert to an Node
*/
- AcpiCmAcquireMutex (ACPI_MTX_NAMESPACE);
+ AcpiUtAcquireMutex (ACPI_MTX_NAMESPACE);
Node = AcpiNsConvertHandleToEntry (Handle);
if (!Node)
{
@@ -285,7 +303,7 @@ AcpiGetName (
UnlockAndExit:
- AcpiCmReleaseMutex (ACPI_MTX_NAMESPACE);
+ AcpiUtReleaseMutex (ACPI_MTX_NAMESPACE);
return (Status);
}
@@ -310,14 +328,22 @@ AcpiGetObjectInfo (
ACPI_HANDLE Handle,
ACPI_DEVICE_INFO *Info)
{
- DEVICE_ID Hid;
- DEVICE_ID Uid;
+ ACPI_DEVICE_ID Hid;
+ ACPI_DEVICE_ID Uid;
ACPI_STATUS Status;
UINT32 DeviceStatus = 0;
ACPI_INTEGER Address = 0;
ACPI_NAMESPACE_NODE *Node;
+ /* Ensure that ACPI has been initialized */
+
+ ACPI_IS_INITIALIZATION_COMPLETE (Status);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
/* Parameter validation */
if (!Handle || !Info)
@@ -325,19 +351,19 @@ AcpiGetObjectInfo (
return (AE_BAD_PARAMETER);
}
- AcpiCmAcquireMutex (ACPI_MTX_NAMESPACE);
+ AcpiUtAcquireMutex (ACPI_MTX_NAMESPACE);
Node = AcpiNsConvertHandleToEntry (Handle);
if (!Node)
{
- AcpiCmReleaseMutex (ACPI_MTX_NAMESPACE);
+ AcpiUtReleaseMutex (ACPI_MTX_NAMESPACE);
return (AE_BAD_PARAMETER);
}
Info->Type = Node->Type;
Info->Name = Node->Name;
- AcpiCmReleaseMutex (ACPI_MTX_NAMESPACE);
+ AcpiUtReleaseMutex (ACPI_MTX_NAMESPACE);
/*
* If not a device, we are all done.
@@ -360,7 +386,7 @@ AcpiGetObjectInfo (
/* Execute the _HID method and save the result */
- Status = AcpiCmExecute_HID (Node, &Hid);
+ Status = AcpiUtExecute_HID (Node, &Hid);
if (ACPI_SUCCESS (Status))
{
STRNCPY (Info->HardwareId, Hid.Buffer, sizeof(Info->HardwareId));
@@ -370,7 +396,7 @@ AcpiGetObjectInfo (
/* Execute the _UID method and save the result */
- Status = AcpiCmExecute_UID (Node, &Uid);
+ Status = AcpiUtExecute_UID (Node, &Uid);
if (ACPI_SUCCESS (Status))
{
STRCPY (Info->UniqueId, Uid.Buffer);
@@ -383,7 +409,7 @@ AcpiGetObjectInfo (
* _STA is not always present
*/
- Status = AcpiCmExecute_STA (Node, &DeviceStatus);
+ Status = AcpiUtExecute_STA (Node, &DeviceStatus);
if (ACPI_SUCCESS (Status))
{
Info->CurrentStatus = DeviceStatus;
@@ -395,7 +421,7 @@ AcpiGetObjectInfo (
* _ADR is not always present
*/
- Status = AcpiCmEvaluateNumericObject (METHOD_NAME__ADR,
+ Status = AcpiUtEvaluateNumericObject (METHOD_NAME__ADR,
Node, &Address);
if (ACPI_SUCCESS (Status))
OpenPOWER on IntegriCloud