[processor-sdk/performance-audio-sr.git] / psdk_cust / ipc_3_43_00_00_eng / docs / cdoc / ti / sdo / ipc / family / c6a8149 / InterruptDsp-src.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <html><head><title>module ti.sdo.ipc.family.c6a8149.InterruptDsp</title>
3 <meta name="googlebot" content="noindex,nofollow">
4 <link rel="stylesheet" type="text/css" href="../../../../../src.css"/>
5 </head>
6 <body>
7 <pre class=src>
8 1 <span class="comment">/*
9 </span> 2 <span class="comment"> * Copyright (c) 2012-2013, Texas Instruments Incorporated
10 </span> 3 <span class="comment"> * All rights reserved.
11 </span> 4 <span class="comment"> *
12 </span> 5 <span class="comment"> * Redistribution and use in source and binary forms, with or without
13 </span> 6 <span class="comment"> * modification, are permitted provided that the following conditions
14 </span> 7 <span class="comment"> * are met:
15 </span> 8 <span class="comment"> *
16 </span> 9 <span class="comment"> * * Redistributions of source code must retain the above copyright
17 </span> 10 <span class="comment"> * notice, this list of conditions and the following disclaimer.
18 </span> 11 <span class="comment"> *
19 </span> 12 <span class="comment"> * * Redistributions in binary form must reproduce the above copyright
20 </span> 13 <span class="comment"> * notice, this list of conditions and the following disclaimer in the
21 </span> 14 <span class="comment"> * documentation and/or other materials provided with the distribution.
22 </span> 15 <span class="comment"> *
23 </span> 16 <span class="comment"> * * Neither the name of Texas Instruments Incorporated nor the names of
24 </span> 17 <span class="comment"> * its contributors may be used to endorse or promote products derived
25 </span> 18 <span class="comment"> * from this software without specific prior written permission.
26 </span> 19 <span class="comment"> *
27 </span> 20 <span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
28 </span> 21 <span class="comment"> * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
29 </span> 22 <span class="comment"> * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
30 </span> 23 <span class="comment"> * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
31 </span> 24 <span class="comment"> * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
32 </span> 25 <span class="comment"> * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
33 </span> 26 <span class="comment"> * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
34 </span> 27 <span class="comment"> * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
35 </span> 28 <span class="comment"> * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
36 </span> 29 <span class="comment"> * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
37 </span> 30 <span class="comment"> * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
38 </span> 31 <span class="comment"> */</span>
39 32 <span class="comment">/*
40 </span> 33 <span class="comment"> * ======== InterruptDsp.xdc ========
41 </span> 34 <span class="comment"> */</span>
42 35
43 36 import ti.sdo.utils.MultiProc;
44 37
45 38 <span class="xdoc">/*!
46 </span> 39 <span class="xdoc"> * ======== InterruptDsp ========
47 </span> 40 <span class="xdoc"> * TI81xx/DSP interrupt manager
48 </span> 41 <span class="xdoc"> */</span>
49 42
50 43 <span class=key>module</span> InterruptDsp <span class=key>inherits</span> ti.sdo.ipc.notifyDrivers.IInterrupt
51 44 {
52 45 <span class="xdoc">/*! <b>@_nodoc</b> */</span>
53 46 <span class=key>metaonly</span> <span class=key>struct</span> InterruptDataView {
54 47 String remoteProcName;
55 48 Bool registered;
56 49 Bool enabled;
57 50 Bool intPending;
58 51 Ptr payload;
59 52 };
60 53
61 54 <span class="xdoc">/*! <b>@_nodoc</b> */</span>
62 55 @Facet
63 56 <span class=key>metaonly</span> <span class=key>config</span> xdc.rov.ViewInfo.Instance rovViewInfo =
64 57 xdc.rov.ViewInfo.create({
65 58 viewMap: [
66 59 [<span class="string">'IncomingInterrupts'</span>,
67 60 {
68 61 type: xdc.rov.ViewInfo.MODULE_DATA,
69 62 viewInitFxn: <span class="string">'viewInitInterrupt'</span>,
70 63 structName: <span class="string">'InterruptDataView'</span>
71 64 }
72 65 ],
73 66 ]
74 67 });
75 68
76 69 <span class="comment">/* Base address for the Mailbox subsystem */</span>
77 70 <span class=key>config</span> UInt32 mailboxBaseAddr = 0x080C8000;
78 71
79 72 <span class="comment">/* Base address for the EVE Mailbox */</span>
80 73 <span class=key>config</span> UInt32 mailboxEveBaseAddr = 0x5908B000;
81 74
82 75 <span class=key>internal</span>:
83 76
84 77 <span class=key>config</span> UInt dspProcId = MultiProc.INVALIDID;
85 78 <span class=key>config</span> UInt hostProcId = MultiProc.INVALIDID;
86 79 <span class=key>config</span> UInt videoProcId = MultiProc.INVALIDID;
87 80 <span class=key>config</span> UInt vpssProcId = MultiProc.INVALIDID;
88 81 <span class=key>config</span> UInt eveProcId = MultiProc.INVALIDID;
89 82
90 83 <span class="xdoc">/*! Function table */</span>
91 84 <span class=key>struct</span> FxnTable {
92 85 Fxn func;
93 86 UArg arg;
94 87 }
95 88
96 89 <span class="xdoc">/*!
97 </span> 90 <span class="xdoc"> * ======== intShmStub ========
98 </span> 91 <span class="xdoc"> * Stub to be plugged for system mailbox
99 </span> 92 <span class="xdoc"> */</span>
100 93 Void intShmStub(UArg arg);
101 94
102 95 <span class="xdoc">/*!
103 </span> 96 <span class="xdoc"> * ======== intEveShmStub ========
104 </span> 97 <span class="xdoc"> * Stub to be plugged for EVE mailbox
105 </span> 98 <span class="xdoc"> */</span>
106 99 Void intEveShmStub(UArg arg);
107 100
108 101 <span class=key>struct</span> Module_State {
109 102 FxnTable fxnTable[4];
110 103 UInt numPlugged; <span class="comment">/* # of times the interrupt was registered */</span>
111 104 };
112 105 }
113 </pre>
114 </body></html>