GNU Linux-libre 4.14.313-gnu1
[releases.git] / drivers / staging / media / atomisp / pci / atomisp2 / css2400 / hive_isp_css_include / error_support.h
1 /*
2  * Support for Intel Camera Imaging ISP subsystem.
3  * Copyright (c) 2015, Intel Corporation.
4  *
5  * This program is free software; you can redistribute it and/or modify it
6  * under the terms and conditions of the GNU General Public License,
7  * version 2, as published by the Free Software Foundation.
8  *
9  * This program is distributed in the hope it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
12  * more details.
13  */
14
15 #ifndef __ERROR_SUPPORT_H_INCLUDED__
16 #define __ERROR_SUPPORT_H_INCLUDED__
17
18 #if defined(_MSC_VER)
19 #include <errno.h>
20 /*
21  * Put here everything _MSC_VER specific not covered in
22  * "errno.h"
23  */
24 #define EINVAL  22
25 #define EBADE   52
26 #define ENODATA 61
27 #define ENOTCONN 107
28 #define ENOTSUP 252
29 #define ENOBUFS 233
30
31
32 #elif defined(__KERNEL__)
33 #include <linux/errno.h>
34 /*
35  * Put here everything __KERNEL__ specific not covered in
36  * "errno.h"
37  */
38 #define ENOTSUP 252
39
40 #elif defined(__GNUC__)
41 #include <errno.h>
42 /*
43  * Put here everything __GNUC__ specific not covered in
44  * "errno.h"
45  */
46
47 #else /* default is for the FIST environment */
48 #include <errno.h>
49 /*
50  * Put here everything FIST specific not covered in
51  * "errno.h"
52  */
53
54 #endif
55
56 #define verifexit(cond,error_tag)  \
57 do {                               \
58         if (!(cond)){              \
59                 goto EXIT;         \
60         }                          \
61 } while(0)
62
63 #define verifjmpexit(cond)         \
64 do {                               \
65         if (!(cond)){              \
66                 goto EXIT;         \
67         }                          \
68 } while(0)
69
70 #endif /* __ERROR_SUPPORT_H_INCLUDED__ */