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

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)