1 /*
2  *  Copyright 2001-2008 Texas Instruments - http://www.ti.com/
3  *
4  *  Licensed under the Apache License, Version 2.0 (the "License");
5  *  you may not use this file except in compliance with the License.
6  *  You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  *  Unless required by applicable law or agreed to in writing, software
11  *  distributed under the License is distributed on an "AS IS" BASIS,
12  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  *  See the License for the specific language governing permissions and
14  *  limitations under the License.
15  */
16 
17 /*
18  *  ======== errbase.h ========
19  *  DSP-BIOS Bridge driver support functions for TI OMAP processors.
20  *  Description:
21  *      Central repository for DSP/BIOS Bridge error and status code.
22  *
23  *  Error codes are of the form:
24  *      [<MODULE>]_E<ERRORCODE>
25  *
26  *  Success codes are of the form:
27  *      [<MODULE>]_S<SUCCESSCODE>
28  *
29  *! Revision History:
30  *! ================
31  *! 24-Jan-2003 map Added DSP_SALREADYLOADED for persistent library checking
32  *! 23-Nov-2002 gp: Minor comment cleanup.
33  *! 13-May-2002 sg  Added DSP_SALREADYASLEEP and DSP_SALREADYWAKE.
34  *! 18-Feb-2002 mk: Added DSP_EOVERLAYMEMORY, EFWRITE, ENOSECT.
35  *! 31-Jan-2002 mk: Added definitions of DSP_STRUE and DSP_SFALSE.
36  *! 29-Jan-2002 mk: Added definition of CFG_E_INSUFFICIENTBUFSIZE.
37  *! 24-Oct-2001 sp: Consolidated all the error codes into this file.
38  *! 24-Jul-2001 mk: Type-casted all definitions of WSX_STATUS types for
39  *!                 removal of compile warnings.
40  *! 22-Nov-1999 kc: Changes from code review.
41  *! 18-Aug-1999 rr: Ported From WSX.
42  *! 29-May-1996 gp: Removed WCD_ and WMD_ error ranges. Redefined format of
43  *!                 error codes.
44  *! 10-May-1996 gp: Created.
45  */
46 
47 #ifndef ERRBASE_
48 #define ERRBASE_
49 
50 #ifdef __cplusplus
51 extern "C" {
52 #endif
53 
54 /* ========================================================================== */
55 /* Base of generic errors and component errors                                */
56 /* ========================================================================== */
57 #define DSP_SBASE               (DSP_STATUS)0x00008000
58 #define DSP_EBASE               (DSP_STATUS)0x80008000
59 
60 #define DSP_COMP_EBASE          (DSP_STATUS)0x80040200
61 #define DSP_COMP_ELAST          (DSP_STATUS)0x80047fff
62 
63 /* ========================================================================== */
64 /* SUCCESS Codes                                                              */
65 /* ========================================================================== */
66 
67 /* -------------------------------------------------------------------------- */
68 /* Generic success code                                                       */
69 /* -------------------------------------------------------------------------- */
70 #define DSP_SOK                     (DSP_SBASE + 0)
71 
72 /* -------------------------------------------------------------------------- */
73 /* GPP is already attached to this DSP processor                              */
74 /* -------------------------------------------------------------------------- */
75 #define DSP_SALREADYATTACHED        (DSP_SBASE + 1)
76 
77 /* -------------------------------------------------------------------------- */
78 /* This is the last object available for enumeration.                         */
79 /* -------------------------------------------------------------------------- */
80 #define DSP_SENUMCOMPLETE           (DSP_SBASE + 2)
81 
82 /* -------------------------------------------------------------------------- */
83 /* The DSP is already asleep.                                                 */
84 /* -------------------------------------------------------------------------- */
85 #define DSP_SALREADYASLEEP          (DSP_SBASE + 3)
86 
87 /* -------------------------------------------------------------------------- */
88 /* The DSP is already awake.                                                 */
89 /* -------------------------------------------------------------------------- */
90 #define DSP_SALREADYAWAKE           (DSP_SBASE + 4)
91 
92 /* -------------------------------------------------------------------------- */
93 /* TRUE                                                                       */
94 /* -------------------------------------------------------------------------- */
95 #define DSP_STRUE                   (DSP_SBASE + 5)
96 
97 /* -------------------------------------------------------------------------- */
98 /* FALSE                                                                      */
99 /* -------------------------------------------------------------------------- */
100 #define DSP_SFALSE                  (DSP_SBASE + 6)
101 
102 /* -------------------------------------------------------------------------- */
103 /* A library contains no dependent library references                         */
104 /* -------------------------------------------------------------------------- */
105 #define DSP_SNODEPENDENTLIBS        (DSP_SBASE + 7)
106 
107 /* -------------------------------------------------------------------------- */
108 /* A persistent library is already loaded by the dynamic loader               */
109 /* -------------------------------------------------------------------------- */
110 #define DSP_SALREADYLOADED          (DSP_SBASE + 8)
111 
112 /* -------------------------------------------------------------------------- */
113 /* Some error occured, but it is OK to continue                               */
114 /* -------------------------------------------------------------------------- */
115 #define DSP_OKTO_CONTINUE          (DSP_SBASE + 9)
116 
117 /* ========================================================================== */
118 /* FAILURE Codes                                                              */
119 /* ========================================================================== */
120 
121 /* -------------------------------------------------------------------------- */
122 /* The caller does not have access privileges to call this function           */
123 /* -------------------------------------------------------------------------- */
124 #define DSP_EACCESSDENIED           (DSP_EBASE + 0)
125 
126 /* -------------------------------------------------------------------------- */
127 /* The Specified Connection already exists                                    */
128 /* -------------------------------------------------------------------------- */
129 #define DSP_EALREADYCONNECTED       (DSP_EBASE + 1)
130 
131 /* -------------------------------------------------------------------------- */
132 /* The GPP must be detached from the DSP before this function is called       */
133 /* -------------------------------------------------------------------------- */
134 #define DSP_EATTACHED               (DSP_EBASE + 2)
135 
136 /* -------------------------------------------------------------------------- */
137 /* During enumeration a change in the number or properties of the objects     */
138 /* has occurred.                                                              */
139 /* -------------------------------------------------------------------------- */
140 #define DSP_ECHANGEDURINGENUM       (DSP_EBASE + 3)
141 
142 /* -------------------------------------------------------------------------- */
143 /* An error occurred while parsing the DSP executable file                    */
144 /* -------------------------------------------------------------------------- */
145 #define DSP_ECORRUPTFILE            (DSP_EBASE + 4)
146 
147 /* -------------------------------------------------------------------------- */
148 /* A failure occurred during a delete operation                               */
149 /* -------------------------------------------------------------------------- */
150 #define DSP_EDELETE                 (DSP_EBASE + 5)
151 
152 /* -------------------------------------------------------------------------- */
153 /* The specified direction is invalid                                         */
154 /* -------------------------------------------------------------------------- */
155 #define DSP_EDIRECTION              (DSP_EBASE + 6)
156 
157 /* -------------------------------------------------------------------------- */
158 /* A stream has been issued the maximum number of buffers allowed in the      */
159 /* stream at once ;  buffers must be reclaimed from the stream before any     */
160 /* more can be issued.                                                        */
161 /* -------------------------------------------------------------------------- */
162 #define DSP_ESTREAMFULL             (DSP_EBASE + 7)
163 
164 /* -------------------------------------------------------------------------- */
165 /* A general failure occurred                                                 */
166 /* -------------------------------------------------------------------------- */
167 #define DSP_EFAIL                   (DSP_EBASE + 8)
168 
169 /* -------------------------------------------------------------------------- */
170 /* The specified executable file could not be found.                          */
171 /* -------------------------------------------------------------------------- */
172 #define DSP_EFILE                   (DSP_EBASE + 9)
173 
174 /* -------------------------------------------------------------------------- */
175 /* The specified handle is invalid.                                           */
176 /* -------------------------------------------------------------------------- */
177 #define DSP_EHANDLE                 (DSP_EBASE + 0xa)
178 
179 /* -------------------------------------------------------------------------- */
180 /* An invalid argument was specified.                                         */
181 /* -------------------------------------------------------------------------- */
182 #define DSP_EINVALIDARG             (DSP_EBASE + 0xb)
183 
184 /* -------------------------------------------------------------------------- */
185 /* A memory allocation failure occurred.                                      */
186 /* -------------------------------------------------------------------------- */
187 #define DSP_EMEMORY                 (DSP_EBASE + 0xc)
188 
189 /* -------------------------------------------------------------------------- */
190 /* The requested operation is invalid for this node type.                     */
191 /* -------------------------------------------------------------------------- */
192 #define DSP_ENODETYPE               (DSP_EBASE + 0xd)
193 
194 /* -------------------------------------------------------------------------- */
195 /* No error text was found for the specified error code.                      */
196 /* -------------------------------------------------------------------------- */
197 #define DSP_ENOERRTEXT              (DSP_EBASE + 0xe)
198 
199 /* -------------------------------------------------------------------------- */
200 /* No more connections can be made for this node.                             */
201 /* -------------------------------------------------------------------------- */
202 #define DSP_ENOMORECONNECTIONS      (DSP_EBASE + 0xf)
203 
204 /* -------------------------------------------------------------------------- */
205 /* The indicated operation is not supported.                                  */
206 /* -------------------------------------------------------------------------- */
207 #define DSP_ENOTIMPL                (DSP_EBASE + 0x10)
208 
209 /* -------------------------------------------------------------------------- */
210 /* I/O is currently pending.                                                  */
211 /* -------------------------------------------------------------------------- */
212 #define DSP_EPENDING                (DSP_EBASE + 0x11)
213 
214 /* -------------------------------------------------------------------------- */
215 /* An invalid pointer was specified.                                          */
216 /* -------------------------------------------------------------------------- */
217 #define DSP_EPOINTER                (DSP_EBASE + 0x12)
218 
219 /* -------------------------------------------------------------------------- */
220 /* A parameter is specified outside its valid range.                          */
221 /* -------------------------------------------------------------------------- */
222 #define DSP_ERANGE                  (DSP_EBASE + 0x13)
223 
224 /* -------------------------------------------------------------------------- */
225 /* An invalid size parameter was specified.                                    */
226 /* -------------------------------------------------------------------------- */
227 #define DSP_ESIZE                   (DSP_EBASE + 0x14)
228 
229 /* -------------------------------------------------------------------------- */
230 /* A stream creation failure occurred on the DSP.                             */
231 /* -------------------------------------------------------------------------- */
232 #define DSP_ESTREAM                 (DSP_EBASE + 0x15)
233 
234 /* -------------------------------------------------------------------------- */
235 /* A task creation failure occurred on the DSP.                               */
236 /* -------------------------------------------------------------------------- */
237 #define DSP_ETASK                   (DSP_EBASE + 0x16)
238 
239 /* -------------------------------------------------------------------------- */
240 /* A timeout occurred before the requested operation could complete.          */
241 /* -------------------------------------------------------------------------- */
242 #define DSP_ETIMEOUT                (DSP_EBASE + 0x17)
243 
244 /* -------------------------------------------------------------------------- */
245 /* A data truncation occurred, e.g., when requesting a descriptive error      */
246 /* string, not enough space was allocated for the complete error message.     */
247 /* -------------------------------------------------------------------------- */
248 #define DSP_ETRUNCATED              (DSP_EBASE + 0x18)
249 
250 /* -------------------------------------------------------------------------- */
251 /* A parameter is invalid.                                                    */
252 /* -------------------------------------------------------------------------- */
253 #define DSP_EVALUE                  (DSP_EBASE + 0x1a)
254 
255 /* -------------------------------------------------------------------------- */
256 /* The state of the specified object is incorrect for the requested           */
257 /* operation.                                                                 */
258 /* -------------------------------------------------------------------------- */
259 #define DSP_EWRONGSTATE             (DSP_EBASE + 0x1b)
260 
261 /* -------------------------------------------------------------------------- */
262 /* Symbol not found in the COFF file.  DSPNode_Create will return this if     */
263 /* the iAlg function table for an xDAIS socket is not found in the COFF file. */
264 /* In this case, force the symbol to be linked into the COFF file.            */
265 /* DSPNode_Create, DSPNode_Execute, and DSPNode_Delete will return this if    */
266 /* the create, execute, or delete phase function, respectively, could not be  */
267 /* found in the COFF file.                                                    */
268 /* -------------------------------------------------------------------------- */
269 #define DSP_ESYMBOL                 (DSP_EBASE + 0x1c)
270 
271 /* -------------------------------------------------------------------------- */
272 /* UUID not found in registry.                                                */
273 /* -------------------------------------------------------------------------- */
274 #define DSP_EUUID                   (DSP_EBASE + 0x1d)
275 
276 /* -------------------------------------------------------------------------- */
277 /* Unable to read content of DCD data section ; this is typically caused by   */
278 /* improperly configured nodes.                                               */
279 /* -------------------------------------------------------------------------- */
280 #define DSP_EDCDREADSECT            (DSP_EBASE + 0x1e)
281 
282 /* -------------------------------------------------------------------------- */
283 /* Unable to decode DCD data section content ; this is typically caused by    */
284 /* changes to DSP/BIOS Bridge data structures.                                */
285 /* -------------------------------------------------------------------------- */
286 #define DSP_EDCDPARSESECT           (DSP_EBASE + 0x1f)
287 
288 /* -------------------------------------------------------------------------- */
289 /* Unable to get pointer to DCD data section ; this is typically caused by    */
290 /* improperly configured UUIDs.                                               */
291 /* -------------------------------------------------------------------------- */
292 #define DSP_EDCDGETSECT             (DSP_EBASE + 0x20)
293 
294 /* -------------------------------------------------------------------------- */
295 /* Unable to load file containing DCD data section ; this is typically        */
296 /* caused by a missing COFF file.                                             */
297 /* -------------------------------------------------------------------------- */
298 #define DSP_EDCDLOADBASE            (DSP_EBASE + 0x21)
299 
300 /* -------------------------------------------------------------------------- */
301 /* The specified COFF file does not contain a valid node registration         */
302 /* section.                                                                   */
303 /* -------------------------------------------------------------------------- */
304 #define DSP_EDCDNOAUTOREGISTER      (DSP_EBASE + 0x22)
305 
306 /* -------------------------------------------------------------------------- */
307 /* A requested resource is not available.                                     */
308 /* -------------------------------------------------------------------------- */
309 #define DSP_ERESOURCE               (DSP_EBASE + 0x28)
310 
311 /* -------------------------------------------------------------------------- */
312 /* A critical error has occurred, and the DSP is being re-started.            */
313 /* -------------------------------------------------------------------------- */
314 #define DSP_ERESTART                (DSP_EBASE + 0x29)
315 
316 /* -------------------------------------------------------------------------- */
317 /* A DSP memory free operation failed.                                        */
318 /* -------------------------------------------------------------------------- */
319 #define DSP_EFREE                   (DSP_EBASE + 0x2a)
320 
321 /* -------------------------------------------------------------------------- */
322 /* A DSP I/O free operation failed.                                           */
323 /* -------------------------------------------------------------------------- */
324 #define DSP_EIOFREE                 (DSP_EBASE + 0x2b)
325 
326 /* -------------------------------------------------------------------------- */
327 /* Multiple instances are not allowed.                                        */
328 /* -------------------------------------------------------------------------- */
329 #define DSP_EMULINST                (DSP_EBASE + 0x2c)
330 
331 /* -------------------------------------------------------------------------- */
332 /* A specified entity was not found.                                          */
333 /* -------------------------------------------------------------------------- */
334 #define DSP_ENOTFOUND               (DSP_EBASE + 0x2d)
335 
336 /* -------------------------------------------------------------------------- */
337 /* A DSP I/O resource is not available.                                       */
338 /* -------------------------------------------------------------------------- */
339 #define DSP_EOUTOFIO                (DSP_EBASE + 0x2e)
340 
341 /* -------------------------------------------------------------------------- */
342 /* A shared memory buffer contained in a message or stream could not be       */
343 /* mapped to the GPP client process's virtual space.                          */
344 /* -------------------------------------------------------------------------- */
345 #define DSP_ETRANSLATE              (DSP_EBASE + 0x2f)
346 
347 /* -------------------------------------------------------------------------- */
348 /* File or section load write function failed to write to DSP                 */
349 /* -------------------------------------------------------------------------- */
350 #define DSP_EFWRITE                 (DSP_EBASE + 0x31)
351 
352 /* -------------------------------------------------------------------------- */
353 /* Unable to find a named section in DSP executable                           */
354 /* -------------------------------------------------------------------------- */
355 #define DSP_ENOSECT                 (DSP_EBASE + 0x32)
356 
357 /* -------------------------------------------------------------------------- */
358 /* Unable to open file                                                        */
359 /* -------------------------------------------------------------------------- */
360 #define DSP_EFOPEN                  (DSP_EBASE + 0x33)
361 
362 /* -------------------------------------------------------------------------- */
363 /* Unable to read file                                                        */
364 /* -------------------------------------------------------------------------- */
365 #define DSP_EFREAD                  (DSP_EBASE + 0x34)
366 
367 /* -------------------------------------------------------------------------- */
368 /* A non-existent memory segment identifier was specified                     */
369 /* -------------------------------------------------------------------------- */
370 #define DSP_EOVERLAYMEMORY          (DSP_EBASE + 0x37)
371 
372 /* -------------------------------------------------------------------------- */
373 /* Invalid segment ID                                                         */
374 /* -------------------------------------------------------------------------- */
375 #define DSP_EBADSEGID               (DSP_EBASE + 0x38)
376 
377 /* -------------------------------------------------------------------------- */
378 /* Invalid alignment                                                          */
379 /* -------------------------------------------------------------------------- */
380 #define DSP_EALIGNMENT               (DSP_EBASE + 0x39)
381 
382 /* -------------------------------------------------------------------------- */
383 /* Invalid stream mode                                                        */
384 /* -------------------------------------------------------------------------- */
385 #define DSP_ESTRMMODE               (DSP_EBASE + 0x3a)
386 
387 /* -------------------------------------------------------------------------- */
388 /* Nodes not connected                                                        */
389 /* -------------------------------------------------------------------------- */
390 #define DSP_ENOTCONNECTED           (DSP_EBASE + 0x3b)
391 
392 /* -------------------------------------------------------------------------- */
393 /* Not shared memory                                                          */
394 /* -------------------------------------------------------------------------- */
395 #define DSP_ENOTSHAREDMEM           (DSP_EBASE + 0x3c)
396 
397 /* -------------------------------------------------------------------------- */
398 /* Error occurred in a dynamic loader library function                        */
399 /* -------------------------------------------------------------------------- */
400 #define DSP_EDYNLOAD                (DSP_EBASE + 0x3d)
401 
402 /* -------------------------------------------------------------------------- */
403 /* Device in 'sleep/suspend' mode due to DPM                                  */
404 /* -------------------------------------------------------------------------- */
405 #define DSP_EDPMSUSPEND             (DSP_EBASE + 0x3e)
406 
407 /* -------------------------------------------------------------------------- */
408 /* A node-specific error has occurred.                                        */
409 /* -------------------------------------------------------------------------- */
410 #define DSP_EUSER1                  (DSP_EBASE + 0x40)
411 #define DSP_EUSER2                  (DSP_EBASE + 0x41)
412 #define DSP_EUSER3                  (DSP_EBASE + 0x42)
413 #define DSP_EUSER4                  (DSP_EBASE + 0x43)
414 #define DSP_EUSER5                  (DSP_EBASE + 0x44)
415 #define DSP_EUSER6                  (DSP_EBASE + 0x45)
416 #define DSP_EUSER7                  (DSP_EBASE + 0x46)
417 #define DSP_EUSER8                  (DSP_EBASE + 0x47)
418 #define DSP_EUSER9                  (DSP_EBASE + 0x48)
419 #define DSP_EUSER10                 (DSP_EBASE + 0x49)
420 #define DSP_EUSER11                 (DSP_EBASE + 0x4a)
421 #define DSP_EUSER12                 (DSP_EBASE + 0x4b)
422 #define DSP_EUSER13                 (DSP_EBASE + 0x4c)
423 #define DSP_EUSER14                 (DSP_EBASE + 0x4d)
424 #define DSP_EUSER15                 (DSP_EBASE + 0x4e)
425 #define DSP_EUSER16                 (DSP_EBASE + 0x4f)
426 
427 /* ========================================================================== */
428 /* FAILURE Codes : DEV                                                        */
429 /* ========================================================================== */
430 #define DEV_EBASE                   (DSP_COMP_EBASE + 0x000)
431 
432 /* -------------------------------------------------------------------------- */
433 /* The mini-driver expected a newer version of the class driver.              */
434 /* -------------------------------------------------------------------------- */
435 #define DEV_E_NEWWMD                (DEV_EBASE + 0x00)
436 
437 /* -------------------------------------------------------------------------- */
438 /* WMD_DRV_Entry function returned a NULL function interface table.           */
439 /* -------------------------------------------------------------------------- */
440 #define DEV_E_NULLWMDINTF           (DEV_EBASE + 0x01)
441 
442 /* ========================================================================== */
443 /* FAILURE Codes : LDR                                                        */
444 /* ========================================================================== */
445 #define LDR_EBASE                   (DSP_COMP_EBASE + 0x100)
446 
447 /* -------------------------------------------------------------------------- */
448 /* Insufficient memory to export class driver services.                       */
449 /* -------------------------------------------------------------------------- */
450 #define LDR_E_NOMEMORY              (LDR_EBASE + 0x00)
451 
452 /* -------------------------------------------------------------------------- */
453 /* Unable to find WMD file in system directory.                               */
454 /* -------------------------------------------------------------------------- */
455 #define LDR_E_FILEUNABLETOOPEN      (LDR_EBASE + 0x01)
456 
457 /* ========================================================================== */
458 /* FAILURE Codes : CFG                                                        */
459 /* ========================================================================== */
460 #define CFG_EBASE                   (DSP_COMP_EBASE + 0x200)
461 
462 /* -------------------------------------------------------------------------- */
463 /* Invalid pointer passed into a configuration module function                */
464 /* -------------------------------------------------------------------------- */
465 #define CFG_E_INVALIDPOINTER        (CFG_EBASE + 0x00)
466 
467 /* -------------------------------------------------------------------------- */
468 /* Invalid device node handle passed into a configuration module function.    */
469 /* -------------------------------------------------------------------------- */
470 #define CFG_E_INVALIDHDEVNODE       (CFG_EBASE + 0x01)
471 
472 /* -------------------------------------------------------------------------- */
473 /* Unable to retrieve resource information from the registry.                 */
474 /* -------------------------------------------------------------------------- */
475 #define CFG_E_RESOURCENOTAVAIL      (CFG_EBASE + 0x02)
476 
477 /* -------------------------------------------------------------------------- */
478 /* Unable to find board name key in registry.                                 */
479 /* -------------------------------------------------------------------------- */
480 #define CFG_E_INVALIDBOARDNAME      (CFG_EBASE + 0x03)
481 
482 /* -------------------------------------------------------------------------- */
483 /* Unable to find a device node in registry with given unit number.           */
484 /* -------------------------------------------------------------------------- */
485 #define CFG_E_INVALIDUNITNUM        (CFG_EBASE + 0x04)
486 
487 /* -------------------------------------------------------------------------- */
488 /* Insufficient buffer size                                                   */
489 /* -------------------------------------------------------------------------- */
490 #define CFG_E_INSUFFICIENTBUFSIZE   (CFG_EBASE + 0x05)
491 
492 /* ========================================================================== */
493 /* FAILURE Codes : BRD                                                        */
494 /* ========================================================================== */
495 #define BRD_EBASE                   (DSP_COMP_EBASE + 0x300)
496 
497 /* -------------------------------------------------------------------------- */
498 /* Board client does not have sufficient access rights for this operation.    */
499 /* -------------------------------------------------------------------------- */
500 #define BRD_E_ACCESSDENIED          (BRD_EBASE + 0x00)
501 
502 /* -------------------------------------------------------------------------- */
503 /* Unable to find trace buffer symbols in the DSP executable COFF file.       */
504 /* -------------------------------------------------------------------------- */
505 #define BRD_E_NOTRACEBUFFER         (BRD_EBASE + 0x01)
506 
507 /* -------------------------------------------------------------------------- */
508 /* Attempted to auto-start board, but no default DSP executable configured.   */
509 /* -------------------------------------------------------------------------- */
510 #define BRD_E_NOEXEC                (BRD_EBASE + 0x02)
511 
512 /* -------------------------------------------------------------------------- */
513 /* The operation failed because it was started from a wrong state             */
514 /* -------------------------------------------------------------------------- */
515 #define BRD_E_WRONGSTATE            (BRD_EBASE + 0x03)
516 
517 /* ========================================================================== */
518 /* FAILURE Codes : COD                                                        */
519 /* ========================================================================== */
520 #define COD_EBASE                   (DSP_COMP_EBASE + 0x400)
521 
522 /* -------------------------------------------------------------------------- */
523 /* No symbol table is loaded for this board.                                  */
524 /* -------------------------------------------------------------------------- */
525 #define COD_E_NOSYMBOLSLOADED       (COD_EBASE + 0x00)
526 
527 /* -------------------------------------------------------------------------- */
528 /* Symbol not found in for this board.                                        */
529 /* -------------------------------------------------------------------------- */
530 #define COD_E_SYMBOLNOTFOUND        (COD_EBASE + 0x01)
531 
532 /* -------------------------------------------------------------------------- */
533 /* ZL DLL module is not exporting the correct function interface.             */
534 /* -------------------------------------------------------------------------- */
535 #define COD_E_NOZLFUNCTIONS         (COD_EBASE + 0x02)
536 
537 /* -------------------------------------------------------------------------- */
538 /* Unable to initialize the ZL COFF parsing module.                           */
539 /* -------------------------------------------------------------------------- */
540 #define COD_E_ZLCREATEFAILED        (COD_EBASE + 0x03)
541 
542 /* -------------------------------------------------------------------------- */
543 /* Unable to open DSP executable COFF file.                                   */
544 /* -------------------------------------------------------------------------- */
545 #define COD_E_OPENFAILED            (COD_EBASE + 0x04)
546 
547 /* -------------------------------------------------------------------------- */
548 /* Unable to parse DSP executable COFF file.                                  */
549 /* -------------------------------------------------------------------------- */
550 #define COD_E_LOADFAILED            (COD_EBASE + 0x05)
551 
552 /* -------------------------------------------------------------------------- */
553 /* Unable to read DSP executable COFF file.                                   */
554 /* -------------------------------------------------------------------------- */
555 #define COD_E_READFAILED            (COD_EBASE + 0x06)
556 
557 /* ========================================================================== */
558 /* FAILURE Codes : CHNL                                                       */
559 /* ========================================================================== */
560 #define CHNL_EBASE                  (DSP_COMP_EBASE + 0x500)
561 
562 /* -------------------------------------------------------------------------- */
563 /* Attempt to created channel manager with too many channels.                 */
564 /* -------------------------------------------------------------------------- */
565 #define CHNL_E_MAXCHANNELS          (CHNL_EBASE + 0x00)
566 
567 /* -------------------------------------------------------------------------- */
568 /* No channel manager exists for this mini-driver.                            */
569 /* -------------------------------------------------------------------------- */
570 #define CHNL_E_NOMGR                (CHNL_EBASE + 0x01)
571 
572 /* -------------------------------------------------------------------------- */
573 /* No free channels are available.                                            */
574 /* -------------------------------------------------------------------------- */
575 #define CHNL_E_OUTOFSTREAMS         (CHNL_EBASE + 0x02)
576 
577 /* -------------------------------------------------------------------------- */
578 /* Channel ID is out of range.                                                */
579 /* -------------------------------------------------------------------------- */
580 #define CHNL_E_BADCHANID            (CHNL_EBASE + 0x03)
581 
582 /* -------------------------------------------------------------------------- */
583 /* Channel is already in use.                                                 */
584 /* -------------------------------------------------------------------------- */
585 #define CHNL_E_CHANBUSY             (CHNL_EBASE + 0x04)
586 
587 /* -------------------------------------------------------------------------- */
588 /* Invalid channel mode argument.                                             */
589 /* -------------------------------------------------------------------------- */
590 #define CHNL_E_BADMODE              (CHNL_EBASE + 0x05)
591 
592 /* -------------------------------------------------------------------------- */
593 /* dwTimeOut parameter was CHNL_IOCNOWAIT, yet no I/O completions were        */
594 /* queued.                                                                    */
595 /* -------------------------------------------------------------------------- */
596 #define CHNL_E_NOIOC                (CHNL_EBASE + 0x06)
597 
598 /* -------------------------------------------------------------------------- */
599 /* I/O has been cancelled on this channel.                                    */
600 /* -------------------------------------------------------------------------- */
601 #define CHNL_E_CANCELLED            (CHNL_EBASE + 0x07)
602 
603 /* -------------------------------------------------------------------------- */
604 /* End of stream was already requested on this output channel.                */
605 /* -------------------------------------------------------------------------- */
606 #define CHNL_E_EOS                  (CHNL_EBASE + 0x09)
607 
608 /* -------------------------------------------------------------------------- */
609 /* Unable to create the channel event object.                                 */
610 /* -------------------------------------------------------------------------- */
611 #define CHNL_E_CREATEEVENT          (CHNL_EBASE + 0x0A)
612 
613 /* -------------------------------------------------------------------------- */
614 /* Board name and unit number do not identify a valid board name.             */
615 /* -------------------------------------------------------------------------- */
616 #define CHNL_E_BRDID                (CHNL_EBASE + 0x0B)
617 
618 /* -------------------------------------------------------------------------- */
619 /* Invalid IRQ configured for this WMD for this system.                       */
620 /* -------------------------------------------------------------------------- */
621 #define CHNL_E_INVALIDIRQ           (CHNL_EBASE + 0x0C)
622 
623 /* -------------------------------------------------------------------------- */
624 /* DSP word size of zero configured for this device.                          */
625 /* -------------------------------------------------------------------------- */
626 #define CHNL_E_INVALIDWORDSIZE      (CHNL_EBASE + 0x0D)
627 
628 /* -------------------------------------------------------------------------- */
629 /* A zero length memory base was specified for a shared memory class driver.  */
630 /* -------------------------------------------------------------------------- */
631 #define CHNL_E_INVALIDMEMBASE       (CHNL_EBASE + 0x0E)
632 
633 /* -------------------------------------------------------------------------- */
634 /* Memory map is not configured, or unable to map physical to linear          */
635 /* address.                                                                   */
636 /* -------------------------------------------------------------------------- */
637 #define CHNL_E_NOMEMMAP             (CHNL_EBASE + 0x0F)
638 
639 /* -------------------------------------------------------------------------- */
640 /* Attempted to create a channel manager  when one already exists.            */
641 /* -------------------------------------------------------------------------- */
642 #define CHNL_E_MGREXISTS            (CHNL_EBASE + 0x10)
643 
644 /* -------------------------------------------------------------------------- */
645 /* Unable to plug channel ISR for configured IRQ.                             */
646 /* -------------------------------------------------------------------------- */
647 #define CHNL_E_ISR                  (CHNL_EBASE + 0x11)
648 
649 /* -------------------------------------------------------------------------- */
650 /* No free I/O request packets are available.                                 */
651 /* -------------------------------------------------------------------------- */
652 #define CHNL_E_NOIORPS              (CHNL_EBASE + 0x12)
653 
654 /* -------------------------------------------------------------------------- */
655 /* Buffer size is larger than the size of physical channel.                   */
656 /* -------------------------------------------------------------------------- */
657 #define CHNL_E_BUFSIZE              (CHNL_EBASE + 0x13)
658 
659 /* -------------------------------------------------------------------------- */
660 /* User cannot mark end of stream on an input channel.                        */
661 /* -------------------------------------------------------------------------- */
662 #define CHNL_E_NOEOS                (CHNL_EBASE + 0x14)
663 
664 /* -------------------------------------------------------------------------- */
665 /* Wait for flush operation on an output channel timed out.                   */
666 /* -------------------------------------------------------------------------- */
667 #define CHNL_E_WAITTIMEOUT          (CHNL_EBASE + 0x15)
668 
669 /* -------------------------------------------------------------------------- */
670 /* User supplied hEvent must be specified with pstrEventName attribute        */
671 /* -------------------------------------------------------------------------- */
672 #define CHNL_E_BADUSEREVENT         (CHNL_EBASE + 0x16)
673 
674 /* -------------------------------------------------------------------------- */
675 /* Illegal user event name specified                                          */
676 /* -------------------------------------------------------------------------- */
677 #define CHNL_E_USEREVENTNAME        (CHNL_EBASE + 0x17)
678 
679 /* -------------------------------------------------------------------------- */
680 /* Unable to prepare buffer specified                                         */
681 /* -------------------------------------------------------------------------- */
682 #define CHNL_E_PREPFAILED           (CHNL_EBASE + 0x18)
683 
684 /* -------------------------------------------------------------------------- */
685 /* Unable to Unprepare buffer specified                                       */
686 /* -------------------------------------------------------------------------- */
687 #define CHNL_E_UNPREPFAILED         (CHNL_EBASE + 0x19)
688 
689 /* ========================================================================== */
690 /* FAILURE Codes : SYNC                                                       */
691 /* ========================================================================== */
692 #define SYNC_EBASE                  (DSP_COMP_EBASE + 0x600)
693 
694 /* -------------------------------------------------------------------------- */
695 /* Wait on a kernel event failed.                                             */
696 /* -------------------------------------------------------------------------- */
697 #define SYNC_E_FAIL                 (SYNC_EBASE + 0x00)
698 
699 /* -------------------------------------------------------------------------- */
700 /* Timeout expired while waiting for event to be signalled.                   */
701 /* -------------------------------------------------------------------------- */
702 #define SYNC_E_TIMEOUT              (SYNC_EBASE + 0x01)
703 
704 /* ========================================================================== */
705 /* FAILURE Codes : WMD                                                        */
706 /* ========================================================================== */
707 #define WMD_EBASE                   (DSP_COMP_EBASE + 0x700)
708 
709 /* -------------------------------------------------------------------------- */
710 /* A test of hardware assumptions or integrity failed.                        */
711 /* -------------------------------------------------------------------------- */
712 #define WMD_E_HARDWARE              (WMD_EBASE + 0x00)
713 
714 /* -------------------------------------------------------------------------- */
715 /* One or more configuration parameters violated WMD hardware assumptions.    */
716 /* -------------------------------------------------------------------------- */
717 #define WMD_E_BADCONFIG             (WMD_EBASE + 0x01)
718 
719 /* -------------------------------------------------------------------------- */
720 /* Timeout occurred waiting for a response from the hardware.                 */
721 /* -------------------------------------------------------------------------- */
722 #define WMD_E_TIMEOUT               (WMD_EBASE + 0x02)
723 
724 /* ========================================================================== */
725 /* FAILURE Codes : REG                                                        */
726 /* ========================================================================== */
727 #define REG_EBASE                   (DSP_COMP_EBASE + 0x800)
728 
729 /* -------------------------------------------------------------------------- */
730 /* Invalid subkey parameter.                                                  */
731 /* -------------------------------------------------------------------------- */
732 #define REG_E_INVALIDSUBKEY         (REG_EBASE + 0x00)
733 
734 /* -------------------------------------------------------------------------- */
735 /* Invalid entry parameter.                                                   */
736 /* -------------------------------------------------------------------------- */
737 #define REG_E_INVALIDENTRY          (REG_EBASE + 0x01)
738 
739 /* -------------------------------------------------------------------------- */
740 /* No more registry values.                                                   */
741 /* -------------------------------------------------------------------------- */
742 #define REG_E_NOMOREITEMS           (REG_EBASE + 0x02)
743 
744 /* -------------------------------------------------------------------------- */
745 /* Insufficient space to hold data in registry value.                         */
746 /* -------------------------------------------------------------------------- */
747 #define REG_E_MOREDATA              (REG_EBASE + 0x03)
748 
749 /* ========================================================================== */
750 /* FAILURE Codes : KFILE                                                      */
751 /* ========================================================================== */
752 #define KFILE_EBASE                 (DSP_COMP_EBASE + 0x900)
753 
754 /* -------------------------------------------------------------------------- */
755 /* Invalid file handle.                                                       */
756 /* -------------------------------------------------------------------------- */
757 #define E_KFILE_INVALIDHANDLE       (KFILE_EBASE + 0x01)
758 
759 /* -------------------------------------------------------------------------- */
760 /* Bad file name.                                                             */
761 /* -------------------------------------------------------------------------- */
762 #define E_KFILE_BADFILENAME         (KFILE_EBASE + 0x02)
763 
764 /* -------------------------------------------------------------------------- */
765 /* Invalid file mode.                                                         */
766 /* -------------------------------------------------------------------------- */
767 #define E_KFILE_INVALIDMODE         (KFILE_EBASE + 0x03)
768 
769 /* -------------------------------------------------------------------------- */
770 /* No resources available.                                                    */
771 /* -------------------------------------------------------------------------- */
772 #define E_KFILE_NORESOURCES         (KFILE_EBASE + 0x04)
773 
774 /* -------------------------------------------------------------------------- */
775 /* Invalid file buffer        .                                               */
776 /* -------------------------------------------------------------------------- */
777 #define E_KFILE_INVALIDBUFFER       (KFILE_EBASE + 0x05)
778 
779 /* -------------------------------------------------------------------------- */
780 /* Bad origin argument.                                                       */
781 /* -------------------------------------------------------------------------- */
782 #define E_KFILE_BADORIGINFLAG       (KFILE_EBASE + 0x06)
783 
784 /* -------------------------------------------------------------------------- */
785 /* Invalid file offset value.                                                 */
786 /* -------------------------------------------------------------------------- */
787 #define E_KFILE_INVALIDOFFSET       (KFILE_EBASE + 0x07)
788 
789 /* -------------------------------------------------------------------------- */
790 /* General KFILE error condition                                              */
791 /* -------------------------------------------------------------------------- */
792 #define E_KFILE_ERROR               (KFILE_EBASE + 0x08)
793 
794 #ifdef __cplusplus
795 }
796 #endif
797 #endif				/* ERRBASE_ */
798