SISCI API
Documentation
sisci_error.h
Go to the documentation of this file.
1 /* $Id$ */
2 
3 /*******************************************************************************
4  * *
5  * Copyright (C) 1993 - 2019 *
6  * Dolphin Interconnect Solutions AS *
7  * *
8  * This program is free software; you can redistribute it and/or modify *
9  * it under the terms of the GNU General Public License as published by *
10  * the Free Software Foundation; either version 2 of the License, *
11  * or (at your option) any later version. *
12  * *
13  * This program is distributed in the hope that it will be useful, *
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
16  * GNU General Public License for more details. *
17  * *
18  * You should have received a copy of the GNU General Public License *
19  * along with this program; if not, write to the Free Software *
20  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
21  * *
22  * *
23  *******************************************************************************/
24 
30 #ifndef _SISCI_ERROR_H_
31 #define _SISCI_ERROR_H_
32 
33 
34 /* SCI Error return values always have 30 bit set */
35 #define SISCI_ERR_MASK 0x40000000
36 #define SCI_ERR_REMOTE_MASK 0x01 /* Remote errors should have bit 0 set */
37 
38 #define SCI_ERR(u) ((uint32_t)(u)&0x7FFFFFFF )
39 
40 
41 /* Error codes */
42 
48 typedef enum {
49  SCI_ERR_OK = 0x000,
51  SCI_ERR_BUSY = (0x900 | SISCI_ERR_MASK),
52  SCI_ERR_FLAG_NOT_IMPLEMENTED = (0x901 | SISCI_ERR_MASK),
53  SCI_ERR_ILLEGAL_FLAG = (0x902 | SISCI_ERR_MASK),
54  SCI_ERR_NOSPC = (0x904 | SISCI_ERR_MASK),
55  SCI_ERR_API_NOSPC = (0x905 | SISCI_ERR_MASK),
56  SCI_ERR_HW_NOSPC = (0x906 | SISCI_ERR_MASK),
57  SCI_ERR_NOT_IMPLEMENTED = (0x907 | SISCI_ERR_MASK),
58  SCI_ERR_ILLEGAL_ADAPTERNO = (0x908 | SISCI_ERR_MASK),
59  SCI_ERR_NO_SUCH_ADAPTERNO = (0x909 | SISCI_ERR_MASK),
60  SCI_ERR_TIMEOUT = (0x90A | SISCI_ERR_MASK),
61  SCI_ERR_OUT_OF_RANGE = (0x90B | SISCI_ERR_MASK),
62  SCI_ERR_NO_SUCH_SEGMENT = (0x90C | SISCI_ERR_MASK),
64  SCI_ERR_ILLEGAL_NODEID = (0x90D | SISCI_ERR_MASK),
65  SCI_ERR_CONNECTION_REFUSED = (0x90E | SISCI_ERR_MASK),
66  SCI_ERR_SEGMENT_NOT_CONNECTED = (0x90F | SISCI_ERR_MASK),
67  SCI_ERR_SIZE_ALIGNMENT = (0x910 | SISCI_ERR_MASK),
68  SCI_ERR_OFFSET_ALIGNMENT = (0x911 | SISCI_ERR_MASK),
69  SCI_ERR_ILLEGAL_PARAMETER = (0x912 | SISCI_ERR_MASK),
70  SCI_ERR_MAX_ENTRIES = (0x913 | SISCI_ERR_MASK),
71  SCI_ERR_SEGMENT_NOT_PREPARED = (0x914 | SISCI_ERR_MASK),
72  SCI_ERR_ILLEGAL_ADDRESS = (0x915 | SISCI_ERR_MASK),
73  SCI_ERR_ILLEGAL_OPERATION = (0x916 | SISCI_ERR_MASK),
74  SCI_ERR_ILLEGAL_QUERY = (0x917 | SISCI_ERR_MASK),
75  SCI_ERR_SEGMENTID_USED = (0x918 | SISCI_ERR_MASK),
76  SCI_ERR_SYSTEM = (0x919 | SISCI_ERR_MASK),
77  SCI_ERR_CANCELLED = (0x91A | SISCI_ERR_MASK),
78  SCI_ERR_NOT_CONNECTED = (0x91B | SISCI_ERR_MASK),
79  SCI_ERR_NOT_AVAILABLE = (0x91C | SISCI_ERR_MASK),
80  SCI_ERR_INCONSISTENT_VERSIONS = (0x91D | SISCI_ERR_MASK),
81  SCI_ERR_COND_INT_RACE_PROBLEM = (0x91E | SISCI_ERR_MASK), /* 0x4000091E - Interrupt race problem detected */
82  SCI_ERR_OVERFLOW = (0x91F | SISCI_ERR_MASK),
83  SCI_ERR_NOT_INITIALIZED = (0x920 | SISCI_ERR_MASK),
84  SCI_ERR_ACCESS = (0x921 | SISCI_ERR_MASK),
85  SCI_ERR_NOT_SUPPORTED = (0x922 | SISCI_ERR_MASK),
86  SCI_ERR_DEPRECATED = (0x923 | SISCI_ERR_MASK),
88  SCI_ERR_DMA_NOT_AVAILABLE = (0x924 | SISCI_ERR_MASK),
89  SCI_ERR_DMA_DISABLED = (0x925 | SISCI_ERR_MASK),
91  SCI_ERR_NO_SUCH_NODEID = (0xA00 | SISCI_ERR_MASK),
92  SCI_ERR_NODE_NOT_RESPONDING = (0xA02 | SISCI_ERR_MASK),
93  SCI_ERR_NO_REMOTE_LINK_ACCESS = (0xA04 | SISCI_ERR_MASK),
94  SCI_ERR_NO_LINK_ACCESS = (0xA05 | SISCI_ERR_MASK),
95  SCI_ERR_TRANSFER_FAILED = (0xA06 | SISCI_ERR_MASK),
97  SCI_ERR_EWOULD_BLOCK = (0xB00 | SISCI_ERR_MASK), /* 0x40000B00 - This error code is not used by SISCI API - Should not be documented */
98  SCI_ERR_SEMAPHORE_COUNT_EXCEEDED = (0xB01 | SISCI_ERR_MASK), /* 0x40000B01 - Semaphore counter is exceeded */
99  SCI_ERR_IRQL_ILLEGAL = (0xB02 | SISCI_ERR_MASK),
101  SCI_ERR_REMOTE_BUSY = SCI_ERR_EWOULD_BLOCK,
102  SCI_ERR_LOCAL_BUSY = (0xB03 | SISCI_ERR_MASK),
103  SCI_ERR_ALL_BUSY = (0xB04 | SISCI_ERR_MASK),
104  SCI_ERR_NO_SUCH_FDID = (0xB05 | SISCI_ERR_MASK)
106 } sci_error_t;
107 
108 
109 #endif /* _SCI_ERROR_H_ */
110 
111 
112 
Definition: sisci_error.h:80
Definition: sisci_error.h:74
Definition: sisci_error.h:64
Definition: sisci_error.h:85
Definition: sisci_error.h:52
Definition: sisci_error.h:101
Definition: sisci_error.h:92
Definition: sisci_error.h:55
Definition: sisci_error.h:102
Definition: sisci_error.h:59
Definition: sisci_error.h:53
Definition: sisci_error.h:51
Definition: sisci_error.h:99
Definition: sisci_error.h:61
Definition: sisci_error.h:83
Definition: sisci_error.h:66
Definition: sisci_error.h:63
Definition: sisci_error.h:89
Definition: sisci_error.h:94
Definition: sisci_error.h:91
Definition: sisci_error.h:49
Definition: sisci_error.h:54
Definition: sisci_error.h:72
Definition: sisci_error.h:88
Definition: sisci_error.h:75
Definition: sisci_error.h:103
Definition: sisci_error.h:68
Definition: sisci_error.h:70
Definition: sisci_error.h:76
Definition: sisci_error.h:69
Definition: sisci_error.h:95
Definition: sisci_error.h:104
Definition: sisci_error.h:79
Definition: sisci_error.h:73
Definition: sisci_error.h:65
sci_error_t
The type sci_error_t represents the error code.
Definition: sisci_error.h:48
Definition: sisci_error.h:57
Definition: sisci_error.h:82
Definition: sisci_error.h:71
Definition: sisci_error.h:67
Definition: sisci_error.h:56
Definition: sisci_error.h:86
Definition: sisci_error.h:60
Definition: sisci_error.h:93
Definition: sisci_error.h:78
Definition: sisci_error.h:58
Definition: sisci_error.h:84
Definition: sisci_error.h:62
Definition: sisci_error.h:77