const char * AcpiFormatException ( ACPI_STATUS Status) { const ACPI_EXCEPTION_INFO *Exception; ACPI_FUNCTION_ENTRY (); Exception = AcpiUtValidateException (Status); if (!Exception) { /* Exception code was not recognized */ ACPI_ERROR ((AE_INFO, "Unknown exception code: 0x%8.8X", Status)); return ("UNKNOWN_STATUS_CODE"); } return (Exception->Name); }
const char * AcpiFormatException ( ACPI_STATUS Status) { const char *Exception = NULL; ACPI_FUNCTION_ENTRY (); Exception = AcpiUtValidateException (Status); if (!Exception) { /* Exception code was not recognized */ ACPI_ERROR ((AE_INFO, "Unknown exception code: 0x%8.8X", Status)); Exception = "UNKNOWN_STATUS_CODE"; } return (ACPI_CAST_PTR (const char, Exception)); }
void AhDecodeException ( char *HexString) { const ACPI_EXCEPTION_INFO *ExceptionInfo; UINT32 Status; UINT32 i; /* * A null input string means to decode and display all known * exception codes. */ if (!HexString) { printf ("All defined ACPICA exception codes:\n\n"); AH_DISPLAY_EXCEPTION (0, "AE_OK (No error occurred)"); /* Display codes in each block of exception types */ for (i = 1; (i & AE_CODE_MASK) <= AE_CODE_MAX; i += 0x1000) { Status = i; do { ExceptionInfo = AcpiUtValidateException ((ACPI_STATUS) Status); if (ExceptionInfo) { AH_DISPLAY_EXCEPTION_TEXT (Status, ExceptionInfo); } Status++; } while (ExceptionInfo); } return; } /* Decode a single user-supplied exception code */ Status = strtoul (HexString, NULL, 16); if (!Status) { printf ("%s: Invalid hexadecimal exception code value\n", HexString); return; } if (Status > ACPI_UINT16_MAX) { AH_DISPLAY_EXCEPTION (Status, "Invalid exception code (more than 16 bits)"); return; } ExceptionInfo = AcpiUtValidateException ((ACPI_STATUS) Status); if (!ExceptionInfo) { AH_DISPLAY_EXCEPTION (Status, "Unknown exception code"); return; } AH_DISPLAY_EXCEPTION_TEXT (Status, ExceptionInfo); }