00001
00043 #if !defined (DRV_PMGR_H)
00044 #define DRV_PMGR_H
00045
00046
00047 #if defined (__cplusplus)
00048 extern "C" {
00049 #endif
00050
00051
00052 #include <linux/ioctl.h>
00053
00054
00055 #include <dsplink.h>
00056 #include <_dsplink.h>
00057 #include <procdefs.h>
00058 #include <linkcfgdefs.h>
00059 #include <_idm_usr.h>
00060 #if defined (POOL_COMPONENT)
00061 #include <pooldefs.h>
00062 #endif
00063 #if defined (MSGQ_COMPONENT)
00064 #include <msgqdefs.h>
00065 #endif
00066 #if defined (CHNL_COMPONENT)
00067 #include <chnldefs.h>
00068 #endif
00069 #if defined (RINGIO_COMPONENT)
00070 #include <_ringiodefs.h>
00071 #include <ringiodefs.h>
00072 #endif
00073 #if defined (MPCS_COMPONENT)
00074 #include <mpcsdefs.h>
00075 #endif
00076 #if defined (MPLIST_COMPONENT)
00077 #include <mplistdefs.h>
00078 #endif
00079
00080
00081 #if defined (DDSP_PROFILE)
00082 #include <profile.h>
00083 #endif
00084
00085
00086
00087
00088
00089
00090
00091 #define GROUP_BASE_CMD 0xe0
00092
00093
00094
00095
00096
00097
00098
00099 #define BASE_CMD 0x10
00100
00101
00102
00103
00104
00105
00106
00107 #define CMD_PROC_SETUP _IOWR(GROUP_BASE_CMD,\
00108 BASE_CMD + 1u,\
00109 CMD_Args)
00110
00111 #define CMD_PROC_DESTROY _IOWR(GROUP_BASE_CMD,\
00112 BASE_CMD + 2u,\
00113 CMD_Args)
00114
00115
00116 #define CMD_PROC_START _IOWR(GROUP_BASE_CMD,\
00117 BASE_CMD + 3u,\
00118 CMD_Args)
00119
00120 #define CMD_PROC_STOP _IOWR(GROUP_BASE_CMD,\
00121 BASE_CMD + 4u,\
00122 CMD_Args)
00123
00124 #define CMD_PROC_LOAD _IOWR(GROUP_BASE_CMD,\
00125 BASE_CMD + 5u,\
00126 CMD_Args)
00127
00128 #define CMD_PROC_LOADSECTION _IOWR(GROUP_BASE_CMD,\
00129 BASE_CMD + 6u,\
00130 CMD_Args)
00131
00132 #define CMD_PROC_DETACH _IOWR(GROUP_BASE_CMD,\
00133 BASE_CMD + 7u,\
00134 CMD_Args)
00135
00136 #define CMD_PROC_ATTACH _IOWR(GROUP_BASE_CMD,\
00137 BASE_CMD + 8u,\
00138 CMD_Args)
00139
00140 #define CMD_PROC_GETSTATE _IOWR(GROUP_BASE_CMD,\
00141 BASE_CMD + 9u,\
00142 CMD_Args)
00143
00144 #define CMD_PROC_CONTROL _IOWR(GROUP_BASE_CMD,\
00145 BASE_CMD + 10u,\
00146 CMD_Args)
00147
00148 #define CMD_PROC_READ _IOWR(GROUP_BASE_CMD,\
00149 BASE_CMD + 11u,\
00150 CMD_Args)
00151
00152 #define CMD_PROC_WRITE _IOWR(GROUP_BASE_CMD,\
00153 BASE_CMD + 12u,\
00154 CMD_Args)
00155
00156 #define CMD_PROC_GETSYMBOLADDRESS _IOWR(GROUP_BASE_CMD,\
00157 BASE_CMD + 13u,\
00158 CMD_Args)
00159
00160 #define CMD_PROC_ISLASTDESTROY _IOWR(GROUP_BASE_CMD,\
00161 BASE_CMD + 14u,\
00162 CMD_Args)
00163
00164 #define CMD_PROC_ISLASTDETACH _IOWR(GROUP_BASE_CMD,\
00165 BASE_CMD + 15u,\
00166 CMD_Args)
00167
00168
00169 #if defined (DDSP_PROFILE)
00170 #define CMD_PROC_INSTRUMENT _IOWR(GROUP_BASE_CMD,\
00171 BASE_CMD + 16u,\
00172 CMD_Args)
00173
00174 #endif
00175
00176 #if defined (DDSP_DEBUG)
00177 #define CMD_PROC_DEBUG _IOWR(GROUP_BASE_CMD,\
00178 BASE_CMD + 17u,\
00179 CMD_Args)
00180
00181 #endif
00182
00183 #define CMD_PROC_CLEANUP _IOWR(GROUP_BASE_CMD,\
00184 BASE_CMD + 18u,\
00185 CMD_Args)
00186
00187 #define CMD_PROC_ADDRTRANSLATE _IOWR(GROUP_BASE_CMD,\
00188 BASE_CMD + 19u,\
00189 CMD_Args)
00190
00191
00192
00193 #if defined (CHNL_COMPONENT)
00194
00195
00196
00197
00198
00199
00200 #define CMD_CHNL_CREATE _IOWR(GROUP_BASE_CMD,\
00201 BASE_CMD + 20u,\
00202 CMD_Args)
00203
00204 #define CMD_CHNL_DELETE _IOWR(GROUP_BASE_CMD,\
00205 BASE_CMD + 21u,\
00206 CMD_Args)
00207
00208 #define CMD_CHNL_ISSUE _IOWR(GROUP_BASE_CMD,\
00209 BASE_CMD + 22u,\
00210 CMD_Args)
00211
00212 #define CMD_CHNL_RECLAIM _IOWR(GROUP_BASE_CMD,\
00213 BASE_CMD + 23u,\
00214 CMD_Args)
00215
00216 #define CMD_CHNL_ALLOCATEBUFFER _IOWR(GROUP_BASE_CMD,\
00217 BASE_CMD + 24u,\
00218 CMD_Args)
00219
00220 #define CMD_CHNL_FREEBUFFER _IOWR(GROUP_BASE_CMD,\
00221 BASE_CMD + 25u,\
00222 CMD_Args)
00223
00224 #define CMD_CHNL_IDLE _IOWR(GROUP_BASE_CMD,\
00225 BASE_CMD + 26u,\
00226 CMD_Args)
00227
00228 #define CMD_CHNL_FLUSH _IOWR(GROUP_BASE_CMD,\
00229 BASE_CMD + 27u,\
00230 CMD_Args)
00231
00232 #define CMD_CHNL_CONTROL _IOWR(GROUP_BASE_CMD,\
00233 BASE_CMD + 28u,\
00234 CMD_Args)
00235
00236
00237
00238 #if defined (DDSP_PROFILE)
00239 #define CMD_CHNL_INSTRUMENT _IOWR(GROUP_BASE_CMD,\
00240 BASE_CMD + 29u,\
00241 CMD_Args)
00242
00243 #endif
00244
00245
00246 #if defined (DDSP_DEBUG)
00247 #define CMD_CHNL_DEBUG _IOWR(GROUP_BASE_CMD,\
00248 BASE_CMD + 30u,\
00249 CMD_Args)
00250
00251 #endif
00252 #endif
00253
00254
00255
00256
00257
00258
00259
00260
00261 #if defined (CHNL_COMPONENT)
00262 #define CMD_DRV_GETCHNLMAPTABLE_ADDRESS _IOWR(GROUP_BASE_CMD,\
00263 BASE_CMD + 31u,\
00264 CMD_Args)
00265
00266 #endif
00267
00268
00269 #if defined (MSGQ_COMPONENT)
00270
00271
00272
00273
00274
00275
00276 #define CMD_MSGQ_TRANSPORTOPEN _IOWR(GROUP_BASE_CMD,\
00277 BASE_CMD + 32u,\
00278 CMD_Args)
00279
00280 #define CMD_MSGQ_TRANSPORTCLOSE _IOWR(GROUP_BASE_CMD,\
00281 BASE_CMD + 33u,\
00282 CMD_Args)
00283
00284 #define CMD_MSGQ_OPEN _IOWR(GROUP_BASE_CMD,\
00285 BASE_CMD + 34u,\
00286 CMD_Args)
00287
00288 #define CMD_MSGQ_CLOSE _IOWR(GROUP_BASE_CMD,\
00289 BASE_CMD + 35u,\
00290 CMD_Args)
00291
00292 #define CMD_MSGQ_LOCATE _IOWR(GROUP_BASE_CMD,\
00293 BASE_CMD + 36u,\
00294 CMD_Args)
00295
00296 #define CMD_MSGQ_LOCATEASYNC _IOWR(GROUP_BASE_CMD,\
00297 BASE_CMD + 37u,\
00298 CMD_Args)
00299
00300 #define CMD_MSGQ_RELEASE _IOWR(GROUP_BASE_CMD,\
00301 BASE_CMD + 38u,\
00302 CMD_Args)
00303
00304 #define CMD_MSGQ_ALLOC _IOWR(GROUP_BASE_CMD,\
00305 BASE_CMD + 39u,\
00306 CMD_Args)
00307
00308 #define CMD_MSGQ_FREE _IOWR(GROUP_BASE_CMD,\
00309 BASE_CMD + 40u,\
00310 CMD_Args)
00311
00312 #define CMD_MSGQ_PUT _IOWR(GROUP_BASE_CMD,\
00313 BASE_CMD + 41u,\
00314 CMD_Args)
00315
00316 #define CMD_MSGQ_GET _IOWR(GROUP_BASE_CMD,\
00317 BASE_CMD + 42u,\
00318 CMD_Args)
00319
00320 #define CMD_MSGQ_SETERRORHANDLER _IOWR(GROUP_BASE_CMD,\
00321 BASE_CMD + 43u,\
00322 CMD_Args)
00323
00324 #define CMD_MSGQ_COUNT _IOWR(GROUP_BASE_CMD,\
00325 BASE_CMD + 44u,\
00326 CMD_Args)
00327
00328
00329
00330 #if defined (DDSP_PROFILE)
00331 #define CMD_MSGQ_INSTRUMENT _IOWR(GROUP_BASE_CMD,\
00332 BASE_CMD + 45u,\
00333 CMD_Args)
00334
00335 #endif
00336
00337
00338 #if defined (DDSP_DEBUG)
00339 #define CMD_MSGQ_DEBUG _IOWR(GROUP_BASE_CMD,\
00340 BASE_CMD + 46u,\
00341 CMD_Args)
00342
00343 #endif
00344
00345
00346 #endif
00347
00348
00349
00350
00351
00352
00353
00354 #define CMD_POOL_OPEN _IOWR(GROUP_BASE_CMD,\
00355 BASE_CMD + 47u,\
00356 CMD_Args)
00357
00358 #define CMD_POOL_CLOSE _IOWR(GROUP_BASE_CMD,\
00359 BASE_CMD + 48u,\
00360 CMD_Args)
00361
00362 #define CMD_POOL_ALLOC _IOWR(GROUP_BASE_CMD,\
00363 BASE_CMD + 49u,\
00364 CMD_Args)
00365
00366 #define CMD_POOL_FREE _IOWR(GROUP_BASE_CMD,\
00367 BASE_CMD + 50u,\
00368 CMD_Args)
00369
00370 #define CMD_POOL_TRANSLATEADDR _IOWR(GROUP_BASE_CMD,\
00371 BASE_CMD + 51u,\
00372 CMD_Args)
00373
00374 #define CMD_POOL_RECONFIGURE _IOWR(GROUP_BASE_CMD,\
00375 BASE_CMD + 52u,\
00376 CMD_Args)
00377
00378 #define CMD_POOL_WRITEBACK _IOWR(GROUP_BASE_CMD,\
00379 BASE_CMD + 53u,\
00380 CMD_Args)
00381
00382 #define CMD_POOL_INVALIDATE _IOWR(GROUP_BASE_CMD,\
00383 BASE_CMD + 54u,\
00384 CMD_Args)
00385
00386
00387 #if defined (MPCS_COMPONENT)
00388
00389
00390
00391
00392
00393
00394 #define CMD_MPCS_MAPREGION _IOWR(GROUP_BASE_CMD,\
00395 BASE_CMD + 55u,\
00396 CMD_Args)
00397
00398 #define CMD_MPCS_UNMAPREGION _IOWR(GROUP_BASE_CMD,\
00399 BASE_CMD + 56u,\
00400 CMD_Args)
00401
00402 #endif
00403
00404
00405
00406
00407
00408
00409
00410 #define CMD_NOTIFY_INITIALIZE _IOWR(GROUP_BASE_CMD,\
00411 BASE_CMD + 57u,\
00412 CMD_Args)
00413
00414 #define CMD_NOTIFY_FINALIZE _IOWR(GROUP_BASE_CMD,\
00415 BASE_CMD + 58u,\
00416 CMD_Args)
00417
00418 #define CMD_NOTIFY_REGISTER _IOWR(GROUP_BASE_CMD,\
00419 BASE_CMD + 59u,\
00420 CMD_Args)
00421
00422 #define CMD_NOTIFY_UNREGISTER _IOWR(GROUP_BASE_CMD,\
00423 BASE_CMD + 60u,\
00424 CMD_Args)
00425
00426 #define CMD_NOTIFY_NOTIFY _IOWR(GROUP_BASE_CMD,\
00427 BASE_CMD + 61u,\
00428 CMD_Args)
00429
00430
00431 #if defined (DDSP_PROFILE)
00432 #define CMD_NOTIFY_INSTRUMENT _IOWR(GROUP_BASE_CMD,\
00433 BASE_CMD + 62u,\
00434 CMD_Args)
00435
00436 #endif
00437
00438
00439
00440
00441
00442
00443
00444 #define CMD_RINGIO_MAPREGION _IOWR(GROUP_BASE_CMD,\
00445 BASE_CMD + 63u,\
00446 CMD_Args)
00447
00448 #define CMD_RINGIO_UNMAPREGION _IOWR(GROUP_BASE_CMD,\
00449 BASE_CMD + 64u,\
00450 CMD_Args)
00451
00452
00453
00454
00455
00456
00457
00458
00459 #define CMD_MPLIST_MAPREGION _IOWR(GROUP_BASE_CMD,\
00460 BASE_CMD + 65u,\
00461 CMD_Args)
00462
00463 #define CMD_MPLIST_UNMAPREGION _IOWR(GROUP_BASE_CMD,\
00464 BASE_CMD + 66u,\
00465 CMD_Args)
00466
00467
00468
00469
00470
00471
00472
00473
00474 #define CMD_IDM_INIT _IOWR(GROUP_BASE_CMD,\
00475 BASE_CMD + 67u,\
00476 CMD_Args)
00477
00478 #define CMD_IDM_EXIT _IOWR(GROUP_BASE_CMD,\
00479 BASE_CMD + 68u,\
00480 CMD_Args)
00481
00482 #define CMD_IDM_CREATE _IOWR(GROUP_BASE_CMD,\
00483 BASE_CMD + 69u,\
00484 CMD_Args)
00485
00486 #define CMD_IDM_DELETE _IOWR(GROUP_BASE_CMD,\
00487 BASE_CMD + 70u,\
00488 CMD_Args)
00489
00490 #define CMD_IDM_ACQUIREID _IOWR(GROUP_BASE_CMD,\
00491 BASE_CMD + 71u,\
00492 CMD_Args)
00493
00494 #define CMD_IDM_RELEASEID _IOWR(GROUP_BASE_CMD,\
00495 BASE_CMD + 72u,\
00496 CMD_Args)
00497
00498
00505 #define DRV_INITIALIZE(handle) DRV_Initialize (handle, NULL)
00506
00513 #define DRV_FINALIZE(handle) DRV_Finalize (handle, NULL)
00514
00521 #define DRV_INVOKE(handle,cmd,arg1) DRV_Invoke (handle, cmd, arg1, NULL)
00522
00523
00536 typedef struct CMD_Args_tag {
00537 DSP_STATUS apiStatus ;
00538 union {
00539 struct {
00540 LINKCFG_Object * linkCfg ;
00541 } procSetupArgs ;
00542
00543 struct {
00544 Char8 dummy ;
00545 } procDestroyArgs ;
00546
00547 struct {
00548 ProcessorId procId ;
00549 } procStartArgs ;
00550
00551 struct {
00552 ProcessorId procId ;
00553 } procStopArgs ;
00554
00555 struct {
00556 ProcessorId procId ;
00557 Char8 * symbolName ;
00558 Uint32 * dspAddr ;
00559 } procGetSymbolAddressArgs ;
00560
00561 struct {
00562 ProcessorId procId ;
00563 PROC_Attrs * attr ;
00564 } procAttachArgs ;
00565
00566 struct {
00567 ProcessorId procId ;
00568 } procDetachArgs ;
00569
00570 struct {
00571 ProcessorId procId ;
00572 Char8 * imagePath ;
00573 Uint32 argc ;
00574 Char8 ** argv ;
00575 } procLoadArgs ;
00576
00577 struct {
00578 ProcessorId procId ;
00579 Uint32 dspAddr ;
00580 Uint32 numBytes ;
00581 Pvoid buffer ;
00582 } procReadArgs ;
00583
00584 struct {
00585 ProcessorId procId ;
00586 Uint32 dspAddr ;
00587 Uint32 numBytes ;
00588 Pvoid buffer ;
00589 } procWriteArgs ;
00590
00591 struct {
00592 ProcessorId procId ;
00593 PROC_State * procState ;
00594 } procGetStateArgs ;
00595
00596 struct {
00597 ProcessorId procId ;
00598 Int32 cmd ;
00599 Pvoid arg ;
00600 } procControlArgs ;
00601
00602 struct {
00603 ProcessorId procId ;
00604 Char8 * imagePath ;
00605 Uint32 sectID ;
00606 } procLoadSectionArgs ;
00607
00608 struct {
00609 Bool lastDestroy ;
00610 } procIsLastDestroyArgs ;
00611
00612 struct {
00613 ProcessorId procId ;
00614 Bool lastDetach ;
00615 } procIsLastDetachArgs ;
00616
00617 #if defined (DDSP_PROFILE)
00618 struct {
00619 ProcessorId procId ;
00620 PROC_Instrument * procStats ;
00621 } procInstrumentArgs ;
00622 #endif
00623
00624 #if defined (DDSP_DEBUG)
00625 struct {
00626 ProcessorId procId ;
00627 } procDebugArgs ;
00628 #endif
00629
00630 struct {
00631 ProcessorId procId ;
00632 Uint32 bufAddr ;
00633 Uint32 * physAddr ;
00634 } procAddrTranslateArgs ;
00635
00636 #if defined (CHNL_COMPONENT)
00637 struct {
00638 ProcessorId procId ;
00639 ChannelId chnlId ;
00640 ChannelAttrs * attrs ;
00641 } chnlCreateArgs ;
00642
00643 struct {
00644 ProcessorId procId ;
00645 ChannelId chnlId ;
00646 } chnlDeleteArgs ;
00647
00648 struct {
00649 ProcessorId procId ;
00650 ChannelId chnlId ;
00651 ChannelIOInfo * ioReq ;
00652 } chnlIssueArgs ;
00653
00654 struct {
00655 ProcessorId procId ;
00656 ChannelId chnlId ;
00657 Uint32 timeout ;
00658 ChannelIOInfo * ioReq ;
00659 } chnlReclaimArgs ;
00660
00661 struct {
00662 ProcessorId procId ;
00663 ChannelId chnlId ;
00664 Char8 ** bufArray ;
00665 Uint32 size ;
00666 Uint32 numBufs ;
00667 } chnlAllocateBufferArgs ;
00668
00669 struct {
00670 ProcessorId procId ;
00671 ChannelId chnlId ;
00672 Char8 ** bufArray ;
00673 Uint32 numBufs ;
00674 } chnlFreeBufferArgs ;
00675
00676 struct {
00677 ProcessorId procId ;
00678 ChannelId chnlId ;
00679 } chnlFlushArgs ;
00680
00681 struct {
00682 ProcessorId procId ;
00683 ChannelId chnlId ;
00684 } chnlIdleArgs ;
00685
00686 struct {
00687 ProcessorId procId ;
00688 ChannelId chnlId ;
00689 Int32 cmd ;
00690 Pvoid arg ;
00691 } chnlControlArgs ;
00692
00693 #if defined (DDSP_PROFILE)
00694 struct {
00695 ProcessorId procId ;
00696 ChannelId chnlId ;
00697 CHNL_Instrument * chnlStats ;
00698 } chnlInstrumentArgs ;
00699 #endif
00700
00701 #if defined (DDSP_DEBUG)
00702 struct {
00703 ProcessorId procId ;
00704 ChannelId chnlId ;
00705 } chnlDebugArgs ;
00706 #endif
00707 #endif
00708
00709 struct {
00710 Void * phyAddr ;
00711 } drvPhyAddrArgs ;
00712
00713 #if defined (MSGQ_COMPONENT)
00714 struct {
00715 ProcessorId procId ;
00716 Pvoid attrs ;
00717 } msgqTransportOpenArgs ;
00718
00719 struct {
00720 ProcessorId procId ;
00721 } msgqTransportCloseArgs ;
00722
00723 struct {
00724 Pstr queueName ;
00725 MSGQ_Queue * msgqQueue ;
00726 MSGQ_Attrs * attrs ;
00727 } msgqOpenArgs ;
00728
00729 struct {
00730 MSGQ_Queue msgqQueue ;
00731 } msgqCloseArgs ;
00732
00733 struct {
00734 Pstr queueName ;
00735 MSGQ_Queue * msgqQueue ;
00736 MSGQ_LocateAttrs * attrs ;
00737 } msgqLocateArgs ;
00738
00739 struct {
00740 Pstr queueName ;
00741 MSGQ_Queue replyQueue ;
00742 MSGQ_LocateAsyncAttrs * attrs ;
00743 } msgqLocateAsyncArgs ;
00744
00745 struct {
00746 MSGQ_Queue msgqQueue ;
00747 } msgqReleaseArgs ;
00748
00749 struct {
00750 PoolId poolId ;
00751 Uint16 size ;
00752 Uint32 msgAddr ;
00753 } msgqAllocArgs ;
00754
00755 struct {
00756 MSGQ_Msg msg ;
00757 } msgqFreeArgs ;
00758
00759 struct {
00760 MSGQ_Queue msgqQueue ;
00761 MSGQ_Msg msg ;
00762 } msgqPutArgs ;
00763
00764 struct {
00765 Uint32 poolId ;
00766 MSGQ_Queue msgqQueue ;
00767 Uint32 timeout ;
00768 Uint32 msgAddr ;
00769 } msgqGetArgs ;
00770
00771 struct {
00772 MSGQ_Queue errorQueue ;
00773 PoolId poolId ;
00774 } msgqSetErrorHandlerArgs ;
00775
00776 struct {
00777 MSGQ_Queue msgqQueue ;
00778 Uint16 * count ;
00779 } msgqCountArgs ;
00780
00781 #if defined (DDSP_PROFILE)
00782 struct {
00783 MSGQ_Queue msgqQueue ;
00784 MSGQ_Instrument * retVal ;
00785 } msgqInstrumentArgs ;
00786 #endif
00787
00788 #if defined (DDSP_DEBUG)
00789 struct {
00790 MSGQ_Queue msgqQueue ;
00791 } msgqDebugArgs ;
00792 #endif
00793 #endif
00794
00795 struct {
00796 PoolId poolId ;
00797 Pvoid params ;
00798 } poolOpenArgs ;
00799
00800 struct {
00801 PoolId poolId ;
00802 } poolCloseArgs ;
00803
00804 #if defined (POOL_COMPONENT)
00805 struct {
00806 PoolId poolId ;
00807 Uint32 size ;
00808 Pvoid * bufPtr ;
00809 } poolAllocArgs ;
00810
00811 struct {
00812 PoolId poolId ;
00813 Uint32 size ;
00814 Pvoid bufPtr ;
00815 } poolFreeArgs ;
00816
00817 struct {
00818 PoolId poolId ;
00819 Pvoid * dstAddr ;
00820 AddrType dstAddrType ;
00821 Pvoid srcAddr ;
00822 AddrType srcAddrType ;
00823 } poolTranslateAddrArgs ;
00824
00825 struct {
00826 PoolId poolId ;
00827 Uint32 size ;
00828 Pvoid bufPtr ;
00829 } poolWBArgs ;
00830
00831 struct {
00832 PoolId poolId ;
00833 Uint32 size ;
00834 Pvoid bufPtr ;
00835 } poolInvArgs ;
00836 #endif
00837
00838 #if defined (RINGIO_COMPONENT)
00839 struct {
00840 RingIO_MemInfo ringioRegionArgs ;
00841 } ringIoArgs ;
00842 #endif
00843
00844 #if defined (MPLIST_COMPONENT)
00845 struct {
00846 MPLIST_MemInfo mplistRegionArgs ;
00847 } mplistArgs ;
00848 #endif
00849
00850 #if defined (MPCS_COMPONENT)
00851 struct {
00852 MPCS_MemInfo mpcsRegionArgs ;
00853 } mpcsMapArgs ;
00854 #endif
00855
00856 #if defined (NOTIFY_COMPONENT)
00857 struct {
00858 ProcessorId dspId ;
00859 } notifyInitializeArgs ;
00860
00861 struct {
00862 ProcessorId dspId ;
00863 } notifyFinalizeArgs ;
00864
00865 struct {
00866 ProcessorId dspId ;
00867 Uint32 ipsId ;
00868 Uint32 eventNo ;
00869 Pvoid fnNotifyCbck ;
00870 Pvoid cbckArg ;
00871 } notifyRegisterArgs ;
00872
00873 struct {
00874 ProcessorId dspId ;
00875 Uint32 ipsId ;
00876 Uint32 eventNo ;
00877 Pvoid fnNotifyCbck ;
00878 Pvoid cbckArg ;
00879 } notifyUnregisterArgs ;
00880
00881 struct {
00882 ProcessorId dspId ;
00883 Uint32 ipsId ;
00884 Uint32 eventNo ;
00885 Uint32 payload ;
00886 } notifyNotifyArgs ;
00887 #endif
00888
00889 #if defined (DDSP_PROFILE)
00890 struct {
00891 ProcessorId dspId ;
00892 Uint32 ipsId ;
00893 IPS_Instrument * ipsStats ;
00894 } ipsInstrumentArgs ;
00895 #endif
00896
00897 struct {
00898 Uint32 key ;
00899 IDM_Attrs * attrs ;
00900 } idmCreateArgs ;
00901
00902 struct {
00903 Uint32 key ;
00904 } idmDeleteArgs ;
00905
00906 struct {
00907 Uint32 key ;
00908 Pstr idKey ;
00909 Uint32 * id ;
00910 } idmAcquireIdArgs ;
00911
00912 struct {
00913 Uint32 key ;
00914 Uint32 id ;
00915 } idmReleaseIdArgs ;
00916 } apiArgs ;
00917 } CMD_Args ;
00918
00919
00920 #if defined (__cplusplus)
00921 }
00922 #endif
00923
00924
00925 #endif