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

📄 acutils.h

📁 xen 3.2.2 源码
💻 H
📖 第 1 页 / 共 2 页
字号:
/****************************************************************************** * * Name: acutils.h -- prototypes for the common (subsystem-wide) procedures * *****************************************************************************//* * Copyright (C) 2000 - 2005, R. Byron Moore * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright *    notice, this list of conditions, and the following disclaimer, *    without modification. * 2. Redistributions in binary form must reproduce at minimum a disclaimer *    substantially similar to the "NO WARRANTY" disclaimer below *    ("Disclaimer") and any redistribution must be conditioned upon *    including a substantially similar Disclaimer requirement for further *    binary redistribution. * 3. Neither the names of the above-listed copyright holders nor the names *    of any contributors may be used to endorse or promote products derived *    from this software without specific prior written permission. * * Alternatively, this software may be distributed under the terms of the * GNU General Public License ("GPL") version 2 as published by the Free * Software Foundation. * * NO WARRANTY * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGES. */#ifndef _ACUTILS_H#define _ACUTILS_Htypedefacpi_status (*acpi_pkg_callback) (	u8                              object_type,	union acpi_operand_object       *source_object,	union acpi_generic_state        *state,	void                            *context);acpi_statusacpi_ut_walk_package_tree (	union acpi_operand_object       *source_object,	void                            *target_object,	acpi_pkg_callback               walk_callback,	void                            *context);struct acpi_pkg_info{	u8                              *free_space;	acpi_size                       length;	u32                             object_space;	u32                             num_packages;};#define REF_INCREMENT       (u16) 0#define REF_DECREMENT       (u16) 1#define REF_FORCE_DELETE    (u16) 2/* acpi_ut_dump_buffer */#define DB_BYTE_DISPLAY     1#define DB_WORD_DISPLAY     2#define DB_DWORD_DISPLAY    4#define DB_QWORD_DISPLAY    8/* Global initialization interfaces */voidacpi_ut_init_globals (	void);voidacpi_ut_terminate (	void);/* * ut_init - miscellaneous initialization and shutdown */acpi_statusacpi_ut_hardware_initialize (	void);voidacpi_ut_subsystem_shutdown (	void);acpi_statusacpi_ut_validate_fadt (	void);/* * ut_global - Global data structures and procedures */#if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER)char *acpi_ut_get_mutex_name (	u32                             mutex_id);#endifchar *acpi_ut_get_type_name (	acpi_object_type                type);char *acpi_ut_get_node_name (	void                            *object);char *acpi_ut_get_descriptor_name (	void                            *object);char *acpi_ut_get_object_type_name (	union acpi_operand_object       *obj_desc);char *acpi_ut_get_region_name (	u8                              space_id);char *acpi_ut_get_event_name (	u32                             event_id);characpi_ut_hex_to_ascii_char (	acpi_integer                    integer,	u32                             position);u8acpi_ut_valid_object_type (	acpi_object_type                type);acpi_owner_idacpi_ut_allocate_owner_id (	u32                             id_type);/* * ut_clib - Local implementations of C library functions */#ifndef ACPI_USE_SYSTEM_CLIBRARYacpi_sizeacpi_ut_strlen (	const char                      *string);char *acpi_ut_strcpy (	char                            *dst_string,	const char                      *src_string);char *acpi_ut_strncpy (	char                            *dst_string,	const char                      *src_string,	acpi_size                       count);intacpi_ut_memcmp (	const char                      *buffer1,	const char                      *buffer2,	acpi_size                       count);intacpi_ut_strncmp (	const char                      *string1,	const char                      *string2,	acpi_size                       count);intacpi_ut_strcmp (	const char                      *string1,	const char                      *string2);char *acpi_ut_strcat (	char                            *dst_string,	const char                      *src_string);char *acpi_ut_strncat (	char                            *dst_string,	const char                      *src_string,	acpi_size                       count);u32acpi_ut_strtoul (	const char                      *string,	char                            **terminator,	u32                             base);char *acpi_ut_strstr (	char                            *string1,	char                            *string2);void *acpi_ut_memcpy (	void                            *dest,	const void                      *src,	acpi_size                       count);void *acpi_ut_memset (	void                            *dest,	acpi_native_uint                value,	acpi_size                       count);intacpi_ut_to_upper (	int                             c);intacpi_ut_to_lower (	int                             c);extern const u8 _acpi_ctype[];#define _ACPI_XA     0x00    /* extra alphabetic - not supported */#define _ACPI_XS     0x40    /* extra space */#define _ACPI_BB     0x00    /* BEL, BS, etc. - not supported */#define _ACPI_CN     0x20    /* CR, FF, HT, NL, VT */#define _ACPI_DI     0x04    /* '0'-'9' */#define _ACPI_LO     0x02    /* 'a'-'z' */#define _ACPI_PU     0x10    /* punctuation */#define _ACPI_SP     0x08    /* space */#define _ACPI_UP     0x01    /* 'A'-'Z' */#define _ACPI_XD     0x80    /* '0'-'9', 'A'-'F', 'a'-'f' */#define ACPI_IS_DIGIT(c)  (_acpi_ctype[(unsigned char)(c)] & (_ACPI_DI))#define ACPI_IS_SPACE(c)  (_acpi_ctype[(unsigned char)(c)] & (_ACPI_SP))#define ACPI_IS_XDIGIT(c) (_acpi_ctype[(unsigned char)(c)] & (_ACPI_XD))#define ACPI_IS_UPPER(c)  (_acpi_ctype[(unsigned char)(c)] & (_ACPI_UP))#define ACPI_IS_LOWER(c)  (_acpi_ctype[(unsigned char)(c)] & (_ACPI_LO))#define ACPI_IS_PRINT(c)  (_acpi_ctype[(unsigned char)(c)] & (_ACPI_LO | _ACPI_UP | _ACPI_DI | _ACPI_SP | _ACPI_PU))#define ACPI_IS_ALPHA(c)  (_acpi_ctype[(unsigned char)(c)] & (_ACPI_LO | _ACPI_UP))#define ACPI_IS_ASCII(c)  ((c) < 0x80)#endif /* ACPI_USE_SYSTEM_CLIBRARY *//* * ut_copy - Object construction and conversion interfaces */acpi_statusacpi_ut_build_simple_object(	union acpi_operand_object       *obj,	union acpi_object               *user_obj,	u8                              *data_space,	u32                             *buffer_space_used);acpi_statusacpi_ut_build_package_object (	union acpi_operand_object       *obj,	u8                              *buffer,	u32                             *space_used);acpi_statusacpi_ut_copy_ielement_to_eelement (	u8                              object_type,	union acpi_operand_object       *source_object,	union acpi_generic_state        *state,	void                            *context);acpi_statusacpi_ut_copy_ielement_to_ielement (	u8                              object_type,	union acpi_operand_object       *source_object,	union acpi_generic_state        *state,	void                            *context);acpi_statusacpi_ut_copy_iobject_to_eobject (	union acpi_operand_object       *obj,	struct acpi_buffer              *ret_buffer);acpi_statusacpi_ut_copy_esimple_to_isimple(	union acpi_object               *user_obj,	union acpi_operand_object       **return_obj);acpi_statusacpi_ut_copy_eobject_to_iobject (	union acpi_object               *obj,	union acpi_operand_object       **internal_obj);acpi_statusacpi_ut_copy_isimple_to_isimple (	union acpi_operand_object       *source_obj,	union acpi_operand_object       *dest_obj);acpi_statusacpi_ut_copy_ipackage_to_ipackage (	union acpi_operand_object       *source_obj,	union acpi_operand_object       *dest_obj,	struct acpi_walk_state          *walk_state);acpi_statusacpi_ut_copy_simple_object (	union acpi_operand_object       *source_desc,	union acpi_operand_object       *dest_desc);acpi_statusacpi_ut_copy_iobject_to_iobject (	union acpi_operand_object       *source_desc,	union acpi_operand_object       **dest_desc,	struct acpi_walk_state          *walk_state);/* * ut_create - Object creation */acpi_statusacpi_ut_update_object_reference (	union acpi_operand_object       *object,	u16                             action);/* * ut_debug - Debug interfaces */voidacpi_ut_init_stack_ptr_trace (	void);voidacpi_ut_track_stack_ptr (	void);voidacpi_ut_trace (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info);voidacpi_ut_trace_ptr (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	void                            *pointer);voidacpi_ut_trace_u32 (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	u32                             integer);voidacpi_ut_trace_str (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	char                            *string);voidacpi_ut_exit (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info);voidacpi_ut_status_exit (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	acpi_status                     status);voidacpi_ut_value_exit (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	acpi_integer                    value);voidacpi_ut_ptr_exit (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	u8                              *ptr);voidacpi_ut_report_info (	char                            *module_name,	u32                             line_number,	u32                             component_id);voidacpi_ut_report_error (	char                            *module_name,	u32                             line_number,	u32                             component_id);voidacpi_ut_report_warning (	char                            *module_name,	u32                             line_number,	u32                             component_id);voidacpi_ut_dump_buffer (	u8                              *buffer,	u32                             count,	u32                             display,	u32                             component_id);void ACPI_INTERNAL_VAR_XFACEacpi_ut_debug_print (	u32                             requested_debug_level,	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	char                            *format,	...) ACPI_PRINTF_LIKE_FUNC;void ACPI_INTERNAL_VAR_XFACEacpi_ut_debug_print_raw (	u32                             requested_debug_level,	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	char                            *format,

⌨️ 快捷键说明

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