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

📄 utglobal.c

📁 xen虚拟机源代码安装包
💻 C
📖 第 1 页 / 共 2 页
字号:
	return (ACPI_CAST_PTR(char, acpi_gbl_region_types[space_id]));}/******************************************************************************* * * FUNCTION:    acpi_ut_get_event_name * * PARAMETERS:  None. * * RETURN:      Status * * DESCRIPTION: Translate a Event ID into a name string (Debug only) * ******************************************************************************//* Event type decoding */static const char *acpi_gbl_event_types[ACPI_NUM_FIXED_EVENTS] = {	"PM_Timer",	"GlobalLock",	"PowerButton",	"SleepButton",	"RealTimeClock",};char *acpi_ut_get_event_name(u32 event_id){	if (event_id > ACPI_EVENT_MAX) {		return ("InvalidEventID");	}	return (ACPI_CAST_PTR(char, acpi_gbl_event_types[event_id]));}/******************************************************************************* * * FUNCTION:    acpi_ut_get_type_name * * PARAMETERS:  None. * * RETURN:      Status * * DESCRIPTION: Translate a Type ID into a name string (Debug only) * ******************************************************************************//* * Elements of acpi_gbl_ns_type_names 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 acpi_gbl_bad_type[] = "UNDEFINED";/* Printable names of the ACPI object types */static const char *acpi_gbl_ns_type_names[] = {	/* 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 *acpi_ut_get_type_name(acpi_object_type type){	if (type > ACPI_TYPE_INVALID) {		return (ACPI_CAST_PTR(char, acpi_gbl_bad_type));	}	return (ACPI_CAST_PTR(char, acpi_gbl_ns_type_names[type]));}char *acpi_ut_get_object_type_name(union acpi_operand_object *obj_desc){	if (!obj_desc) {		return ("[NULL Object Descriptor]");	}	return (acpi_ut_get_type_name(ACPI_GET_OBJECT_TYPE(obj_desc)));}/******************************************************************************* * * FUNCTION:    acpi_ut_get_descriptor_name * * 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 *acpi_gbl_desc_type_names[] = {	/* 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 *acpi_ut_get_descriptor_name(void *object){	if (!object) {		return ("NULL OBJECT");	}	if (ACPI_GET_DESCRIPTOR_TYPE(object) > ACPI_DESC_TYPE_MAX) {		return (ACPI_CAST_PTR(char, acpi_gbl_bad_type));	}	return (ACPI_CAST_PTR(char,			      acpi_gbl_desc_type_names[ACPI_GET_DESCRIPTOR_TYPE						       (object)]));}#if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER)/* * Strings and procedures used for debug only *//******************************************************************************* * * FUNCTION:    acpi_ut_get_mutex_name * * PARAMETERS:  mutex_id        - 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 *acpi_ut_get_mutex_name(u32 mutex_id){	if (mutex_id > ACPI_MAX_MUTEX) {		return ("Invalid Mutex ID");	}	return (acpi_gbl_mutex_names[mutex_id]);}/******************************************************************************* * * FUNCTION:    acpi_ut_get_notify_name * * PARAMETERS:  notify_value    - Value from the Notify() request * * RETURN:      String corresponding to the Notify Value. * * DESCRIPTION: Translate a Notify Value to a notify namestring. * ******************************************************************************//* Names for Notify() values, used for debug output */static const char *acpi_gbl_notify_value_names[] = {	"Bus Check",	"Device Check",	"Device Wake",	"Eject Request",	"Device Check Light",	"Frequency Mismatch",	"Bus Mode Mismatch",	"Power Fault",	"Capabilities Check",	"Device PLD Check",	"Reserved",	"System Locality Update"};const char *acpi_ut_get_notify_name(u32 notify_value){	if (notify_value <= ACPI_NOTIFY_MAX) {		return (acpi_gbl_notify_value_names[notify_value]);	} else if (notify_value <= ACPI_MAX_SYS_NOTIFY) {		return ("Reserved");	} else {		/* Greater or equal to 0x80 */		return ("**Device Specific**");	}}#endif/******************************************************************************* * * FUNCTION:    acpi_ut_valid_object_type * * PARAMETERS:  Type            - Object type to be validated * * RETURN:      TRUE if valid object type, FALSE otherwise * * DESCRIPTION: Validate an object type * ******************************************************************************/u8 acpi_ut_valid_object_type(acpi_object_type type){	if (type > ACPI_TYPE_LOCAL_MAX) {		/* Note: Assumes all TYPEs are contiguous (external/local) */		return (FALSE);	}	return (TRUE);}/******************************************************************************* * * FUNCTION:    acpi_ut_init_globals * * PARAMETERS:  None * * RETURN:      None * * DESCRIPTION: Init library globals.  All globals that require specific *              initialization should be initialized here! * ******************************************************************************/void acpi_ut_init_globals(void){#if 0	acpi_status status;#endif	u32 i;	ACPI_FUNCTION_TRACE(ut_init_globals);#if 0	/* Create all memory caches */	status = acpi_ut_create_caches();	if (ACPI_FAILURE(status)) {		return;	}#endif	/* Mutex locked flags */	for (i = 0; i < ACPI_NUM_MUTEX; i++) {		acpi_gbl_mutex_info[i].mutex = NULL;		acpi_gbl_mutex_info[i].thread_id = ACPI_MUTEX_NOT_ACQUIRED;		acpi_gbl_mutex_info[i].use_count = 0;	}	for (i = 0; i < ACPI_NUM_OWNERID_MASKS; i++) {		acpi_gbl_owner_id_mask[i] = 0;	}	acpi_gbl_owner_id_mask[ACPI_NUM_OWNERID_MASKS - 1] = 0x80000000;	/* Last ID is never valid */	/* GPE support */	acpi_gbl_gpe_xrupt_list_head = NULL;	acpi_gbl_gpe_fadt_blocks[0] = NULL;	acpi_gbl_gpe_fadt_blocks[1] = NULL;	/* Global handlers */	acpi_gbl_system_notify.handler = NULL;	acpi_gbl_device_notify.handler = NULL;	acpi_gbl_exception_handler = NULL;	acpi_gbl_init_handler = NULL;	/*acpi_gbl_table_handler = NULL;*/	/* Global Lock support */	acpi_gbl_global_lock_semaphore = NULL;	acpi_gbl_global_lock_mutex = NULL;	acpi_gbl_global_lock_acquired = FALSE;	acpi_gbl_global_lock_handle = 0;	/* Miscellaneous variables */	acpi_gbl_cm_single_step = FALSE;	acpi_gbl_db_terminate_threads = FALSE;	acpi_gbl_shutdown = FALSE;	acpi_gbl_ns_lookup_count = 0;	acpi_gbl_ps_find_count = 0;	acpi_gbl_acpi_hardware_present = TRUE;	acpi_gbl_last_owner_id_index = 0;	acpi_gbl_next_owner_id_offset = 0;	acpi_gbl_trace_method_name = 0;	acpi_gbl_trace_dbg_level = 0;	acpi_gbl_trace_dbg_layer = 0;	acpi_gbl_debugger_configuration = DEBUGGER_THREADING;	acpi_gbl_db_output_flags = ACPI_DB_CONSOLE_OUTPUT;	/* Hardware oriented */	acpi_gbl_events_initialized = FALSE;	acpi_gbl_system_awake_and_running = TRUE;	/* Namespace */	acpi_gbl_root_node = NULL;	acpi_gbl_root_node_struct.name.integer = ACPI_ROOT_NAME;	acpi_gbl_root_node_struct.descriptor_type = ACPI_DESC_TYPE_NAMED;	acpi_gbl_root_node_struct.type = ACPI_TYPE_DEVICE;	acpi_gbl_root_node_struct.child = NULL;	acpi_gbl_root_node_struct.peer = NULL;	acpi_gbl_root_node_struct.object = NULL;	acpi_gbl_root_node_struct.flags = ANOBJ_END_OF_PEER_LIST;#ifdef ACPI_DEBUG_OUTPUT	acpi_gbl_lowest_stack_pointer = ACPI_CAST_PTR(acpi_size, ACPI_SIZE_MAX);#endif#ifdef ACPI_DBG_TRACK_ALLOCATIONS	acpi_gbl_display_final_mem_stats = FALSE;#endif	return_VOID;}ACPI_EXPORT_SYMBOL(acpi_dbg_level)    ACPI_EXPORT_SYMBOL(acpi_dbg_layer)

⌨️ 快捷键说明

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