Initial cut of the open ath9k htc firmware.
[open-ath9k-htc-firmware.git] / target_firmware / magpie_fw_dev / target / inc / adf_os_util.h
1 /**
2  * @ingroup adf_os_public
3  * @file adf_os_util.h
4  * This file defines utility functions.
5  */
6
7 #ifndef _ADF_OS_UTIL_H
8 #define _ADF_OS_UTIL_H
9
10 #include <adf_os_util_pvt.h>
11
12 /**
13  * @brief Compiler-dependent macro denoting code likely to execute.
14  */
15 #define adf_os_unlikely(_expr)     __adf_os_unlikely(_expr)
16
17 /**
18  * @brief Compiler-dependent macro denoting code unlikely to execute.
19  */
20 #define adf_os_likely(_expr)       __adf_os_likely(_expr)
21
22 /**
23  * @brief read memory barrier. 
24  */
25 #define adf_os_wmb()                __adf_os_wmb()
26
27 /**
28  * @brief write memory barrier. 
29  */
30 #define adf_os_rmb()                __adf_os_rmb()
31
32 /**
33  * @brief read + write memory barrier. 
34  */
35 #define adf_os_mb()                 __adf_os_mb()
36
37 /**
38  * @brief return the lesser of a, b
39  */ 
40 #define adf_os_min(_a, _b)          __adf_os_min(_a, _b)
41
42 /**
43  * @brief return the larger of a, b
44  */ 
45 #define adf_os_max(_a, _b)          __adf_os_max(_a, _b)
46
47 /**
48  * @brief assert "expr" evaluates to true.
49  */ 
50 #define adf_os_assert(expr)         __adf_os_assert(expr)
51
52 /**
53  * @brief supply pseudo-random numbers
54  */
55 static inline void adf_os_get_rand(adf_os_handle_t  hdl, 
56                                    a_uint8_t       *ptr, 
57                                    a_uint32_t       len)
58 {
59     __adf_os_get_rand(hdl, ptr, len);
60 }
61
62 #endif /*_ADF_OS_UTIL_H*/