]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - processor-sdk/performance-audio-sr.git/blob - psdk_cust/ipc_3_43_00_00_eng/docs/cdoc/ti/sdo/ipc/family/c6a8149/InterruptDsp-src.html
Update test_arm and test_dsp projects for new locations of IPC and PDK eng
[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>