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

📄 actypes.h

📁 xen虚拟机源代码安装包
💻 H
📖 第 1 页 / 共 3 页
字号:
 * Sleep type invalid value */#define ACPI_SLEEP_TYPE_MAX             0x7#define ACPI_SLEEP_TYPE_INVALID         0xFF/* * Standard notify values */#define ACPI_NOTIFY_BUS_CHECK           (u8) 0#define ACPI_NOTIFY_DEVICE_CHECK        (u8) 1#define ACPI_NOTIFY_DEVICE_WAKE         (u8) 2#define ACPI_NOTIFY_EJECT_REQUEST       (u8) 3#define ACPI_NOTIFY_DEVICE_CHECK_LIGHT  (u8) 4#define ACPI_NOTIFY_FREQUENCY_MISMATCH  (u8) 5#define ACPI_NOTIFY_BUS_MODE_MISMATCH   (u8) 6#define ACPI_NOTIFY_POWER_FAULT         (u8) 7/* * Types associated with ACPI names and objects.  The first group of * values (up to ACPI_TYPE_EXTERNAL_MAX) correspond to the definition * of the ACPI object_type() operator (See the ACPI Spec). Therefore, * only add to the first group if the spec changes. * * NOTE: Types must be kept in sync with the global acpi_ns_properties * and acpi_ns_type_names arrays. */typedef u32 acpi_object_type;#define ACPI_TYPE_ANY                   0x00#define ACPI_TYPE_INTEGER               0x01	/* Byte/Word/Dword/Zero/One/Ones */#define ACPI_TYPE_STRING                0x02#define ACPI_TYPE_BUFFER                0x03#define ACPI_TYPE_PACKAGE               0x04	/* byte_const, multiple data_term/Constant/super_name */#define ACPI_TYPE_FIELD_UNIT            0x05#define ACPI_TYPE_DEVICE                0x06	/* Name, multiple Node */#define ACPI_TYPE_EVENT                 0x07#define ACPI_TYPE_METHOD                0x08	/* Name, byte_const, multiple Code */#define ACPI_TYPE_MUTEX                 0x09#define ACPI_TYPE_REGION                0x0A#define ACPI_TYPE_POWER                 0x0B	/* Name,byte_const,word_const,multi Node */#define ACPI_TYPE_PROCESSOR             0x0C	/* Name,byte_const,Dword_const,byte_const,multi nm_o */#define ACPI_TYPE_THERMAL               0x0D	/* Name, multiple Node */#define ACPI_TYPE_BUFFER_FIELD          0x0E#define ACPI_TYPE_DDB_HANDLE            0x0F#define ACPI_TYPE_DEBUG_OBJECT          0x10#define ACPI_TYPE_EXTERNAL_MAX          0x10/* * These are object types that do not map directly to the ACPI * object_type() operator. They are used for various internal purposes only. * If new predefined ACPI_TYPEs are added (via the ACPI specification), these * internal types must move upwards. (There is code that depends on these * values being contiguous with the external types above.) */#define ACPI_TYPE_LOCAL_REGION_FIELD    0x11#define ACPI_TYPE_LOCAL_BANK_FIELD      0x12#define ACPI_TYPE_LOCAL_INDEX_FIELD     0x13#define ACPI_TYPE_LOCAL_REFERENCE       0x14	/* Arg#, Local#, Name, Debug, ref_of, Index */#define ACPI_TYPE_LOCAL_ALIAS           0x15#define ACPI_TYPE_LOCAL_METHOD_ALIAS    0x16#define ACPI_TYPE_LOCAL_NOTIFY          0x17#define ACPI_TYPE_LOCAL_ADDRESS_HANDLER 0x18#define ACPI_TYPE_LOCAL_RESOURCE        0x19#define ACPI_TYPE_LOCAL_RESOURCE_FIELD  0x1A#define ACPI_TYPE_LOCAL_SCOPE           0x1B	/* 1 Name, multiple object_list Nodes */#define ACPI_TYPE_NS_NODE_MAX           0x1B	/* Last typecode used within a NS Node *//* * These are special object types that never appear in * a Namespace node, only in an union acpi_operand_object */#define ACPI_TYPE_LOCAL_EXTRA           0x1C#define ACPI_TYPE_LOCAL_DATA            0x1D#define ACPI_TYPE_LOCAL_MAX             0x1D/* All types above here are invalid */#define ACPI_TYPE_INVALID               0x1E#define ACPI_TYPE_NOT_FOUND             0xFF/* * All I/O */#define ACPI_READ                       0#define ACPI_WRITE                      1#define ACPI_IO_MASK                    1/* * Event Types: Fixed & General Purpose */typedef u32 acpi_event_type;/* * Fixed events */#define ACPI_EVENT_PMTIMER              0#define ACPI_EVENT_GLOBAL               1#define ACPI_EVENT_POWER_BUTTON         2#define ACPI_EVENT_SLEEP_BUTTON         3#define ACPI_EVENT_RTC                  4#define ACPI_EVENT_MAX                  4#define ACPI_NUM_FIXED_EVENTS           ACPI_EVENT_MAX + 1/* * Event Status - Per event * ------------- * The encoding of acpi_event_status is illustrated below. * Note that a set bit (1) indicates the property is TRUE * (e.g. if bit 0 is set then the event is enabled). * +-------------+-+-+-+ * |   Bits 31:3 |2|1|0| * +-------------+-+-+-+ *          |     | | | *          |     | | +- Enabled? *          |     | +--- Enabled for wake? *          |     +----- Set? *          +----------- <Reserved> */typedef u32 acpi_event_status;#define ACPI_EVENT_FLAG_DISABLED        (acpi_event_status) 0x00#define ACPI_EVENT_FLAG_ENABLED         (acpi_event_status) 0x01#define ACPI_EVENT_FLAG_WAKE_ENABLED    (acpi_event_status) 0x02#define ACPI_EVENT_FLAG_SET             (acpi_event_status) 0x04/* * General Purpose Events (GPE) */#define ACPI_GPE_INVALID                0xFF#define ACPI_GPE_MAX                    0xFF#define ACPI_NUM_GPE                    256#define ACPI_GPE_ENABLE                 0#define ACPI_GPE_DISABLE                1/* * GPE info flags - Per GPE * +-+-+-+---+---+-+ * |7|6|5|4:3|2:1|0| * +-+-+-+---+---+-+ *  | | |  |   |  | *  | | |  |   |  +--- Interrupt type: Edge or Level Triggered *  | | |  |   +--- Type: Wake-only, Runtime-only, or wake/runtime *  | | |  +--- Type of dispatch -- to method, handler, or none *  | | +--- Enabled for runtime? *  | +--- Enabled for wake? *  +--- Unused */#define ACPI_GPE_XRUPT_TYPE_MASK        (u8) 0x01#define ACPI_GPE_LEVEL_TRIGGERED        (u8) 0x01#define ACPI_GPE_EDGE_TRIGGERED         (u8) 0x00#define ACPI_GPE_TYPE_MASK              (u8) 0x06#define ACPI_GPE_TYPE_WAKE_RUN          (u8) 0x06#define ACPI_GPE_TYPE_WAKE              (u8) 0x02#define ACPI_GPE_TYPE_RUNTIME           (u8) 0x04	/* Default */#define ACPI_GPE_DISPATCH_MASK          (u8) 0x18#define ACPI_GPE_DISPATCH_HANDLER       (u8) 0x08#define ACPI_GPE_DISPATCH_METHOD        (u8) 0x10#define ACPI_GPE_DISPATCH_NOT_USED      (u8) 0x00	/* Default */#define ACPI_GPE_RUN_ENABLE_MASK        (u8) 0x20#define ACPI_GPE_RUN_ENABLED            (u8) 0x20#define ACPI_GPE_RUN_DISABLED           (u8) 0x00	/* Default */#define ACPI_GPE_WAKE_ENABLE_MASK       (u8) 0x40#define ACPI_GPE_WAKE_ENABLED           (u8) 0x40#define ACPI_GPE_WAKE_DISABLED          (u8) 0x00	/* Default */#define ACPI_GPE_ENABLE_MASK            (u8) 0x60	/* Both run/wake *//* * Flags for GPE and Lock interfaces */#define ACPI_EVENT_WAKE_ENABLE          0x2	/* acpi_gpe_enable */#define ACPI_EVENT_WAKE_DISABLE         0x2	/* acpi_gpe_disable */#define ACPI_NOT_ISR                    0x1#define ACPI_ISR                        0x0/* Notify types */#define ACPI_SYSTEM_NOTIFY              0x1#define ACPI_DEVICE_NOTIFY              0x2#define ACPI_ALL_NOTIFY                 0x3#define ACPI_MAX_NOTIFY_HANDLER_TYPE    0x3#define ACPI_MAX_SYS_NOTIFY             0x7f/* Address Space (Operation Region) Types */typedef u8 acpi_adr_space_type;#define ACPI_ADR_SPACE_SYSTEM_MEMORY    (acpi_adr_space_type) 0#define ACPI_ADR_SPACE_SYSTEM_IO        (acpi_adr_space_type) 1#define ACPI_ADR_SPACE_PCI_CONFIG       (acpi_adr_space_type) 2#define ACPI_ADR_SPACE_EC               (acpi_adr_space_type) 3#define ACPI_ADR_SPACE_SMBUS            (acpi_adr_space_type) 4#define ACPI_ADR_SPACE_CMOS             (acpi_adr_space_type) 5#define ACPI_ADR_SPACE_PCI_BAR_TARGET   (acpi_adr_space_type) 6#define ACPI_ADR_SPACE_DATA_TABLE       (acpi_adr_space_type) 7#define ACPI_ADR_SPACE_FIXED_HARDWARE   (acpi_adr_space_type) 127/* * bit_register IDs * These are bitfields defined within the full ACPI registers */#define ACPI_BITREG_TIMER_STATUS                0x00#define ACPI_BITREG_BUS_MASTER_STATUS           0x01#define ACPI_BITREG_GLOBAL_LOCK_STATUS          0x02#define ACPI_BITREG_POWER_BUTTON_STATUS         0x03#define ACPI_BITREG_SLEEP_BUTTON_STATUS         0x04#define ACPI_BITREG_RT_CLOCK_STATUS             0x05#define ACPI_BITREG_WAKE_STATUS                 0x06#define ACPI_BITREG_PCIEXP_WAKE_STATUS          0x07#define ACPI_BITREG_TIMER_ENABLE                0x08#define ACPI_BITREG_GLOBAL_LOCK_ENABLE          0x09#define ACPI_BITREG_POWER_BUTTON_ENABLE         0x0A#define ACPI_BITREG_SLEEP_BUTTON_ENABLE         0x0B#define ACPI_BITREG_RT_CLOCK_ENABLE             0x0C#define ACPI_BITREG_WAKE_ENABLE                 0x0D#define ACPI_BITREG_PCIEXP_WAKE_DISABLE         0x0E#define ACPI_BITREG_SCI_ENABLE                  0x0F#define ACPI_BITREG_BUS_MASTER_RLD              0x10#define ACPI_BITREG_GLOBAL_LOCK_RELEASE         0x11#define ACPI_BITREG_SLEEP_TYPE_A                0x12#define ACPI_BITREG_SLEEP_TYPE_B                0x13#define ACPI_BITREG_SLEEP_ENABLE                0x14#define ACPI_BITREG_ARB_DISABLE                 0x15#define ACPI_BITREG_MAX                         0x15#define ACPI_NUM_BITREG                         ACPI_BITREG_MAX + 1/* * External ACPI object definition */union acpi_object {	acpi_object_type type;	/* See definition of acpi_ns_type for values */	struct {		acpi_object_type type;		acpi_integer value;	/* The actual number */	} integer;	struct {		acpi_object_type type;		u32 length;	/* # of bytes in string, excluding trailing null */		char *pointer;	/* points to the string value */	} string;	struct {		acpi_object_type type;		u32 length;	/* # of bytes in buffer */		u8 *pointer;	/* points to the buffer */	} buffer;	struct {		acpi_object_type type;		u32 fill1;		acpi_handle handle;	/* object reference */	} reference;	struct {		acpi_object_type type;		u32 count;	/* # of elements in package */		union acpi_object *elements;	/* Pointer to an array of ACPI_OBJECTs */	} package;	struct {		acpi_object_type type;		u32 proc_id;		acpi_io_address pblk_address;		u32 pblk_length;	} processor;	struct {		acpi_object_type type;		u32 system_level;		u32 resource_order;	} power_resource;};/* * List of objects, used as a parameter list for control method evaluation */struct acpi_object_list {	u32 count;	union acpi_object *pointer;};/* * Miscellaneous common Data Structures used by the interfaces */#define ACPI_NO_BUFFER              0#define ACPI_ALLOCATE_BUFFER        (acpi_size) (-1)#define ACPI_ALLOCATE_LOCAL_BUFFER  (acpi_size) (-2)struct acpi_buffer {	acpi_size length;	/* Length in bytes of the buffer */	void *pointer;		/* pointer to buffer */};/* * name_type for acpi_get_name */#define ACPI_FULL_PATHNAME              0#define ACPI_SINGLE_NAME                1#define ACPI_NAME_TYPE_MAX              1/* * Structure and flags for acpi_get_system_info */#define ACPI_SYS_MODE_UNKNOWN           0x0000#define ACPI_SYS_MODE_ACPI              0x0001#define ACPI_SYS_MODE_LEGACY            0x0002#define ACPI_SYS_MODES_MASK             0x0003/* * System info returned by acpi_get_system_info() */struct acpi_system_info {	u32 acpi_ca_version;	u32 flags;	u32 timer_resolution;	u32 reserved1;	u32 reserved2;	u32 debug_level;	u32 debug_layer;};/* * Types specific to the OS service interfaces */typedef u32(ACPI_SYSTEM_XFACE * acpi_osd_handler) (void *context);typedef void (ACPI_SYSTEM_XFACE * acpi_osd_exec_callback) (void *context);/* * Various handlers and callback procedures */typedef u32(*acpi_event_handler) (void *context);typedefvoid (*acpi_notify_handler) (acpi_handle device, u32 value, void *context);typedefvoid (*acpi_object_handler) (acpi_handle object, u32 function, void *data);typedef acpi_status(*acpi_init_handler) (acpi_handle object, u32 function);#define ACPI_INIT_DEVICE_INI        1typedefacpi_status(*acpi_exception_handler) (acpi_status aml_status,				      acpi_name name,				      u16 opcode,				      u32 aml_offset, void *context);/* Address Spaces (For Operation Regions) */typedefacpi_status(*acpi_adr_space_handler) (u32 function,				      acpi_physical_address address,				      u32 bit_width,				      acpi_integer * value,				      void *handler_context,				      void *region_context);#define ACPI_DEFAULT_HANDLER            NULLtypedefacpi_status(*acpi_adr_space_setup) (acpi_handle region_handle,				    u32 function,				    void *handler_context,				    void **region_context);#define ACPI_REGION_ACTIVATE    0#define ACPI_REGION_DEACTIVATE  1typedefacpi_status(*acpi_walk_callback) (acpi_handle obj_handle,				  u32 nesting_level,				  void *context, void **return_value);/* Interrupt handler return values */#define ACPI_INTERRUPT_NOT_HANDLED      0x00#define ACPI_INTERRUPT_HANDLED          0x01/* Common string version of device HIDs and UIDs */struct acpica_device_id {	char value[ACPI_DEVICE_ID_LENGTH];};/* Common string version of device CIDs */struct acpi_compatible_id {	char value[ACPI_MAX_CID_LENGTH];};struct acpi_compatible_id_list {	u32 count;	u32 size;	struct acpi_compatible_id id[1];};

⌨️ 快捷键说明

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