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 51extern "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