patch-2.4.0-test9 linux/drivers/acpi/include/acexcep.h
Next file: linux/drivers/acpi/include/acglobal.h
Previous file: linux/drivers/acpi/include/acevents.h
Back to the patch index
Back to the overall index
- Lines: 278
- Date:
Fri Sep 15 14:30:30 2000
- Orig file:
v2.4.0-test8/linux/drivers/acpi/include/acexcep.h
- Orig date:
Wed Jul 5 11:23:12 2000
diff -u --recursive --new-file v2.4.0-test8/linux/drivers/acpi/include/acexcep.h linux/drivers/acpi/include/acexcep.h
@@ -1,7 +1,7 @@
-
/******************************************************************************
*
* Name: acexcep.h - Exception codes returned by the ACPI subsystem
+ * $Revision: 35 $
*
*****************************************************************************/
@@ -31,65 +31,105 @@
* Exceptions returned by external ACPI interfaces
*/
+#define AE_CODE_ENVIRONMENTAL 0x0000
+#define AE_CODE_PROGRAMMER 0x1000
+#define AE_CODE_ACPI_TABLES 0x2000
+#define AE_CODE_AML 0x3000
+#define AE_CODE_CONTROL 0x4000
+#define AE_CODE_MASK 0xF000
+
+
#define ACPI_SUCCESS(a) (!(a))
#define ACPI_FAILURE(a) (a)
+
#define AE_OK (ACPI_STATUS) 0x0000
-#define AE_CTRL_RETURN_VALUE (ACPI_STATUS) 0x0001
-#define AE_CTRL_PENDING (ACPI_STATUS) 0x0002
-#define AE_CTRL_TERMINATE (ACPI_STATUS) 0x0003
-#define AE_CTRL_TRUE (ACPI_STATUS) 0x0004
-#define AE_CTRL_FALSE (ACPI_STATUS) 0x0005
-#define AE_CTRL_DEPTH (ACPI_STATUS) 0x0006
-#define AE_CTRL_RESERVED (ACPI_STATUS) 0x0007
-#define AE_AML_ERROR (ACPI_STATUS) 0x0008
-#define AE_AML_PARSE (ACPI_STATUS) 0x0009
-#define AE_AML_BAD_OPCODE (ACPI_STATUS) 0x000A
-#define AE_AML_NO_OPERAND (ACPI_STATUS) 0x000B
-#define AE_AML_OPERAND_TYPE (ACPI_STATUS) 0x000C
-#define AE_AML_OPERAND_VALUE (ACPI_STATUS) 0x000D
-#define AE_AML_UNINITIALIZED_LOCAL (ACPI_STATUS) 0x000E
-#define AE_AML_UNINITIALIZED_ARG (ACPI_STATUS) 0x000F
-#define AE_AML_UNINITIALIZED_ELEMENT (ACPI_STATUS) 0x0010
-#define AE_AML_NUMERIC_OVERFLOW (ACPI_STATUS) 0x0011
-#define AE_AML_REGION_LIMIT (ACPI_STATUS) 0x0012
-#define AE_AML_BUFFER_LIMIT (ACPI_STATUS) 0x0013
-#define AE_AML_PACKAGE_LIMIT (ACPI_STATUS) 0x0014
-#define AE_AML_DIVIDE_BY_ZERO (ACPI_STATUS) 0x0015
-#define AE_AML_BAD_NAME (ACPI_STATUS) 0x0016
-#define AE_AML_NAME_NOT_FOUND (ACPI_STATUS) 0x0017
-#define AE_AML_INTERNAL (ACPI_STATUS) 0x0018
-#define AE_AML_RESERVED (ACPI_STATUS) 0x0019
-#define AE_ERROR (ACPI_STATUS) 0x001A
-#define AE_NO_ACPI_TABLES (ACPI_STATUS) 0x001B
-#define AE_NO_NAMESPACE (ACPI_STATUS) 0x001C
-#define AE_NO_MEMORY (ACPI_STATUS) 0x001D
-#define AE_BAD_SIGNATURE (ACPI_STATUS) 0x001E
-#define AE_BAD_HEADER (ACPI_STATUS) 0x001F
-#define AE_BAD_CHECKSUM (ACPI_STATUS) 0x0020
-#define AE_BAD_PARAMETER (ACPI_STATUS) 0x0021
-#define AE_BAD_CHARACTER (ACPI_STATUS) 0x0022
-#define AE_BAD_PATHNAME (ACPI_STATUS) 0x0023
-#define AE_BAD_DATA (ACPI_STATUS) 0x0024
-#define AE_BAD_ADDRESS (ACPI_STATUS) 0x0025
-#define AE_NOT_FOUND (ACPI_STATUS) 0x0026
-#define AE_NOT_EXIST (ACPI_STATUS) 0x0027
-#define AE_EXIST (ACPI_STATUS) 0x0028
-#define AE_TYPE (ACPI_STATUS) 0x0029
-#define AE_NULL_OBJECT (ACPI_STATUS) 0x002A
-#define AE_NULL_ENTRY (ACPI_STATUS) 0x002B
-#define AE_BUFFER_OVERFLOW (ACPI_STATUS) 0x002C
-#define AE_STACK_OVERFLOW (ACPI_STATUS) 0x002D
-#define AE_STACK_UNDERFLOW (ACPI_STATUS) 0x002E
-#define AE_NOT_IMPLEMENTED (ACPI_STATUS) 0x002F
-#define AE_VERSION_MISMATCH (ACPI_STATUS) 0x0030
-#define AE_SUPPORT (ACPI_STATUS) 0x0031
-#define AE_SHARE (ACPI_STATUS) 0x0032
-#define AE_LIMIT (ACPI_STATUS) 0x0033
-#define AE_TIME (ACPI_STATUS) 0x0034
-#define AE_UNKNOWN_STATUS (ACPI_STATUS) 0x0035
-#define ACPI_MAX_STATUS (ACPI_STATUS) 0x0035
-#define ACPI_NUM_STATUS (ACPI_STATUS) 0x0036
+
+/*
+ * Environmental exceptions
+ */
+#define AE_ERROR (ACPI_STATUS) (0x0001 | AE_CODE_ENVIRONMENTAL)
+#define AE_NO_ACPI_TABLES (ACPI_STATUS) (0x0002 | AE_CODE_ENVIRONMENTAL)
+#define AE_NO_NAMESPACE (ACPI_STATUS) (0x0003 | AE_CODE_ENVIRONMENTAL)
+#define AE_NO_MEMORY (ACPI_STATUS) (0x0004 | AE_CODE_ENVIRONMENTAL)
+#define AE_NOT_FOUND (ACPI_STATUS) (0x0005 | AE_CODE_ENVIRONMENTAL)
+#define AE_NOT_EXIST (ACPI_STATUS) (0x0006 | AE_CODE_ENVIRONMENTAL)
+#define AE_EXIST (ACPI_STATUS) (0x0007 | AE_CODE_ENVIRONMENTAL)
+#define AE_TYPE (ACPI_STATUS) (0x0008 | AE_CODE_ENVIRONMENTAL)
+#define AE_NULL_OBJECT (ACPI_STATUS) (0x0009 | AE_CODE_ENVIRONMENTAL)
+#define AE_NULL_ENTRY (ACPI_STATUS) (0x000A | AE_CODE_ENVIRONMENTAL)
+#define AE_BUFFER_OVERFLOW (ACPI_STATUS) (0x000B | AE_CODE_ENVIRONMENTAL)
+#define AE_STACK_OVERFLOW (ACPI_STATUS) (0x000C | AE_CODE_ENVIRONMENTAL)
+#define AE_STACK_UNDERFLOW (ACPI_STATUS) (0x000D | AE_CODE_ENVIRONMENTAL)
+#define AE_NOT_IMPLEMENTED (ACPI_STATUS) (0x000E | AE_CODE_ENVIRONMENTAL)
+#define AE_VERSION_MISMATCH (ACPI_STATUS) (0x000F | AE_CODE_ENVIRONMENTAL)
+#define AE_SUPPORT (ACPI_STATUS) (0x0010 | AE_CODE_ENVIRONMENTAL)
+#define AE_SHARE (ACPI_STATUS) (0x0011 | AE_CODE_ENVIRONMENTAL)
+#define AE_LIMIT (ACPI_STATUS) (0x0012 | AE_CODE_ENVIRONMENTAL)
+#define AE_TIME (ACPI_STATUS) (0x0013 | AE_CODE_ENVIRONMENTAL)
+#define AE_UNKNOWN_STATUS (ACPI_STATUS) (0x0014 | AE_CODE_ENVIRONMENTAL)
+
+#define AE_CODE_ENV_MAX 0x0014
+
+/*
+ * Programmer exceptions
+ */
+#define AE_BAD_PARAMETER (ACPI_STATUS) (0x0001 | AE_CODE_PROGRAMMER)
+#define AE_BAD_CHARACTER (ACPI_STATUS) (0x0002 | AE_CODE_PROGRAMMER)
+#define AE_BAD_PATHNAME (ACPI_STATUS) (0x0003 | AE_CODE_PROGRAMMER)
+#define AE_BAD_DATA (ACPI_STATUS) (0x0004 | AE_CODE_PROGRAMMER)
+#define AE_BAD_ADDRESS (ACPI_STATUS) (0x0005 | AE_CODE_PROGRAMMER)
+
+#define AE_CODE_PGM_MAX 0x0005
+
+
+/*
+ * Acpi table exceptions
+ */
+#define AE_BAD_SIGNATURE (ACPI_STATUS) (0x0001 | AE_CODE_ACPI_TABLES)
+#define AE_BAD_HEADER (ACPI_STATUS) (0x0002 | AE_CODE_ACPI_TABLES)
+#define AE_BAD_CHECKSUM (ACPI_STATUS) (0x0003 | AE_CODE_ACPI_TABLES)
+
+#define AE_CODE_TBL_MAX 0x0003
+
+
+/*
+ * AML exceptions. These are caused by problems with
+ * the actual AML byte stream
+ */
+#define AE_AML_ERROR (ACPI_STATUS) (0x0001 | AE_CODE_AML)
+#define AE_AML_PARSE (ACPI_STATUS) (0x0002 | AE_CODE_AML)
+#define AE_AML_BAD_OPCODE (ACPI_STATUS) (0x0003 | AE_CODE_AML)
+#define AE_AML_NO_OPERAND (ACPI_STATUS) (0x0004 | AE_CODE_AML)
+#define AE_AML_OPERAND_TYPE (ACPI_STATUS) (0x0005 | AE_CODE_AML)
+#define AE_AML_OPERAND_VALUE (ACPI_STATUS) (0x0006 | AE_CODE_AML)
+#define AE_AML_UNINITIALIZED_LOCAL (ACPI_STATUS) (0x0007 | AE_CODE_AML)
+#define AE_AML_UNINITIALIZED_ARG (ACPI_STATUS) (0x0008 | AE_CODE_AML)
+#define AE_AML_UNINITIALIZED_ELEMENT (ACPI_STATUS) (0x0009 | AE_CODE_AML)
+#define AE_AML_NUMERIC_OVERFLOW (ACPI_STATUS) (0x000A | AE_CODE_AML)
+#define AE_AML_REGION_LIMIT (ACPI_STATUS) (0x000B | AE_CODE_AML)
+#define AE_AML_BUFFER_LIMIT (ACPI_STATUS) (0x000C | AE_CODE_AML)
+#define AE_AML_PACKAGE_LIMIT (ACPI_STATUS) (0x000D | AE_CODE_AML)
+#define AE_AML_DIVIDE_BY_ZERO (ACPI_STATUS) (0x000E | AE_CODE_AML)
+#define AE_AML_BAD_NAME (ACPI_STATUS) (0x000F | AE_CODE_AML)
+#define AE_AML_NAME_NOT_FOUND (ACPI_STATUS) (0x0010 | AE_CODE_AML)
+#define AE_AML_INTERNAL (ACPI_STATUS) (0x0011 | AE_CODE_AML)
+
+#define AE_CODE_AML_MAX 0x0011
+
+/*
+ * Internal exceptions used for control
+ */
+#define AE_CTRL_RETURN_VALUE (ACPI_STATUS) (0x0001 | AE_CODE_CONTROL)
+#define AE_CTRL_PENDING (ACPI_STATUS) (0x0002 | AE_CODE_CONTROL)
+#define AE_CTRL_TERMINATE (ACPI_STATUS) (0x0003 | AE_CODE_CONTROL)
+#define AE_CTRL_TRUE (ACPI_STATUS) (0x0004 | AE_CODE_CONTROL)
+#define AE_CTRL_FALSE (ACPI_STATUS) (0x0005 | AE_CODE_CONTROL)
+#define AE_CTRL_DEPTH (ACPI_STATUS) (0x0006 | AE_CODE_CONTROL)
+#define AE_CTRL_END (ACPI_STATUS) (0x0007 | AE_CODE_CONTROL)
+#define AE_CTRL_TRANSFER (ACPI_STATUS) (0x0008 | AE_CODE_CONTROL)
+
+#define AE_CODE_CTRL_MAX 0x0008
#ifdef DEFINE_ACPI_GLOBALS
@@ -98,46 +138,13 @@
* String versions of the exception codes above
* These strings must match the corresponding defines exactly
*/
-static char *acpi_gbl_exception_names[] =
+static NATIVE_CHAR *acpi_gbl_exception_names_env[] =
{
"AE_OK",
- "AE_CTRL_RETURN_VALUE",
- "AE_CTRL_PENDING",
- "AE_CTRL_TERMINATE",
- "AE_CTRL_TRUE",
- "AE_CTRL_FALSE",
- "AE_CTRL_DEPTH",
- "AE_CTRL_RESERVED",
- "AE_AML_ERROR",
- "AE_AML_PARSE",
- "AE_AML_BAD_OPCODE",
- "AE_AML_NO_OPERAND",
- "AE_AML_OPERAND_TYPE",
- "AE_AML_OPERAND_VALUE",
- "AE_AML_UNINITIALIZED_LOCAL",
- "AE_AML_UNINITIALIZED_ARG",
- "AE_AML_UNINITIALIZED_ELEMENT",
- "AE_AML_NUMERIC_OVERFLOW",
- "AE_AML_REGION_LIMIT",
- "AE_AML_BUFFER_LIMIT",
- "AE_AML_PACKAGE_LIMIT",
- "AE_AML_DIVIDE_BY_ZERO",
- "AE_AML_BAD_NAME",
- "AE_AML_NAME_NOT_FOUND",
- "AE_AML_INTERNAL",
- "AE_AML_RESERVED",
"AE_ERROR",
"AE_NO_ACPI_TABLES",
"AE_NO_NAMESPACE",
"AE_NO_MEMORY",
- "AE_BAD_SIGNATURE",
- "AE_BAD_HEADER",
- "AE_BAD_CHECKSUM",
- "AE_BAD_PARAMETER",
- "AE_BAD_CHARACTER",
- "AE_BAD_PATHNAME",
- "AE_BAD_DATA",
- "AE_BAD_ADDRESS",
"AE_NOT_FOUND",
"AE_NOT_EXIST",
"AE_EXIST",
@@ -153,8 +160,58 @@
"AE_SHARE",
"AE_LIMIT",
"AE_TIME",
- "AE_UNKNOWN_STATUS"
+ "AE_UNKNOWN_STATUS",
+};
+
+static NATIVE_CHAR *acpi_gbl_exception_names_pgm[] =
+{
+ "AE_BAD_PARAMETER",
+ "AE_BAD_CHARACTER",
+ "AE_BAD_PATHNAME",
+ "AE_BAD_DATA",
+ "AE_BAD_ADDRESS",
+};
+
+static NATIVE_CHAR *acpi_gbl_exception_names_tbl[] =
+{
+ "AE_BAD_SIGNATURE",
+ "AE_BAD_HEADER",
+ "AE_BAD_CHECKSUM",
+};
+
+static NATIVE_CHAR *acpi_gbl_exception_names_aml[] =
+{
+ "AE_AML_ERROR",
+ "AE_AML_PARSE",
+ "AE_AML_BAD_OPCODE",
+ "AE_AML_NO_OPERAND",
+ "AE_AML_OPERAND_TYPE",
+ "AE_AML_OPERAND_VALUE",
+ "AE_AML_UNINITIALIZED_LOCAL",
+ "AE_AML_UNINITIALIZED_ARG",
+ "AE_AML_UNINITIALIZED_ELEMENT",
+ "AE_AML_NUMERIC_OVERFLOW",
+ "AE_AML_REGION_LIMIT",
+ "AE_AML_BUFFER_LIMIT",
+ "AE_AML_PACKAGE_LIMIT",
+ "AE_AML_DIVIDE_BY_ZERO",
+ "AE_AML_BAD_NAME",
+ "AE_AML_NAME_NOT_FOUND",
+ "AE_AML_INTERNAL",
+};
+
+static NATIVE_CHAR *acpi_gbl_exception_names_ctrl[] =
+{
+ "AE_CTRL_RETURN_VALUE",
+ "AE_CTRL_PENDING",
+ "AE_CTRL_TERMINATE",
+ "AE_CTRL_TRUE",
+ "AE_CTRL_FALSE",
+ "AE_CTRL_DEPTH",
+ "AE_CTRL_END",
+ "AE_CTRL_TRANSFER",
};
+
#endif /* DEFINE_ACPI_GLOBALS */
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)