aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/acpi/acconfig.h2
-rw-r--r--include/acpi/acdisasm.h8
-rw-r--r--include/acpi/acevents.h2
-rw-r--r--include/acpi/acglobal.h8
-rw-r--r--include/acpi/aclocal.h14
-rw-r--r--include/acpi/acmacros.h10
-rw-r--r--include/acpi/acnamesp.h1
-rw-r--r--include/acpi/acpiosxf.h19
-rw-r--r--include/acpi/actbl.h6
-rw-r--r--include/acpi/actypes.h6
-rw-r--r--include/acpi/amlcode.h6
-rw-r--r--include/acpi/amlresrc.h19
12 files changed, 54 insertions, 47 deletions
diff --git a/include/acpi/acconfig.h b/include/acpi/acconfig.h
index 11e72e6cdc01..0177ed3dc807 100644
--- a/include/acpi/acconfig.h
+++ b/include/acpi/acconfig.h
@@ -63,7 +63,7 @@
63 63
64/* Current ACPICA subsystem version in YYYYMMDD format */ 64/* Current ACPICA subsystem version in YYYYMMDD format */
65 65
66#define ACPI_CA_VERSION 0x20060421 66#define ACPI_CA_VERSION 0x20060512
67 67
68/* 68/*
69 * OS name, used for the _OS object. The _OS object is essentially obsolete, 69 * OS name, used for the _OS object. The _OS object is essentially obsolete,
diff --git a/include/acpi/acdisasm.h b/include/acpi/acdisasm.h
index 6f2556582f05..9a7d6921f534 100644
--- a/include/acpi/acdisasm.h
+++ b/include/acpi/acdisasm.h
@@ -54,7 +54,11 @@
54 54
55struct acpi_external_list { 55struct acpi_external_list {
56 char *path; 56 char *path;
57 char *internal_path;
57 struct acpi_external_list *next; 58 struct acpi_external_list *next;
59 u32 value;
60 u16 length;
61 u8 type;
58}; 62};
59 63
60extern struct acpi_external_list *acpi_gbl_external_list; 64extern struct acpi_external_list *acpi_gbl_external_list;
@@ -108,6 +112,8 @@ struct acpi_dmtable_data {
108 112
109struct acpi_op_walk_info { 113struct acpi_op_walk_info {
110 u32 level; 114 u32 level;
115 u32 last_level;
116 u32 count;
111 u32 bit_offset; 117 u32 bit_offset;
112 u32 flags; 118 u32 flags;
113 struct acpi_walk_state *walk_state; 119 struct acpi_walk_state *walk_state;
@@ -390,7 +396,7 @@ acpi_dm_vendor_small_descriptor(union aml_resource *resource,
390/* 396/*
391 * dmutils 397 * dmutils
392 */ 398 */
393void acpi_dm_add_to_external_list(char *path); 399void acpi_dm_add_to_external_list(char *path, u8 type, u32 value);
394 400
395/* 401/*
396 * dmrestag 402 * dmrestag
diff --git a/include/acpi/acevents.h b/include/acpi/acevents.h
index 272bd0480ec7..234142828e1a 100644
--- a/include/acpi/acevents.h
+++ b/include/acpi/acevents.h
@@ -138,7 +138,7 @@ acpi_status
138acpi_ev_address_space_dispatch(union acpi_operand_object *region_obj, 138acpi_ev_address_space_dispatch(union acpi_operand_object *region_obj,
139 u32 function, 139 u32 function,
140 acpi_physical_address address, 140 acpi_physical_address address,
141 u32 bit_width, void *value); 141 u32 bit_width, acpi_integer * value);
142 142
143acpi_status 143acpi_status
144acpi_ev_attach_region(union acpi_operand_object *handler_obj, 144acpi_ev_attach_region(union acpi_operand_object *handler_obj,
diff --git a/include/acpi/acglobal.h b/include/acpi/acglobal.h
index 5f2daf402ee1..9297f293b2c0 100644
--- a/include/acpi/acglobal.h
+++ b/include/acpi/acglobal.h
@@ -292,14 +292,6 @@ ACPI_EXTERN u8 acpi_gbl_cm_single_step;
292 292
293/***************************************************************************** 293/*****************************************************************************
294 * 294 *
295 * Parser globals
296 *
297 ****************************************************************************/
298
299ACPI_EXTERN union acpi_parse_object *acpi_gbl_parsed_namespace_root;
300
301/*****************************************************************************
302 *
303 * Hardware globals 295 * Hardware globals
304 * 296 *
305 ****************************************************************************/ 297 ****************************************************************************/
diff --git a/include/acpi/aclocal.h b/include/acpi/aclocal.h
index 06a9bd0a9ce9..98c697e3c486 100644
--- a/include/acpi/aclocal.h
+++ b/include/acpi/aclocal.h
@@ -207,10 +207,11 @@ struct acpi_namespace_node {
207#define ANOBJ_METHOD_LOCAL 0x08 /* Node is a method local */ 207#define ANOBJ_METHOD_LOCAL 0x08 /* Node is a method local */
208#define ANOBJ_SUBTREE_HAS_INI 0x10 /* Used to optimize device initialization */ 208#define ANOBJ_SUBTREE_HAS_INI 0x10 /* Used to optimize device initialization */
209 209
210#define ANOBJ_METHOD_NO_RETVal 0x10 /* i_aSL only: Method has no return value */ 210#define ANOBJ_IS_EXTERNAL 0x08 /* i_aSL only: This object created via External() */
211#define ANOBJ_METHOD_SOME_NO_RETVal 0x20 /* i_aSL only: Method has at least one return value */ 211#define ANOBJ_METHOD_NO_RETVAL 0x10 /* i_aSL only: Method has no return value */
212#define ANOBJ_IS_BIT_OFFSet 0x40 /* i_aSL only: Reference is a bit offset */ 212#define ANOBJ_METHOD_SOME_NO_RETVAL 0x20 /* i_aSL only: Method has at least one return value */
213#define ANOBJ_IS_REFERENCed 0x80 /* i_aSL only: Object was referenced */ 213#define ANOBJ_IS_BIT_OFFSET 0x40 /* i_aSL only: Reference is a bit offset */
214#define ANOBJ_IS_REFERENCED 0x80 /* i_aSL only: Object was referenced */
214 215
215/* 216/*
216 * ACPI Table Descriptor. One per ACPI table 217 * ACPI Table Descriptor. One per ACPI table
@@ -595,6 +596,9 @@ union acpi_parse_value {
595#define ACPI_DASM_UNICODE 0x03 596#define ACPI_DASM_UNICODE 0x03
596#define ACPI_DASM_EISAID 0x04 597#define ACPI_DASM_EISAID 0x04
597#define ACPI_DASM_MATCHOP 0x05 598#define ACPI_DASM_MATCHOP 0x05
599#define ACPI_DASM_LNOT_PREFIX 0x06
600#define ACPI_DASM_LNOT_SUFFIX 0x07
601#define ACPI_DASM_IGNORE 0x08
598 602
599/* 603/*
600 * Generic operation (for example: If, While, Store) 604 * Generic operation (for example: If, While, Store)
@@ -613,7 +617,7 @@ struct acpi_parse_obj_named {
613 u32 name; /* 4-byte name or zero if no name */ 617 u32 name; /* 4-byte name or zero if no name */
614}; 618};
615 619
616/* this version is used by the i_aSL compiler only */ 620/* This version is used by the i_aSL compiler only */
617 621
618#define ACPI_MAX_PARSEOP_NAME 20 622#define ACPI_MAX_PARSEOP_NAME 20
619 623
diff --git a/include/acpi/acmacros.h b/include/acpi/acmacros.h
index b7547aba91b9..38f9aa4bef00 100644
--- a/include/acpi/acmacros.h
+++ b/include/acpi/acmacros.h
@@ -103,7 +103,7 @@
103 * printf() format helpers 103 * printf() format helpers
104 */ 104 */
105 105
106/* Split 64-bit integer into two 32-bit values. Use with %8.8X%8.8X */ 106/* Split 64-bit integer into two 32-bit values. Use with %8.8_x%8.8_x */
107 107
108#define ACPI_FORMAT_UINT64(i) ACPI_HIDWORD(i),ACPI_LODWORD(i) 108#define ACPI_FORMAT_UINT64(i) ACPI_HIDWORD(i),ACPI_LODWORD(i)
109 109
@@ -359,12 +359,12 @@
359 359
360/* Note: sizeof(acpi_native_uint) evaluates to either 2, 4, or 8 */ 360/* Note: sizeof(acpi_native_uint) evaluates to either 2, 4, or 8 */
361 361
362#define ACPI_ROUND_DOWN_to_32_bIT(a) ACPI_ROUND_DOWN(a,4) 362#define ACPI_ROUND_DOWN_TO_32BIT(a) ACPI_ROUND_DOWN(a,4)
363#define ACPI_ROUND_DOWN_to_64_bIT(a) ACPI_ROUND_DOWN(a,8) 363#define ACPI_ROUND_DOWN_TO_64BIT(a) ACPI_ROUND_DOWN(a,8)
364#define ACPI_ROUND_DOWN_TO_NATIVE_WORD(a) ACPI_ROUND_DOWN(a,sizeof(acpi_native_uint)) 364#define ACPI_ROUND_DOWN_TO_NATIVE_WORD(a) ACPI_ROUND_DOWN(a,sizeof(acpi_native_uint))
365 365
366#define ACPI_ROUND_UP_to_32_bIT(a) ACPI_ROUND_UP(a,4) 366#define ACPI_ROUND_UP_TO_32BIT(a) ACPI_ROUND_UP(a,4)
367#define ACPI_ROUND_UP_to_64_bIT(a) ACPI_ROUND_UP(a,8) 367#define ACPI_ROUND_UP_TO_64BIT(a) ACPI_ROUND_UP(a,8)
368#define ACPI_ROUND_UP_TO_NATIVE_WORD(a) ACPI_ROUND_UP(a,sizeof(acpi_native_uint)) 368#define ACPI_ROUND_UP_TO_NATIVE_WORD(a) ACPI_ROUND_UP(a,sizeof(acpi_native_uint))
369 369
370#define ACPI_ROUND_BITS_UP_TO_BYTES(a) ACPI_DIV_8((a) + 7) 370#define ACPI_ROUND_BITS_UP_TO_BYTES(a) ACPI_DIV_8((a) + 7)
diff --git a/include/acpi/acnamesp.h b/include/acpi/acnamesp.h
index 132d64af24fe..2ef8540c0fba 100644
--- a/include/acpi/acnamesp.h
+++ b/include/acpi/acnamesp.h
@@ -64,6 +64,7 @@
64#define ACPI_NS_NO_PEER_SEARCH 0x04 64#define ACPI_NS_NO_PEER_SEARCH 0x04
65#define ACPI_NS_ERROR_IF_FOUND 0x08 65#define ACPI_NS_ERROR_IF_FOUND 0x08
66#define ACPI_NS_PREFIX_IS_SCOPE 0x10 66#define ACPI_NS_PREFIX_IS_SCOPE 0x10
67#define ACPI_NS_EXTERNAL 0x20
67 68
68#define ACPI_NS_WALK_UNLOCK TRUE 69#define ACPI_NS_WALK_UNLOCK TRUE
69#define ACPI_NS_WALK_NO_UNLOCK FALSE 70#define ACPI_NS_WALK_NO_UNLOCK FALSE
diff --git a/include/acpi/acpiosxf.h b/include/acpi/acpiosxf.h
index a5264fac696e..982e7ea177e3 100644
--- a/include/acpi/acpiosxf.h
+++ b/include/acpi/acpiosxf.h
@@ -50,12 +50,17 @@
50#include "platform/acenv.h" 50#include "platform/acenv.h"
51#include "actypes.h" 51#include "actypes.h"
52 52
53/* Priorities for acpi_os_queue_for_execution */ 53/* Types for acpi_os_execute */
54 54
55#define OSD_PRIORITY_GPE 1 55typedef enum {
56#define OSD_PRIORITY_HIGH 2 56 OSL_GLOBAL_LOCK_HANDLER,
57#define OSD_PRIORITY_MED 3 57 OSL_NOTIFY_HANDLER,
58#define OSD_PRIORITY_LO 4 58 OSL_GPE_HANDLER,
59 OSL_DEBUGGER_THREAD,
60 OSL_EC_POLL_HANDLER,
61 OSL_EC_BURST_HANDLER,
62
63} acpi_execute_type;
59 64
60#define ACPI_NO_UNIT_LIMIT ((u32) -1) 65#define ACPI_NO_UNIT_LIMIT ((u32) -1)
61#define ACPI_MUTEX_SEM 1 66#define ACPI_MUTEX_SEM 1
@@ -164,8 +169,8 @@ acpi_os_remove_interrupt_handler(u32 gsi, acpi_osd_handler service_routine);
164acpi_thread_id acpi_os_get_thread_id(void); 169acpi_thread_id acpi_os_get_thread_id(void);
165 170
166acpi_status 171acpi_status
167acpi_os_queue_for_execution(u32 priority, 172acpi_os_execute(acpi_execute_type type,
168 acpi_osd_exec_callback function, void *context); 173 acpi_osd_exec_callback function, void *context);
169 174
170void acpi_os_wait_events_complete(void *context); 175void acpi_os_wait_events_complete(void *context);
171 176
diff --git a/include/acpi/actbl.h b/include/acpi/actbl.h
index e1a40135f707..b125ceed9cb7 100644
--- a/include/acpi/actbl.h
+++ b/include/acpi/actbl.h
@@ -206,8 +206,8 @@ struct acpi_common_facs {
206 u32 V1_pm_tmr_blk; /* Port address of Power Mgt Timer Ctrl Reg Blk */ \ 206 u32 V1_pm_tmr_blk; /* Port address of Power Mgt Timer Ctrl Reg Blk */ \
207 u32 V1_gpe0_blk; /* Port addr of General Purpose acpi_event 0 Reg Blk */ \ 207 u32 V1_gpe0_blk; /* Port addr of General Purpose acpi_event 0 Reg Blk */ \
208 u32 V1_gpe1_blk; /* Port addr of General Purpose acpi_event 1 Reg Blk */ \ 208 u32 V1_gpe1_blk; /* Port addr of General Purpose acpi_event 1 Reg Blk */ \
209 u8 pm1_evt_len; /* Byte length of ports at pm1_x_evt_blk */ \ 209 u8 pm1_evt_len; /* Byte Length of ports at pm1_x_evt_blk */ \
210 u8 pm1_cnt_len; /* Byte length of ports at pm1_x_cnt_blk */ \ 210 u8 pm1_cnt_len; /* Byte Length of ports at pm1_x_cnt_blk */ \
211 u8 pm2_cnt_len; /* Byte Length of ports at pm2_cnt_blk */ \ 211 u8 pm2_cnt_len; /* Byte Length of ports at pm2_cnt_blk */ \
212 u8 pm_tm_len; /* Byte Length of ports at pm_tm_blk */ \ 212 u8 pm_tm_len; /* Byte Length of ports at pm_tm_blk */ \
213 u8 gpe0_blk_len; /* Byte Length of ports at gpe0_blk */ \ 213 u8 gpe0_blk_len; /* Byte Length of ports at gpe0_blk */ \
@@ -252,7 +252,7 @@ struct fadt_descriptor {
252 u8 S4rtc_sts_valid:1; /* 16: Contents of RTC_STS valid after S4 wake (ACPI 3.0) */ 252 u8 S4rtc_sts_valid:1; /* 16: Contents of RTC_STS valid after S4 wake (ACPI 3.0) */
253 u8 remote_power_on_capable:1; /* 17: System is compatible with remote power on (ACPI 3.0) */ 253 u8 remote_power_on_capable:1; /* 17: System is compatible with remote power on (ACPI 3.0) */
254 u8 force_apic_cluster_model:1; /* 18: All local APICs must use cluster model (ACPI 3.0) */ 254 u8 force_apic_cluster_model:1; /* 18: All local APICs must use cluster model (ACPI 3.0) */
255 u8 force_apic_physical_destination_mode:1; /* 19: all local x_aPICs must use physical dest mode (ACPI 3.0) */ 255 u8 force_apic_physical_destination_mode:1; /* 19: All local x_aPICs must use physical dest mode (ACPI 3.0) */
256 u8:4; /* 20-23: Reserved, must be zero */ 256 u8:4; /* 20-23: Reserved, must be zero */
257 u8 reserved3; /* 24-31: Reserved, must be zero */ 257 u8 reserved3; /* 24-31: Reserved, must be zero */
258 258
diff --git a/include/acpi/actypes.h b/include/acpi/actypes.h
index 6d4e743a753b..77cf1236b05a 100644
--- a/include/acpi/actypes.h
+++ b/include/acpi/actypes.h
@@ -971,7 +971,7 @@ struct acpi_mem_space_context {
971 * Definitions for Resource Attributes 971 * Definitions for Resource Attributes
972 */ 972 */
973typedef u16 acpi_rs_length; /* Resource Length field is fixed at 16 bits */ 973typedef u16 acpi_rs_length; /* Resource Length field is fixed at 16 bits */
974typedef u32 acpi_rsdesc_size; /* Max Resource Descriptor size is (length+3) = (64_k-1)+3 */ 974typedef u32 acpi_rsdesc_size; /* Max Resource Descriptor size is (Length+3) = (64_k-1)+3 */
975 975
976/* 976/*
977 * Memory Attributes 977 * Memory Attributes
@@ -986,8 +986,8 @@ typedef u32 acpi_rsdesc_size; /* Max Resource Descriptor size is (length+3) = (6
986 986
987/* 987/*
988 * IO Attributes 988 * IO Attributes
989 * The ISA Io ranges are: n000-n0_ffh, n400-n4_ffh, n800-n8_ffh, n_c00-n_cFFh. 989 * The ISA IO ranges are: n000-n0_fFh, n400-n4_fFh, n800-n8_fFh, n_c00-n_cFFh.
990 * The non-ISA Io ranges are: n100-n3_ffh, n500-n7_ffh, n900-n_bFfh, n_cd0-n_fFFh. 990 * The non-ISA IO ranges are: n100-n3_fFh, n500-n7_fFh, n900-n_bFFh, n_cd0-n_fFFh.
991 */ 991 */
992#define ACPI_NON_ISA_ONLY_RANGES (u8) 0x01 992#define ACPI_NON_ISA_ONLY_RANGES (u8) 0x01
993#define ACPI_ISA_ONLY_RANGES (u8) 0x02 993#define ACPI_ISA_ONLY_RANGES (u8) 0x02
diff --git a/include/acpi/amlcode.h b/include/acpi/amlcode.h
index 37964a59aef8..cf18426a87b1 100644
--- a/include/acpi/amlcode.h
+++ b/include/acpi/amlcode.h
@@ -180,8 +180,10 @@
180#define AML_BANK_FIELD_OP (u16) 0x5b87 180#define AML_BANK_FIELD_OP (u16) 0x5b87
181#define AML_DATA_REGION_OP (u16) 0x5b88 /* ACPI 2.0 */ 181#define AML_DATA_REGION_OP (u16) 0x5b88 /* ACPI 2.0 */
182 182
183/* Bogus opcodes (they are actually two separate opcodes) */ 183/*
184 184 * Combination opcodes (actually two one-byte opcodes)
185 * Used by the disassembler and i_aSL compiler
186 */
185#define AML_LGREATEREQUAL_OP (u16) 0x9295 187#define AML_LGREATEREQUAL_OP (u16) 0x9295
186#define AML_LLESSEQUAL_OP (u16) 0x9294 188#define AML_LLESSEQUAL_OP (u16) 0x9294
187#define AML_LNOTEQUAL_OP (u16) 0x9293 189#define AML_LNOTEQUAL_OP (u16) 0x9293
diff --git a/include/acpi/amlresrc.h b/include/acpi/amlresrc.h
index 64736860bdd5..be03818af9d1 100644
--- a/include/acpi/amlresrc.h
+++ b/include/acpi/amlresrc.h
@@ -47,8 +47,6 @@
47#ifndef __AMLRESRC_H 47#ifndef __AMLRESRC_H
48#define __AMLRESRC_H 48#define __AMLRESRC_H
49 49
50/*! [Begin] no source code translation */
51
52/* 50/*
53 * Resource descriptor tags, as defined in the ACPI specification. 51 * Resource descriptor tags, as defined in the ACPI specification.
54 * Used to symbolically reference fields within a descriptor. 52 * Used to symbolically reference fields within a descriptor.
@@ -65,12 +63,12 @@
65#define ACPI_RESTAG_DMATYPE "_TYP" /* Compatible(0), A(1), B(2), F(3) */ 63#define ACPI_RESTAG_DMATYPE "_TYP" /* Compatible(0), A(1), B(2), F(3) */
66#define ACPI_RESTAG_GRANULARITY "_GRA" 64#define ACPI_RESTAG_GRANULARITY "_GRA"
67#define ACPI_RESTAG_INTERRUPT "_INT" 65#define ACPI_RESTAG_INTERRUPT "_INT"
68#define ACPI_RESTAG_INTERRUPTLEVEL "_LL_" /* ActiveLo(1), ActiveHi(0) */ 66#define ACPI_RESTAG_INTERRUPTLEVEL "_LL_" /* active_lo(1), active_hi(0) */
69#define ACPI_RESTAG_INTERRUPTSHARE "_SHR" /* Shareable(1), NoShare(0) */ 67#define ACPI_RESTAG_INTERRUPTSHARE "_SHR" /* Shareable(1), no_share(0) */
70#define ACPI_RESTAG_INTERRUPTTYPE "_HE_" /* Edge(1), Level(0) */ 68#define ACPI_RESTAG_INTERRUPTTYPE "_HE_" /* Edge(1), Level(0) */
71#define ACPI_RESTAG_LENGTH "_LEN" 69#define ACPI_RESTAG_LENGTH "_LEN"
72#define ACPI_RESTAG_MEMATTRIBUTES "_MTP" /* Memory(0), Reserved(1), ACPI(2), NVS(3) */ 70#define ACPI_RESTAG_MEMATTRIBUTES "_MTP" /* Memory(0), Reserved(1), ACPI(2), NVS(3) */
73#define ACPI_RESTAG_MEMTYPE "_MEM" /* NonCache(0), Cacheable(1) Cache+combine(2), Cache+prefetch(3) */ 71#define ACPI_RESTAG_MEMTYPE "_MEM" /* non_cache(0), Cacheable(1) Cache+combine(2), Cache+prefetch(3) */
74#define ACPI_RESTAG_MAXADDR "_MAX" 72#define ACPI_RESTAG_MAXADDR "_MAX"
75#define ACPI_RESTAG_MINADDR "_MIN" 73#define ACPI_RESTAG_MINADDR "_MIN"
76#define ACPI_RESTAG_MAXTYPE "_MAF" 74#define ACPI_RESTAG_MAXTYPE "_MAF"
@@ -78,12 +76,11 @@
78#define ACPI_RESTAG_REGISTERBITOFFSET "_RBO" 76#define ACPI_RESTAG_REGISTERBITOFFSET "_RBO"
79#define ACPI_RESTAG_REGISTERBITWIDTH "_RBW" 77#define ACPI_RESTAG_REGISTERBITWIDTH "_RBW"
80#define ACPI_RESTAG_RANGETYPE "_RNG" 78#define ACPI_RESTAG_RANGETYPE "_RNG"
81#define ACPI_RESTAG_READWRITETYPE "_RW_" /* ReadOnly(0), Writeable (1) */ 79#define ACPI_RESTAG_READWRITETYPE "_RW_" /* read_only(0), Writeable (1) */
82#define ACPI_RESTAG_TRANSLATION "_TRA" 80#define ACPI_RESTAG_TRANSLATION "_TRA"
83#define ACPI_RESTAG_TRANSTYPE "_TRS" /* Sparse(1), Dense(0) */ 81#define ACPI_RESTAG_TRANSTYPE "_TRS" /* Sparse(1), Dense(0) */
84#define ACPI_RESTAG_TYPE "_TTP" /* Translation(1), Static (0) */ 82#define ACPI_RESTAG_TYPE "_TTP" /* Translation(1), Static (0) */
85#define ACPI_RESTAG_XFERTYPE "_SIZ" /* 8(0), 8And16(1), 16(2) */ 83#define ACPI_RESTAG_XFERTYPE "_SIZ" /* 8(0), 8_and16(1), 16(2) */
86/*! [End] no source code translation !*/
87 84
88/* Default sizes for "small" resource descriptors */ 85/* Default sizes for "small" resource descriptors */
89 86
@@ -306,9 +303,9 @@ union aml_resource {
306 /* Utility overlays */ 303 /* Utility overlays */
307 304
308 struct aml_resource_address address; 305 struct aml_resource_address address;
309 u32 u32_item; 306 u32 dword_item;
310 u16 u16_item; 307 u16 word_item;
311 u8 U8item; 308 u8 byte_item;
312}; 309};
313 310
314#endif 311#endif