⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 utglobal.c

📁 acpi tools for linux include acpiexec and acpixtract
💻 C
📖 第 1 页 / 共 2 页
字号:
 * * FUNCTION:    AcpiUtGetEventName * * PARAMETERS:  None. * * RETURN:      Status * * DESCRIPTION: Translate a Event ID into a name string (Debug only) * ******************************************************************************//* Event type decoding */static const char        *AcpiGbl_EventTypes[ACPI_NUM_FIXED_EVENTS] ={    "PM_Timer",    "GlobalLock",    "PowerButton",    "SleepButton",    "RealTimeClock",};char *AcpiUtGetEventName (    UINT32                  EventId){    if (EventId > ACPI_EVENT_MAX)    {        return ("InvalidEventID");    }    return (ACPI_CAST_PTR (char, AcpiGbl_EventTypes[EventId]));}/******************************************************************************* * * FUNCTION:    AcpiUtGetTypeName * * PARAMETERS:  None. * * RETURN:      Status * * DESCRIPTION: Translate a Type ID into a name string (Debug only) * ******************************************************************************//* * Elements of AcpiGbl_NsTypeNames below must match * one-to-one with values of ACPI_OBJECT_TYPE * * The type ACPI_TYPE_ANY (Untyped) is used as a "don't care" when searching; * when stored in a table it really means that we have thus far seen no * evidence to indicate what type is actually going to be stored for this entry. */static const char           AcpiGbl_BadType[] = "UNDEFINED";/* Printable names of the ACPI object types */static const char           *AcpiGbl_NsTypeNames[] ={    /* 00 */ "Untyped",    /* 01 */ "Integer",    /* 02 */ "String",    /* 03 */ "Buffer",    /* 04 */ "Package",    /* 05 */ "FieldUnit",    /* 06 */ "Device",    /* 07 */ "Event",    /* 08 */ "Method",    /* 09 */ "Mutex",    /* 10 */ "Region",    /* 11 */ "Power",    /* 12 */ "Processor",    /* 13 */ "Thermal",    /* 14 */ "BufferField",    /* 15 */ "DdbHandle",    /* 16 */ "DebugObject",    /* 17 */ "RegionField",    /* 18 */ "BankField",    /* 19 */ "IndexField",    /* 20 */ "Reference",    /* 21 */ "Alias",    /* 22 */ "MethodAlias",    /* 23 */ "Notify",    /* 24 */ "AddrHandler",    /* 25 */ "ResourceDesc",    /* 26 */ "ResourceFld",    /* 27 */ "Scope",    /* 28 */ "Extra",    /* 29 */ "Data",    /* 30 */ "Invalid"};char *AcpiUtGetTypeName (    ACPI_OBJECT_TYPE        Type){    if (Type > ACPI_TYPE_INVALID)    {        return (ACPI_CAST_PTR (char, AcpiGbl_BadType));    }    return (ACPI_CAST_PTR (char, AcpiGbl_NsTypeNames[Type]));}char *AcpiUtGetObjectTypeName (    ACPI_OPERAND_OBJECT     *ObjDesc){    if (!ObjDesc)    {        return ("[NULL Object Descriptor]");    }    return (AcpiUtGetTypeName (ACPI_GET_OBJECT_TYPE (ObjDesc)));}/******************************************************************************* * * FUNCTION:    AcpiUtGetNodeName * * PARAMETERS:  Object               - A namespace node * * RETURN:      Pointer to a string * * DESCRIPTION: Validate the node and return the node's ACPI name. * ******************************************************************************/char *AcpiUtGetNodeName (    void                    *Object){    ACPI_NAMESPACE_NODE     *Node = (ACPI_NAMESPACE_NODE *) Object;    /* Must return a string of exactly 4 characters == ACPI_NAME_SIZE */    if (!Object)    {        return ("NULL");    }    /* Check for Root node */    if ((Object == ACPI_ROOT_OBJECT) ||        (Object == AcpiGbl_RootNode))    {        return ("\"\\\" ");    }    /* Descriptor must be a namespace node */    if (ACPI_GET_DESCRIPTOR_TYPE (Node) != ACPI_DESC_TYPE_NAMED)    {        return ("####");    }    /* Name must be a valid ACPI name */    if (!AcpiUtValidAcpiName (Node->Name.Integer))    {        Node->Name.Integer = AcpiUtRepairName (Node->Name.Ascii);    }    /* Return the name */    return (Node->Name.Ascii);}/******************************************************************************* * * FUNCTION:    AcpiUtGetDescriptorName * * PARAMETERS:  Object               - An ACPI object * * RETURN:      Pointer to a string * * DESCRIPTION: Validate object and return the descriptor type * ******************************************************************************//* Printable names of object descriptor types */static const char           *AcpiGbl_DescTypeNames[] ={    /* 00 */ "Invalid",    /* 01 */ "Cached",    /* 02 */ "State-Generic",    /* 03 */ "State-Update",    /* 04 */ "State-Package",    /* 05 */ "State-Control",    /* 06 */ "State-RootParseScope",    /* 07 */ "State-ParseScope",    /* 08 */ "State-WalkScope",    /* 09 */ "State-Result",    /* 10 */ "State-Notify",    /* 11 */ "State-Thread",    /* 12 */ "Walk",    /* 13 */ "Parser",    /* 14 */ "Operand",    /* 15 */ "Node"};char *AcpiUtGetDescriptorName (    void                    *Object){    if (!Object)    {        return ("NULL OBJECT");    }    if (ACPI_GET_DESCRIPTOR_TYPE (Object) > ACPI_DESC_TYPE_MAX)    {        return (ACPI_CAST_PTR (char, AcpiGbl_BadType));    }    return (ACPI_CAST_PTR (char,        AcpiGbl_DescTypeNames[ACPI_GET_DESCRIPTOR_TYPE (Object)]));}#if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER)/* * Strings and procedures used for debug only *//******************************************************************************* * * FUNCTION:    AcpiUtGetMutexName * * PARAMETERS:  MutexId         - The predefined ID for this mutex. * * RETURN:      String containing the name of the mutex. Always returns a valid *              pointer. * * DESCRIPTION: Translate a mutex ID into a name string (Debug only) * ******************************************************************************/char *AcpiUtGetMutexName (    UINT32                  MutexId){    if (MutexId > ACPI_MAX_MUTEX)    {        return ("Invalid Mutex ID");    }    return (AcpiGbl_MutexNames[MutexId]);}#endif/******************************************************************************* * * FUNCTION:    AcpiUtValidObjectType * * PARAMETERS:  Type            - Object type to be validated * * RETURN:      TRUE if valid object type, FALSE otherwise * * DESCRIPTION: Validate an object type * ******************************************************************************/BOOLEANAcpiUtValidObjectType (    ACPI_OBJECT_TYPE        Type){    if (Type > ACPI_TYPE_LOCAL_MAX)    {        /* Note: Assumes all TYPEs are contiguous (external/local) */        return (FALSE);    }    return (TRUE);}/******************************************************************************* * * FUNCTION:    AcpiUtInitGlobals * * PARAMETERS:  None * * RETURN:      None * * DESCRIPTION: Init library globals.  All globals that require specific *              initialization should be initialized here! * ******************************************************************************/voidAcpiUtInitGlobals (    void){    ACPI_STATUS             Status;    UINT32                  i;    ACPI_FUNCTION_TRACE (UtInitGlobals);    /* Create all memory caches */    Status = AcpiUtCreateCaches ();    if (ACPI_FAILURE (Status))    {        return;    }    /* Mutex locked flags */    for (i = 0; i < ACPI_NUM_MUTEX; i++)    {        AcpiGbl_MutexInfo[i].Mutex          = NULL;        AcpiGbl_MutexInfo[i].ThreadId       = ACPI_MUTEX_NOT_ACQUIRED;        AcpiGbl_MutexInfo[i].UseCount       = 0;    }    for (i = 0; i < ACPI_NUM_OWNERID_MASKS; i++)    {        AcpiGbl_OwnerIdMask[i]              = 0;    }    AcpiGbl_OwnerIdMask[ACPI_NUM_OWNERID_MASKS - 1] = 0x80000000; /* Last ID is never valid */    /* Event counters */    AcpiMethodCount                     = 0;    AcpiSciCount                        = 0;    AcpiGpeCount                        = 0;    for (i = 0; i < ACPI_NUM_FIXED_EVENTS; i++)    {        AcpiFixedEventCount[i]              = 0;    }    /* GPE support */    AcpiGbl_GpeXruptListHead            = NULL;    AcpiGbl_GpeFadtBlocks[0]            = NULL;    AcpiGbl_GpeFadtBlocks[1]            = NULL;    /* Global handlers */    AcpiGbl_SystemNotify.Handler        = NULL;    AcpiGbl_DeviceNotify.Handler        = NULL;    AcpiGbl_ExceptionHandler            = NULL;    AcpiGbl_InitHandler                 = NULL;    AcpiGbl_TableHandler                = NULL;    /* Global Lock support */    AcpiGbl_GlobalLockSemaphore         = NULL;    AcpiGbl_GlobalLockMutex             = NULL;    AcpiGbl_GlobalLockAcquired          = FALSE;    AcpiGbl_GlobalLockHandle            = 0;    /* Miscellaneous variables */    AcpiGbl_CmSingleStep                = FALSE;    AcpiGbl_DbTerminateThreads          = FALSE;    AcpiGbl_Shutdown                    = FALSE;    AcpiGbl_NsLookupCount               = 0;    AcpiGbl_PsFindCount                 = 0;    AcpiGbl_AcpiHardwarePresent         = TRUE;    AcpiGbl_LastOwnerIdIndex            = 0;    AcpiGbl_NextOwnerIdOffset           = 0;    AcpiGbl_TraceMethodName             = 0;    AcpiGbl_TraceDbgLevel               = 0;    AcpiGbl_TraceDbgLayer               = 0;    AcpiGbl_DebuggerConfiguration       = DEBUGGER_THREADING;    AcpiGbl_DbOutputFlags               = ACPI_DB_CONSOLE_OUTPUT;    /* Hardware oriented */    AcpiGbl_EventsInitialized           = FALSE;    AcpiGbl_SystemAwakeAndRunning       = TRUE;    /* Namespace */    AcpiGbl_RootNode                    = NULL;    AcpiGbl_RootNodeStruct.Name.Integer = ACPI_ROOT_NAME;    AcpiGbl_RootNodeStruct.DescriptorType = ACPI_DESC_TYPE_NAMED;    AcpiGbl_RootNodeStruct.Type         = ACPI_TYPE_DEVICE;    AcpiGbl_RootNodeStruct.Child        = NULL;    AcpiGbl_RootNodeStruct.Peer         = NULL;    AcpiGbl_RootNodeStruct.Object       = NULL;    AcpiGbl_RootNodeStruct.Flags        = ANOBJ_END_OF_PEER_LIST;#ifdef ACPI_DEBUG_OUTPUT    AcpiGbl_LowestStackPointer          = ACPI_CAST_PTR (ACPI_SIZE, ACPI_SIZE_MAX);#endif#ifdef ACPI_DBG_TRACK_ALLOCATIONS    AcpiGbl_DisplayFinalMemStats        = FALSE;#endif    return_VOID;}/* Public globals */ACPI_EXPORT_SYMBOL (AcpiDbgLevel)ACPI_EXPORT_SYMBOL (AcpiDbgLayer)ACPI_EXPORT_SYMBOL (AcpiGpeCount)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -