Home | History | Annotate | Download | only in inc
      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