summaryrefslogtreecommitdiffstats
path: root/sys/contrib/dev/acpica/dbcmds.c
diff options
context:
space:
mode:
authorjkim <jkim@FreeBSD.org>2007-03-22 17:24:05 +0000
committerjkim <jkim@FreeBSD.org>2007-03-22 17:24:05 +0000
commite031ab5da47b5f6c28c3cc5d576128b2d8d202e6 (patch)
tree69d0fa3b3760b0abcc0335ff748e39701a8bf064 /sys/contrib/dev/acpica/dbcmds.c
parentdbc8115981195155aec9304dd8f0ee570bd3d32c (diff)
downloadFreeBSD-src-e031ab5da47b5f6c28c3cc5d576128b2d8d202e6.zip
FreeBSD-src-e031ab5da47b5f6c28c3cc5d576128b2d8d202e6.tar.gz
Vendor import of Intel ACPI-CA 20070320
Diffstat (limited to 'sys/contrib/dev/acpica/dbcmds.c')
-rw-r--r--sys/contrib/dev/acpica/dbcmds.c108
1 files changed, 56 insertions, 52 deletions
diff --git a/sys/contrib/dev/acpica/dbcmds.c b/sys/contrib/dev/acpica/dbcmds.c
index 65e8593..76dd6d9 100644
--- a/sys/contrib/dev/acpica/dbcmds.c
+++ b/sys/contrib/dev/acpica/dbcmds.c
@@ -1,7 +1,7 @@
/*******************************************************************************
*
* Module Name: dbcmds - debug commands and output routines
- * $Revision: 1.132 $
+ * $Revision: 1.150 $
*
******************************************************************************/
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2005, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2007, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -201,6 +201,12 @@ static ARGUMENT_INFO AcpiDbObjectTypes [] =
{"THERMALZONES"},
{"BUFFERFIELDS"},
{"DDBHANDLES"},
+ {"DEBUG"},
+ {"REGIONFIELDS"},
+ {"BANKFIELDS"},
+ {"INDEXFIELDS"},
+ {"REFERENCES"},
+ {"ALIAS"},
{NULL} /* Must be null terminated */
};
@@ -279,9 +285,6 @@ ACPI_STATUS
AcpiDbSleep (
char *ObjectArg)
{
-#if ACPI_MACHINE_WIDTH == 16
- return (AE_OK);
-#else
ACPI_STATUS Status;
UINT8 SleepState;
@@ -306,7 +309,6 @@ AcpiDbSleep (
Status = AcpiLeaveSleepState (SleepState);
return (Status);
-#endif
}
@@ -405,11 +407,11 @@ AcpiDbDisplayLocks (
UINT32 i;
- for (i = 0; i < MAX_MUTEX; i++)
+ for (i = 0; i < ACPI_MAX_MUTEX; i++)
{
AcpiOsPrintf ("%26s : %s\n", AcpiUtGetMutexName (i),
- AcpiGbl_MutexInfo[i].ThreadId == ACPI_MUTEX_NOT_ACQUIRED
- ? "Locked" : "Unlocked");
+ AcpiGbl_MutexInfo[i].ThreadId == ACPI_MUTEX_NOT_ACQUIRED
+ ? "Locked" : "Unlocked");
}
}
@@ -431,30 +433,28 @@ void
AcpiDbDisplayTableInfo (
char *TableArg)
{
- UINT32 i;
+ ACPI_NATIVE_UINT i;
ACPI_TABLE_DESC *TableDesc;
- for (i = 0; i < NUM_ACPI_TABLE_TYPES; i++)
+ /*
+ * Walk the root table list
+ */
+ for (i = 0; i < AcpiGbl_RootTableList.Count; i++)
{
- TableDesc = AcpiGbl_TableLists[i].Next;
- while (TableDesc)
- {
- AcpiOsPrintf ( "%s at %p length %.5X",
- AcpiGbl_TableData[i].Name, TableDesc->Pointer,
- (UINT32) TableDesc->Length);
+ TableDesc = &AcpiGbl_RootTableList.Tables[i];
+ AcpiOsPrintf ( "%4.4s at %p length %.5X",
+ TableDesc->Signature.Ascii, TableDesc->Pointer,
+ (UINT32) TableDesc->Length);
- if (i != ACPI_TABLE_FACS)
- {
- AcpiOsPrintf (" OemID=%6s TableId=%8s OemRevision=%8.8X",
- TableDesc->Pointer->OemId,
- TableDesc->Pointer->OemTableId,
- TableDesc->Pointer->OemRevision);
- }
- AcpiOsPrintf ("\n");
-
- TableDesc = TableDesc->Next;
+ if (TableDesc->Pointer && (i != ACPI_TABLE_INDEX_FACS))
+ {
+ AcpiOsPrintf (" OemId=\"%6s\" OemTableId=\"%8s\" OemRevision=%8.8X",
+ TableDesc->Pointer->OemId,
+ TableDesc->Pointer->OemTableId,
+ TableDesc->Pointer->OemRevision);
}
+ AcpiOsPrintf ("\n");
}
}
@@ -479,13 +479,16 @@ AcpiDbUnloadAcpiTable (
char *TableArg,
char *InstanceArg)
{
+/* TBD: Need to reimplement for new data structures */
+
+#if 0
UINT32 i;
ACPI_STATUS Status;
/* Search all tables for the target type */
- for (i = 0; i < NUM_ACPI_TABLE_TYPES; i++)
+ for (i = 0; i < (ACPI_TABLE_ID_MAX+1); i++)
{
if (!ACPI_STRNCMP (TableArg, AcpiGbl_TableData[i].Signature,
AcpiGbl_TableData[i].SigLength))
@@ -508,6 +511,7 @@ AcpiDbUnloadAcpiTable (
}
AcpiOsPrintf ("Unknown table type [%s]\n", TableArg);
+#endif
}
@@ -671,7 +675,7 @@ AcpiDbDisassembleMethod (
Status = AcpiDsInitAmlWalk (WalkState, Op, NULL,
ObjDesc->Method.AmlStart,
- ObjDesc->Method.AmlLength, NULL, 1);
+ ObjDesc->Method.AmlLength, NULL, ACPI_IMODE_LOAD_PASS1);
if (ACPI_FAILURE (Status))
{
return (Status);
@@ -931,14 +935,14 @@ AcpiDbSetMethodData (
if (Index > ACPI_METHOD_MAX_ARG)
{
AcpiOsPrintf ("Arg%d - Invalid argument name\n", Index);
- return;
+ goto Cleanup;
}
Status = AcpiDsStoreObjectToLocal (AML_ARG_OP, Index, ObjDesc,
WalkState);
if (ACPI_FAILURE (Status))
{
- return;
+ goto Cleanup;
}
ObjDesc = WalkState->Arguments[Index].Object;
@@ -954,14 +958,14 @@ AcpiDbSetMethodData (
if (Index > ACPI_METHOD_MAX_LOCAL)
{
AcpiOsPrintf ("Local%d - Invalid local variable name\n", Index);
- return;
+ goto Cleanup;
}
Status = AcpiDsStoreObjectToLocal (AML_LOCAL_OP, Index, ObjDesc,
WalkState);
if (ACPI_FAILURE (Status))
{
- return;
+ goto Cleanup;
}
ObjDesc = WalkState->LocalVariables[Index].Object;
@@ -973,6 +977,9 @@ AcpiDbSetMethodData (
default:
break;
}
+
+Cleanup:
+ AcpiUtRemoveReference (ObjDesc);
}
@@ -1013,7 +1020,7 @@ AcpiDbWalkForSpecificObjects (
}
AcpiOsPrintf ("%32s", (char *) Buffer.Pointer);
- ACPI_MEM_FREE (Buffer.Pointer);
+ ACPI_FREE (Buffer.Pointer);
/* Dump short info about the object */
@@ -1137,7 +1144,7 @@ AcpiDbWalkAndMatchName (
AcpiOsPrintf ("%32s", (char *) Buffer.Pointer);
(void) AcpiNsDumpOneObject (ObjHandle, NestingLevel, &Info, NULL);
- ACPI_MEM_FREE (Buffer.Pointer);
+ ACPI_FREE (Buffer.Pointer);
}
return (AE_OK);
@@ -1212,8 +1219,8 @@ AcpiDbSetScope (
{
/* Validate new scope from the root */
- Status = AcpiNsGetNodeByPath (Name, AcpiGbl_RootNode,
- ACPI_NS_NO_UPSEARCH, &Node);
+ Status = AcpiNsGetNode (AcpiGbl_RootNode, Name, ACPI_NS_NO_UPSEARCH,
+ &Node);
if (ACPI_FAILURE (Status))
{
goto ErrorExit;
@@ -1226,8 +1233,8 @@ AcpiDbSetScope (
{
/* Validate new scope relative to old scope */
- Status = AcpiNsGetNodeByPath (Name, AcpiGbl_DbScopeNode,
- ACPI_NS_NO_UPSEARCH, &Node);
+ Status = AcpiNsGetNode (AcpiGbl_DbScopeNode, Name, ACPI_NS_NO_UPSEARCH,
+ &Node);
if (ACPI_FAILURE (Status))
{
goto ErrorExit;
@@ -1309,12 +1316,11 @@ AcpiDmCompareAmlResources (
AcpiOsPrintf (
"**** Length mismatch in descriptor [%.2X] type %2.2X, Offset %8.8X L1 %X L2 %X ****\n",
Count, ResourceType, Offset, Aml1Length, Aml2Length);
- return;
}
/* Check for descriptor byte match */
- if (ACPI_MEMCMP (Aml1, Aml2, Aml1Length))
+ else if (ACPI_MEMCMP (Aml1, Aml2, Aml1Length))
{
AcpiOsPrintf (
"**** Data mismatch in descriptor [%.2X] type %2.2X, Offset %8.8X ****\n",
@@ -1333,7 +1339,7 @@ AcpiDmCompareAmlResources (
Count++;
Offset += Aml1Length;
Aml1 += Aml1Length;
- Aml2 += Aml1Length;
+ Aml2 += Aml2Length;
}
}
@@ -1410,11 +1416,11 @@ AcpiDmTestResourceConversion (
/* Cleanup and exit */
- ACPI_MEM_FREE (NewAml.Pointer);
+ ACPI_FREE (NewAml.Pointer);
Exit2:
- ACPI_MEM_FREE (ResourceObj.Pointer);
+ ACPI_FREE (ResourceObj.Pointer);
Exit1:
- ACPI_MEM_FREE (ReturnObj.Pointer);
+ ACPI_FREE (ReturnObj.Pointer);
return (Status);
}
@@ -1435,8 +1441,6 @@ void
AcpiDbDisplayResources (
char *ObjectArg)
{
-#if ACPI_MACHINE_WIDTH != 16
-
ACPI_NAMESPACE_NODE *Node;
ACPI_STATUS Status;
ACPI_BUFFER ReturnObj;
@@ -1483,7 +1487,7 @@ AcpiDbDisplayResources (
goto GetCrs;
}
- AcpiRsDumpIrqList ((UINT8 *) AcpiGbl_DbBuffer);
+ AcpiRsDumpIrqList (ACPI_CAST_PTR (UINT8, AcpiGbl_DbBuffer));
/* _CRS */
@@ -1574,7 +1578,6 @@ Cleanup:
AcpiDbSetOutputDestination (ACPI_DB_CONSOLE_OUTPUT);
return;
-#endif
}
@@ -1734,7 +1737,8 @@ AcpiDbBusWalk (
/* Exit if there is no _PRT under this device */
- Status = AcpiGetHandle (Node, METHOD_NAME__PRT, &TempNode);
+ Status = AcpiGetHandle (Node, METHOD_NAME__PRT,
+ ACPI_CAST_PTR (ACPI_HANDLE, &TempNode));
if (ACPI_FAILURE (Status))
{
return (AE_OK);
@@ -1753,7 +1757,7 @@ AcpiDbBusWalk (
/* Display the full path */
AcpiOsPrintf ("%-32s", (char *) Buffer.Pointer);
- ACPI_MEM_FREE (Buffer.Pointer);
+ ACPI_FREE (Buffer.Pointer);
/* _PRT info */
@@ -1797,7 +1801,7 @@ AcpiDbBusWalk (
if (ACPI_SUCCESS (Status))
{
AcpiOsPrintf (" _CID=%s", Cid->Id[0].Value);
- ACPI_MEM_FREE (Cid);
+ ACPI_FREE (Cid);
}
AcpiOsPrintf ("\n");
OpenPOWER on IntegriCloud