1 /** @file type_decls.h
2  *
3  *  @brief This file declares the generic data structures and APIs.
4  *
5  *  Copyright 2022-2024 NXP
6  *
7  *  SPDX-License-Identifier: BSD-3-Clause
8  *
9  */
10 
11 /******************************************************
12 Change log:
13     20/01/2022: initial version
14 ******************************************************/
15 
16 #ifndef _TYPE_DECL_H_
17 #define _TYPE_DECL_H_
18 
19 
20 /** Re-define generic data types for firmware downloader */
21 /** Signed char (1-byte) */
22 typedef char t_s8;
23 /** Unsigned char (1-byte) */
24 typedef unsigned char t_u8;
25 /** Signed short (2-bytes) */
26 typedef short t_s16;
27 /** Unsigned short (2-bytes) */
28 typedef unsigned short t_u16;
29 /** Signed long (4-bytes) */
30 typedef int t_s32;
31 /** Unsigned long (4-bytes) */
32 typedef unsigned int t_u32;
33 /** Signed long long 8-bytes) */
34 typedef long long t_s64;
35 /** Unsigned long long 8-bytes) */
36 typedef unsigned long long t_u64;
37 /** Void pointer (4-bytes) */
38 typedef void t_void;
39 /** Size type */
40 typedef t_u32 t_size;
41 /** Boolean type */
42 typedef t_u8 t_bool;
43 
44 #ifdef MLAN_64BIT
45 /** Pointer type (64-bit) */
46 typedef t_u64 t_ptr;
47 /** Signed value (64-bit) */
48 typedef t_s64 t_sval;
49 #else
50 /** Pointer type (32-bit) */
51 typedef t_u32 t_ptr;
52 /** Signed value (32-bit) */
53 typedef t_s32 t_sval;
54 #endif
55 
56 /** MLAN TRUE */
57 #define MTRUE (1)
58 /** MLAN FALSE */
59 #define MFALSE (0)
60 
61 #endif /* !_TYPE_DECL_H_ */
62