1ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/******************************************************************************
2ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *
3ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *  Copyright (C) 2014 The Android Open Source Project
4ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *  Copyright 2002 - 2004 Open Interface North America, Inc. All rights reserved.
5ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *
6ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *  Licensed under the Apache License, Version 2.0 (the "License");
7ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *  you may not use this file except in compliance with the License.
8ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *  You may obtain a copy of the License at:
9ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *
10ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *  http://www.apache.org/licenses/LICENSE-2.0
11ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *
12ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *  Unless required by applicable law or agreed to in writing, software
13ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *  distributed under the License is distributed on an "AS IS" BASIS,
14ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *  See the License for the specific language governing permissions and
16ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *  limitations under the License.
17ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *
18ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta ******************************************************************************/
19ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#ifndef OI_STDDEFS_H
20ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_STDDEFS_H
21ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**
22ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * @file
23ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * This file contains BM3 standard type definitions.
24ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *
25ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta */
26ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
27ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**********************************************************************************
28ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta  $Revision: #1 $
29ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta***********************************************************************************/
30ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
31ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#include "oi_cpu_dep.h"
32ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
33ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/** \addtogroup Misc Miscellaneous APIs */
34ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**@{*/
35ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
36ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#ifdef __cplusplus
37ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Guptaextern "C" {
38ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#endif
39ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
40ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#ifndef FALSE
41ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define FALSE 0         /**< This define statement sets FALSE as a preprocessor alias for 0. */
42ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#endif
43ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
44ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#ifndef TRUE
45ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define TRUE (!FALSE)  /**< This define statement sets TRUE as a preprocessor alias for !FALSE. */
46ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#endif
47ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
48ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#ifdef HEW_TOOLCHAIN
49ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    #ifdef NULL
50ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta        #undef NULL         /**< Override HEW toolchain NULL definition */
51ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    #endif
52ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    #define NULL 0          /**< HEW toolchain does not allow us to compare (void*) type to function pointer */
53ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#else
54ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    #ifndef NULL
55ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta        #define NULL ((void*)0) /**< This define statement sets NULL as a preprocessor alias for (void*)0 */
56ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    #endif
57ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#endif
58ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
59ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**
60ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * @name  Maximum and minimum values for basic types
61ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * @{
62ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta */
63ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_INT8_MIN   ((OI_INT8)0x80)          /**< decimal value: -128 */
64ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_INT8_MAX   ((OI_INT8)0x7F)          /**< decimal value: 127 */
65ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_INT16_MIN  ((OI_INT16)0x8000)       /**< decimal value: -32768 */
66ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_INT16_MAX  ((OI_INT16)0x7FFF)       /**< decimal value: 32767 */
67ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_INT32_MIN  ((OI_INT32)0x80000000)   /**< decimal value: -2,147,483,648 */
68ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_INT32_MAX  ((OI_INT32)0x7FFFFFFF)   /**< decimal value: 2,147,483,647 */
69ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_UINT8_MIN  ((OI_UINT8)0)            /**< decimal value: 0 */
70ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_UINT8_MAX  ((OI_UINT8)0xFF)         /**< decimal value: 255 */
71ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_UINT16_MIN ((OI_UINT16)0)           /**< decimal value: 0 */
72ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_UINT16_MAX ((OI_UINT16)0xFFFF)      /**< decimal value: 65535 */
73ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_UINT32_MIN ((OI_UINT32)0)           /**< decimal value: 0 */
74ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_UINT32_MAX ((OI_UINT32)0xFFFFFFFF)  /**< decimal value: 4,294,967,295 */
75ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
76ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**
77ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * @}
78ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta */
79ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
80ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**
81ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * @name  Integer types required by the Service Discovery Protocol
82ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * @{
83ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta */
84ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
85ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/** unsigned 64-bit integer as a structure of two unsigned 32-bit integers */
86ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Guptatypedef struct {
87ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_UINT32 I1; /**< most significant 32 bits */
88ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_UINT32 I2; /**< least significant 32 bits */
89ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta} OI_UINT64;
90ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
91ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_UINT64_MIN { (OI_UINT32)0x00000000, (OI_UINT32)0x00000000 }
92ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_UINT64_MAX { (OI_UINT32)0XFFFFFFFF, (OI_UINT32)0XFFFFFFFF }
93ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
94ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/** signed 64-bit integer as a structure of one unsigned 32-bit integer and one signed 32-bit integer */
95ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Guptatypedef struct {
96ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_INT32  I1; /**< most significant 32 bits  as a signed integer */
97ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_UINT32 I2; /**< least significant 32 bits as an unsigned integer */
98ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta} OI_INT64;
99ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
100ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_INT64_MIN { (OI_INT32)0x80000000, (OI_UINT32)0x00000000 }
101ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_INT64_MAX { (OI_INT32)0X7FFFFFFF, (OI_UINT32)0XFFFFFFFF }
102ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
103ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/** unsigned 128-bit integer as a structure of four unsigned 32-bit integers */
104ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Guptatypedef struct {
105ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_UINT32 I1; /**< most significant 32 bits */
106ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_UINT32 I2; /**< second-most significant 32 bits */
107ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_UINT32 I3; /**< third-most significant 32 bits */
108ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_UINT32 I4; /**< least significant 32 bits */
109ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta} OI_UINT128;
110ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
111ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_UINT128_MIN { (OI_UINT32)0x00000000, (OI_UINT32)0x00000000,  (OI_UINT32)0x00000000, (OI_UINT32)0x00000000 }
112ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_UINT128_MAX { (OI_UINT32)0XFFFFFFFF, (OI_UINT32)0XFFFFFFFF,  (OI_UINT32)0XFFFFFFFF, (OI_UINT32)0XFFFFFFFF }
113ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
114ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/** signed 128-bit integer as a structure of three unsigned 32-bit integers and one signed 32-bit integer */
115ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Guptatypedef struct {
116ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_INT32  I1;  /**< most significant 32 bits as a signed integer */
117ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_UINT32 I2;  /**< second-most significant 32 bits as an unsigned integer */
118ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_UINT32 I3;  /**< third-most significant 32 bits as an unsigned integer */
119ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta    OI_UINT32 I4;  /**< least significant 32 bits as an unsigned integer */
120ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta} OI_INT128;
121ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
122ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_INT128_MIN { (OI_UINT32)0x80000000, (OI_UINT32)0x00000000,  (OI_UINT32)0x00000000, (OI_UINT32)0x00000000 }
123ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_INT128_MAX { (OI_UINT32)0X7FFFFFFF, (OI_UINT32)0XFFFFFFFF,  (OI_UINT32)0XFFFFFFFF, (OI_UINT32)0XFFFFFFFF }
124ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
125ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**
126ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * @}
127ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta */
128ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
129ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
130ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**
131ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * type for ASCII character data items
132ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta */
133ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Guptatypedef char OI_CHAR;
134ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
135ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**
136ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * type for double-byte character data items
137ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta */
138ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Guptatypedef OI_UINT16 OI_CHAR16;
139ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
140ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**
141ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * types for UTF encoded strings.
142ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta */
143ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Guptatypedef OI_UINT8  OI_UTF8;
144ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Guptatypedef OI_UINT16 OI_UTF16;
145ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Guptatypedef OI_UINT32 OI_UTF32;
146ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
147ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
148ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**
149ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * @name Single-bit operation macros
150ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * @{
151ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * In these macros, x is the data item for which a bit is to be tested or set and y specifies which bit
152ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * is to be tested or set.
153ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta */
154ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
155ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/** This macro's value is TRUE if the bit specified by y is set in data item x. */
156ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_BIT_TEST(x,y)   ((x) & (y))
157ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
158ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/** This macro's value is TRUE if the bit specified by y is not set in data item x. */
159ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_BIT_CLEAR_TEST(x,y)  (((x) & (y)) == 0)
160ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
161ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/** This macro sets the bit specified by y in data item x. */
162ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_BIT_SET(x,y)    ((x) |= (y))
163ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
164ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/** This macro clears the bit specified by y in data item x. */
165ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_BIT_CLEAR(x,y)  ((x) &= ~(y))
166ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
167ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/** @} */
168ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
169ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**
170ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * The OI_ARRAYSIZE macro is set to the number of elements in an array
171ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * (instead of the number of bytes, which is returned by sizeof()).
172ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta */
173ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
174ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#ifndef OI_ARRAYSIZE
175ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define OI_ARRAYSIZE(a) (sizeof(a)/sizeof(a[0]))
176ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#endif
177ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
178ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**
179ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * @name Preprocessor aliases for individual bit positions
180ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta *      Bits are defined here only if they are not already defined.
181ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta * @{
182ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta */
183ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
184ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#ifndef BIT0
185ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
186ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT0   0x00000001  /**< preprocessor alias for 32-bit value with bit 0 set, used to specify this single bit */
187ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT1   0x00000002  /**< preprocessor alias for 32-bit value with bit 1 set, used to specify this single bit */
188ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT2   0x00000004  /**< preprocessor alias for 32-bit value with bit 2 set, used to specify this single bit */
189ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT3   0x00000008  /**< preprocessor alias for 32-bit value with bit 3 set, used to specify this single bit */
190ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT4   0x00000010  /**< preprocessor alias for 32-bit value with bit 4 set, used to specify this single bit */
191ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT5   0x00000020  /**< preprocessor alias for 32-bit value with bit 5 set, used to specify this single bit */
192ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT6   0x00000040  /**< preprocessor alias for 32-bit value with bit 6 set, used to specify this single bit */
193ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT7   0x00000080  /**< preprocessor alias for 32-bit value with bit 7 set, used to specify this single bit */
194ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT8   0x00000100  /**< preprocessor alias for 32-bit value with bit 8 set, used to specify this single bit */
195ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT9   0x00000200  /**< preprocessor alias for 32-bit value with bit 9 set, used to specify this single bit */
196ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT10  0x00000400  /**< preprocessor alias for 32-bit value with bit 10 set, used to specify this single bit */
197ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT11  0x00000800  /**< preprocessor alias for 32-bit value with bit 11 set, used to specify this single bit */
198ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT12  0x00001000  /**< preprocessor alias for 32-bit value with bit 12 set, used to specify this single bit */
199ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT13  0x00002000  /**< preprocessor alias for 32-bit value with bit 13 set, used to specify this single bit */
200ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT14  0x00004000  /**< preprocessor alias for 32-bit value with bit 14 set, used to specify this single bit */
201ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT15  0x00008000  /**< preprocessor alias for 32-bit value with bit 15 set, used to specify this single bit */
202ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT16  0x00010000  /**< preprocessor alias for 32-bit value with bit 16 set, used to specify this single bit */
203ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT17  0x00020000  /**< preprocessor alias for 32-bit value with bit 17 set, used to specify this single bit */
204ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT18  0x00040000  /**< preprocessor alias for 32-bit value with bit 18 set, used to specify this single bit */
205ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT19  0x00080000  /**< preprocessor alias for 32-bit value with bit 19 set, used to specify this single bit */
206ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT20  0x00100000  /**< preprocessor alias for 32-bit value with bit 20 set, used to specify this single bit */
207ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT21  0x00200000  /**< preprocessor alias for 32-bit value with bit 21 set, used to specify this single bit */
208ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT22  0x00400000  /**< preprocessor alias for 32-bit value with bit 22 set, used to specify this single bit */
209ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT23  0x00800000  /**< preprocessor alias for 32-bit value with bit 23 set, used to specify this single bit */
210ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT24  0x01000000  /**< preprocessor alias for 32-bit value with bit 24 set, used to specify this single bit */
211ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT25  0x02000000  /**< preprocessor alias for 32-bit value with bit 25 set, used to specify this single bit */
212ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT26  0x04000000  /**< preprocessor alias for 32-bit value with bit 26 set, used to specify this single bit */
213ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT27  0x08000000  /**< preprocessor alias for 32-bit value with bit 27 set, used to specify this single bit */
214ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT28  0x10000000  /**< preprocessor alias for 32-bit value with bit 28 set, used to specify this single bit */
215ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT29  0x20000000  /**< preprocessor alias for 32-bit value with bit 29 set, used to specify this single bit */
216ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT30  0x40000000  /**< preprocessor alias for 32-bit value with bit 30 set, used to specify this single bit */
217ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#define BIT31  0x80000000  /**< preprocessor alias for 32-bit value with bit 31 set, used to specify this single bit */
218ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
219ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#endif  /* BIT0 et al */
220ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
221ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
222ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/** @} */
223ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
224ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
225ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#ifdef __cplusplus
226ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta}
227ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#endif
228ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
229ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/**@}*/
230ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta
231ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta/*****************************************************************************/
232ce24765fe7620c34e8d88ed4f826c8a6917582b2Hemant Gupta#endif /* OI_STDDEFS_H */
233