OSDN Git Service

staging: wilc1000: remove unused OS abstraction features
[uclinux-h8/linux.git] / drivers / staging / wilc1000 / wilc_errorsupport.h
1 #ifndef __WILC_ERRORSUPPORT_H__
2 #define __WILC_ERRORSUPPORT_H__
3
4 /*!
5  *  @file               wilc_errorsupport.h
6  *  @brief              Error reporting and handling support
7  *  @author             syounan
8  *  @sa                 wilc_oswrapper.h top level OS wrapper file
9  *  @date               10 Aug 2010
10  *  @version            1.0
11  */
12
13 #include "linux_wlan_common.h"
14
15 /* Psitive Numbers to indicate sucess with special status */
16 #define WILC_ALREADY_EXSIT      (+100)    /** The requested object already exists */
17
18 /* Generic success will return 0 */
19 #define WILC_SUCCESS            0       /** Generic success */
20
21 /* Negative numbers to indicate failures */
22 #define WILC_FAIL                -100   /** Generic Fail */
23 #define WILC_BUSY                -101   /** Busy with another operation*/
24 #define WILC_INVALID_ARGUMENT    -102   /** A given argument is invalid*/
25 #define WILC_INVALID_STATE              -103    /** An API request would violate the Driver state machine (i.e. to start PID while not camped)*/
26 #define WILC_BUFFER_OVERFLOW     -104   /** In copy operations if the copied data is larger than the allocated buffer*/
27 #define WILC_NULL_PTR           -105    /** null pointer is passed or used */
28 #define WILC_EMPTY               -107
29 #define WILC_FULL                               -108
30 #define WILC_TIMEOUT                    -109
31 #define WILC_CANCELED           -110    /** The required operation have been canceled by the user*/
32 #define WILC_INVALID_FILE       -112    /** The Loaded file is corruped or having an invalid format */
33 #define WILC_NOT_FOUND          -113    /** Cant find the file to load */
34 #define WILC_NO_MEM             -114
35 #define WILC_UNSUPPORTED_VERSION -115
36 #define WILC_FILE_EOF                   -116
37
38
39 /* Error type */
40 typedef WILC_Sint32 WILC_ErrNo;
41
42 #define WILC_IS_ERR(__status__) (__status__ < WILC_SUCCESS)
43
44 #define WILC_ERRORCHECK(__status__) do { \
45                 if (WILC_IS_ERR(__status__)) { \
46                         PRINT_ER("PRINT_ER(%d)\n", __status__); \
47                         goto ERRORHANDLER; \
48                 } \
49 } while (0)
50
51 #define WILC_ERRORREPORT(__status__, __err__) do { \
52                 PRINT_ER("PRINT_ER(%d)\n", __err__); \
53                 __status__ = __err__; \
54                 goto ERRORHANDLER; \
55 } while (0)
56
57 #define  WILC_NULLCHECK(__status__, __ptr__)    do { \
58                 if (__ptr__ == WILC_NULL) { \
59                         WILC_ERRORREPORT(__status__, WILC_NULL_PTR); \
60                 } \
61 } while (0)
62
63 #define WILC_CATCH(__status__) \
64 ERRORHANDLER: \
65         if (WILC_IS_ERR(__status__)) \
66
67 #endif