summaryrefslogtreecommitdiffstats
path: root/sys/contrib/dev/acpica/dmutils.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/contrib/dev/acpica/dmutils.c')
-rw-r--r--sys/contrib/dev/acpica/dmutils.c64
1 files changed, 63 insertions, 1 deletions
diff --git a/sys/contrib/dev/acpica/dmutils.c b/sys/contrib/dev/acpica/dmutils.c
index bb6fca0..add7780 100644
--- a/sys/contrib/dev/acpica/dmutils.c
+++ b/sys/contrib/dev/acpica/dmutils.c
@@ -1,7 +1,7 @@
/*******************************************************************************
*
* Module Name: dmutils - AML disassembler utilities
- * $Revision: 4 $
+ * $Revision: 5 $
*
******************************************************************************/
@@ -289,6 +289,68 @@ const char *AcpiGbl_SIZDecode[4] =
/*******************************************************************************
*
+ * FUNCTION: AcpiDmDecodeAttribute
+ *
+ * PARAMETERS: Attribute - Attribute field of AccessAs keyword
+ *
+ * RETURN: None
+ *
+ * DESCRIPTION: Decode the AccessAs attribute byte. (Mostly SMBus stuff)
+ *
+ ******************************************************************************/
+
+void
+AcpiDmDecodeAttribute (
+ UINT8 Attribute)
+{
+
+ switch (Attribute)
+ {
+ case AML_FIELD_ATTRIB_SMB_QUICK:
+
+ AcpiOsPrintf ("SMBQuick");
+ break;
+
+ case AML_FIELD_ATTRIB_SMB_SEND_RCV:
+
+ AcpiOsPrintf ("SMBSendReceive");
+ break;
+
+ case AML_FIELD_ATTRIB_SMB_BYTE:
+
+ AcpiOsPrintf ("SMBByte");
+ break;
+
+ case AML_FIELD_ATTRIB_SMB_WORD:
+
+ AcpiOsPrintf ("SMBWord");
+ break;
+
+ case AML_FIELD_ATTRIB_SMB_WORD_CALL:
+
+ AcpiOsPrintf ("SMBProcessCall");
+ break;
+
+ case AML_FIELD_ATTRIB_SMB_BLOCK:
+
+ AcpiOsPrintf ("SMBBlock");
+ break;
+
+ case AML_FIELD_ATTRIB_SMB_BLOCK_CALL:
+
+ AcpiOsPrintf ("SMBBlockProcessCall");
+ break;
+
+ default:
+
+ AcpiOsPrintf ("0x%.2X", Attribute);
+ break;
+ }
+}
+
+
+/*******************************************************************************
+ *
* FUNCTION: AcpiDmIndent
*
* PARAMETERS: Level - Current source code indentation level
OpenPOWER on IntegriCloud