]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - processor-sdk/pdk.git/blob - packages/ti/drv/mcasp/soc/am571x/mcasp_soc.c
mcasp-lld: add to PDK
[processor-sdk/pdk.git] / packages / ti / drv / mcasp / soc / am571x / mcasp_soc.c
1 /*
2  * mcasp_soc.c
3  *
4  * This file contains MCASP IP & driver specifications pertaining to a given SOC (AM571x)
5  *
6  * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
7  *
8  *
9  *  Redistribution and use in source and binary forms, with or without
10  *  modification, are permitted provided that the following conditions
11  *  are met:
12  *
13  *    Redistributions of source code must retain the above copyright
14  *    notice, this list of conditions and the following disclaimer.
15  *
16  *    Redistributions in binary form must reproduce the above copyright
17  *    notice, this list of conditions and the following disclaimer in the
18  *    documentation and/or other materials provided with the
19  *    distribution.
20  *
21  *    Neither the name of Texas Instruments Incorporated nor the names of
22  *    its contributors may be used to endorse or promote products derived
23  *    from this software without specific prior written permission.
24  *
25  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
26  *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
27  *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
28  *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
29  *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30  *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31  *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
32  *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
33  *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
34  *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
35  *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36  *
37 */
39 /* MCASP Driver Includes. */
41 /* CSL MCASP Register Layer */
42 #include <ti/csl/cslr_mcasp.h>
44 #include <ti/csl/cslr_device.h>
47 /*============================================================================*/
48 /*                           IMPORTED VARIABLES                               */
49 /*============================================================================*/
53 /* ========================================================================== */
54 /*                           MODULE FUNCTIONS                                 */
55 /* ========================================================================== */
56 /**
57  * \brief   Initializes McASP driver's data structures
58  *
59  *          This function initializes the McASP driver's data structures
60  *          including instance objects and channel objects. This is the 
61  *          MCASP Driver Initialization API which needs to be invoked by 
62  *          the users to initialize the MCASP peripheral. This call is 
63  *          *mandatory* and should be called before calling any of the 
64  *          other driver API's.  This can be modified by customers for 
65  *          their application and configuration.
66  *
67  * \return  None
68  */
69 #include <mcasp_drv.h>
70 #include <mcasp_osal.h>
71 #include <ti/drv/mcasp/soc/mcasp_soc.h>
72 #include <include/McaspLocal.h>
73 #include "string.h"
75 extern Mcasp_Module_State Mcasp_module ;
76 extern Mcasp_Object Mcasp_Instances[MCASP_CNT];
77 extern Mcasp_TempBuffer Mcasp_muteBuf[MCASP_CNT];
79 void McaspDevice_init(void)
81     {
82         Int i;
84         for (i = 0; i < (int32_t)MCASP_CNT; i++)
85         {
86             /* have to initialize  ally */
87             Mcasp_module.inUse[i] = (Bool)0;/* FALSE; */
88             memset((void *)&Mcasp_Instances[i], 0x0, sizeof(Mcasp_Object));
90             Mcasp_module.isrObject[i].isIsrRegistered[0] = (Bool)0;/* FALSE; */
91             Mcasp_module.isrObject[i].isIsrRegistered[1] = (Bool)0;/* FALSE; */
92             Mcasp_module.isrObject[i].chanEnabled[0] = (Bool)0;/* FALSE; */
93             Mcasp_module.isrObject[i].chanEnabled[1] = (Bool)0;/* FALSE; */
94             Mcasp_module.isrObject[i].instHandle = 0;/* NULL; */
95             Mcasp_module.isrObject[i].isrSwiTaskHandle = 0;/* NULL; */
97             if (i == 0)
98             {
99                 Mcasp_deviceInstInfo[i].ditSupport = (Bool)1;/* TRUE; */
100                 Mcasp_deviceInstInfo[i].baseAddress =
101                     (CSL_McaspRegs *)CSL_DSP_MCASP1_CFG_REGS;
102                 Mcasp_deviceInstInfo[i].fifoAddress =
103                     (CSL_AfifoRegs *)(CSL_DSP_MCASP1_CFG_REGS + 0x1000U);
104                 Mcasp_deviceInstInfo[i].dataAddress =
105                     (CSL_AdataRegs *)CSL_DSP_MCASP1_REGS;
107                 Mcasp_deviceInstInfo[i].numSerializers = CSL_MCASP_0_NumSerializers;
108                 Mcasp_deviceInstInfo[i].txMuxInEvent=CSL_XBAR_McASP1_IRQ_AXEVT;
109                 Mcasp_deviceInstInfo[i].rxMuxInEvent=CSL_XBAR_McASP1_IRQ_AREVT;
110                 Mcasp_deviceInstInfo[i].txMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
111                 Mcasp_deviceInstInfo[i].rxMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
112                 Mcasp_deviceInstInfo[i].muxNum=MCASP_INVALID_MUX_NUM;
113             
114 #ifdef _TMS320C6X
115                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
116                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
117                 Mcasp_deviceInstInfo[i].txIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
118                 Mcasp_deviceInstInfo[i].rxIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
119 #elif defined(__TI_ARM_V7M4__)
120                 Mcasp_deviceInstInfo[i].txIntNum = MCASP_UNASSIGNED_EVENTNUM;
121                 Mcasp_deviceInstInfo[i].rxIntNum = MCASP_UNASSIGNED_EVENTNUM;
122                 Mcasp_deviceInstInfo[i].cpuTxEventNumber =  MCASP_UNASSIGNED_EVENTNUM;
123                 Mcasp_deviceInstInfo[i].cpuRxEventNumber =  MCASP_UNASSIGNED_EVENTNUM;
124 #else
125                 /* Default crossbar mapping for MPU */
126                 Mcasp_deviceInstInfo[i].txMuxOutEvent=CSL_XBAR_INST_MPU_IRQ_108;
127                 Mcasp_deviceInstInfo[i].rxMuxOutEvent=CSL_XBAR_INST_MPU_IRQ_109;
128                 Mcasp_deviceInstInfo[i].txIntNum = 140;
129                 Mcasp_deviceInstInfo[i].rxIntNum = 141;
130                 Mcasp_deviceInstInfo[i].cpuTxEventNumber =  140;
131                 Mcasp_deviceInstInfo[i].cpuRxEventNumber =  141;
132                 Mcasp_deviceInstInfo[i].muxNum=MUXINTCP_CROSSBAR_MUXNUM_MPU;
133 #endif                  
134                 Mcasp_deviceInstInfo[i].rxDmaEventNumber =
135                     (uint32_t)CSL_EDMA3_CHA_MCASP0_RX;
136                 Mcasp_deviceInstInfo[i].txDmaEventNumber =
137                     (uint32_t)CSL_EDMA3_CHA_MCASP0_TX;
138             }
140             else if (i == 1)
141             {
142                 Mcasp_deviceInstInfo[i].ditSupport = (Bool)1;/* TRUE; */
143                 Mcasp_deviceInstInfo[i].baseAddress =
144                     (CSL_McaspRegs *)CSL_DSP_MCASP2_CFG_REGS;
145                 Mcasp_deviceInstInfo[i].fifoAddress =
146                     (CSL_AfifoRegs *)(CSL_DSP_MCASP2_CFG_REGS + 0x1000U);
147                 Mcasp_deviceInstInfo[i].dataAddress =
148                     (CSL_AdataRegs *)CSL_DSP_MCASP2_REGS;
150                 Mcasp_deviceInstInfo[i].numSerializers = CSL_MCASP_1_NumSerializers;
151                 Mcasp_deviceInstInfo[i].txMuxInEvent=CSL_XBAR_McASP2_IRQ_AXEVT;
152                 Mcasp_deviceInstInfo[i].rxMuxInEvent=CSL_XBAR_McASP2_IRQ_AREVT;
153                 Mcasp_deviceInstInfo[i].txMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
154                 Mcasp_deviceInstInfo[i].rxMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
155                 Mcasp_deviceInstInfo[i].muxNum=MCASP_INVALID_MUX_NUM;
156             
157 #ifdef _TMS320C6X
158                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
159                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
160                 Mcasp_deviceInstInfo[i].txIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
161                 Mcasp_deviceInstInfo[i].rxIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
162 #else
163                 Mcasp_deviceInstInfo[i].txIntNum = MCASP_UNASSIGNED_INTNUM;
164                 Mcasp_deviceInstInfo[i].rxIntNum = MCASP_UNASSIGNED_INTNUM;
165                 Mcasp_deviceInstInfo[i].cpuTxEventNumber =  MCASP_UNASSIGNED_EVENTNUM;
166                 Mcasp_deviceInstInfo[i].cpuRxEventNumber =  MCASP_UNASSIGNED_EVENTNUM;
167 #endif                  
168                 Mcasp_deviceInstInfo[i].rxDmaEventNumber =
169                     (uint32_t)CSL_EDMA3_CHA_MCASP1_RX;
170                 Mcasp_deviceInstInfo[i].txDmaEventNumber =
171                     (uint32_t)CSL_EDMA3_CHA_MCASP1_TX;
172             }
174             else if (i == 2)
175             {
176                 Mcasp_deviceInstInfo[i].ditSupport = (Bool)1;/* TRUE; */
177                 Mcasp_deviceInstInfo[i].baseAddress =
178                     (CSL_McaspRegs *)CSL_DSP_MCASP3_CFG_REGS;
179                 Mcasp_deviceInstInfo[i].fifoAddress =
180                     (CSL_AfifoRegs *)(CSL_DSP_MCASP3_CFG_REGS + 0x1000U);
181                 Mcasp_deviceInstInfo[i].dataAddress =
182                     (CSL_AdataRegs *)CSL_DSP_MCASP3_REGS;
184                 Mcasp_deviceInstInfo[i].numSerializers = CSL_MCASP_2_NumSerializers;
185                 Mcasp_deviceInstInfo[i].txMuxInEvent=CSL_XBAR_McASP3_IRQ_AXEVT;
186                 Mcasp_deviceInstInfo[i].rxMuxInEvent=CSL_XBAR_McASP3_IRQ_AREVT;
187                 Mcasp_deviceInstInfo[i].txMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
188                 Mcasp_deviceInstInfo[i].rxMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
189                 Mcasp_deviceInstInfo[i].muxNum=MCASP_INVALID_MUX_NUM;
190             
191 #ifdef _TMS320C6X
192                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
193                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
194                 Mcasp_deviceInstInfo[i].txIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
195                 Mcasp_deviceInstInfo[i].rxIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
196 #else
197                 Mcasp_deviceInstInfo[i].txIntNum = MCASP_UNASSIGNED_INTNUM;
198                 Mcasp_deviceInstInfo[i].rxIntNum = MCASP_UNASSIGNED_INTNUM;
199                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
200                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
201 #endif                  
202                 Mcasp_deviceInstInfo[i].rxDmaEventNumber =
203                     (uint32_t)CSL_EDMA3_CHA_MCASP2_RX;
204                 Mcasp_deviceInstInfo[i].txDmaEventNumber =
205                     (uint32_t)CSL_EDMA3_CHA_MCASP2_TX;
206             }
208             else if (i == 3)
209             {
210                 Mcasp_deviceInstInfo[i].ditSupport = (Bool)1;/* TRUE; */
211                 Mcasp_deviceInstInfo[i].baseAddress =
212                     (CSL_McaspRegs *)CSL_DSP_MCASP4_CFG_REGS;
213                 Mcasp_deviceInstInfo[i].fifoAddress =
214                     (CSL_AfifoRegs *)(CSL_DSP_MCASP4_CFG_REGS + 0x1000U);
215                 Mcasp_deviceInstInfo[i].dataAddress =
216                     (CSL_AdataRegs *)CSL_DSP_MCASP4_DAT_REGS;
218                 Mcasp_deviceInstInfo[i].numSerializers = CSL_MCASP_3_NumSerializers;
219                 Mcasp_deviceInstInfo[i].txMuxInEvent=CSL_XBAR_McASP4_IRQ_AXEVT;
220                 Mcasp_deviceInstInfo[i].rxMuxInEvent=CSL_XBAR_McASP4_IRQ_AREVT;
221                 Mcasp_deviceInstInfo[i].txMuxOutEvent=MCASP_UNASSIGNED_EVENTNUM;
222                 Mcasp_deviceInstInfo[i].rxMuxOutEvent=MCASP_UNASSIGNED_EVENTNUM;
223                 Mcasp_deviceInstInfo[i].muxNum=MCASP_INVALID_MUX_NUM;
224             
225 #ifdef _TMS320C6X
226                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
227                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
228                 Mcasp_deviceInstInfo[i].txIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
229                 Mcasp_deviceInstInfo[i].rxIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
230 #else
231                 Mcasp_deviceInstInfo[i].txIntNum = MCASP_UNASSIGNED_INTNUM;
232                 Mcasp_deviceInstInfo[i].rxIntNum = MCASP_UNASSIGNED_INTNUM;
233                 Mcasp_deviceInstInfo[i].cpuTxEventNumber =  MCASP_UNASSIGNED_EVENTNUM;
234                 Mcasp_deviceInstInfo[i].cpuRxEventNumber =  MCASP_UNASSIGNED_EVENTNUM;
235 #endif                  
236                 Mcasp_deviceInstInfo[i].rxDmaEventNumber =
237                     (uint32_t)CSL_EDMA3_CHA_MCASP3_RX;
238                 Mcasp_deviceInstInfo[i].txDmaEventNumber =
239                     (uint32_t)CSL_EDMA3_CHA_MCASP3_TX;
240             }
242             else if (i == 4)
243             {
244                 Mcasp_deviceInstInfo[i].ditSupport = (Bool)1;/* TRUE; */
245                 Mcasp_deviceInstInfo[i].baseAddress =
246                     (CSL_McaspRegs *)CSL_DSP_MCASP5_CFG_REGS;
247                 Mcasp_deviceInstInfo[i].fifoAddress =
248                     (CSL_AfifoRegs *)(CSL_DSP_MCASP5_CFG_REGS + 0x1000U);
249                 Mcasp_deviceInstInfo[i].dataAddress =
250                     (CSL_AdataRegs *)CSL_DSP_MCASP5_DAT_REGS;
252                 Mcasp_deviceInstInfo[i].numSerializers = CSL_MCASP_4_NumSerializers;
253                 Mcasp_deviceInstInfo[i].txMuxInEvent=CSL_XBAR_McASP5_IRQ_AXEVT;
254                 Mcasp_deviceInstInfo[i].rxMuxInEvent=CSL_XBAR_McASP5_IRQ_AREVT;
255                 Mcasp_deviceInstInfo[i].txMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
256                 Mcasp_deviceInstInfo[i].rxMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
257                 Mcasp_deviceInstInfo[i].muxNum=MCASP_INVALID_MUX_NUM;
258             
259 #ifdef _TMS320C6X
260                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
261                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
262                 Mcasp_deviceInstInfo[i].txIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
263                 Mcasp_deviceInstInfo[i].rxIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
264 #else
265                 Mcasp_deviceInstInfo[i].txIntNum = MCASP_UNASSIGNED_INTNUM;
266                 Mcasp_deviceInstInfo[i].rxIntNum = MCASP_UNASSIGNED_INTNUM;
267                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
268                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
269 #endif                  
271                 Mcasp_deviceInstInfo[i].rxDmaEventNumber =
272                     (uint32_t)CSL_EDMA3_CHA_MCASP4_RX;
273                 Mcasp_deviceInstInfo[i].txDmaEventNumber =
274                     (uint32_t)CSL_EDMA3_CHA_MCASP4_TX;
275             }
277             else if (i == 5)
278             {
279                 Mcasp_deviceInstInfo[i].ditSupport = (Bool)1;/* TRUE; */
280                 Mcasp_deviceInstInfo[i].baseAddress =
281                     (CSL_McaspRegs *)CSL_DSP_MCASP6_CFG_REGS;
282                 Mcasp_deviceInstInfo[i].fifoAddress =
283                     (CSL_AfifoRegs *)(CSL_DSP_MCASP6_CFG_REGS + 0x1000U);
284                 Mcasp_deviceInstInfo[i].dataAddress =
285                     (CSL_AdataRegs *)CSL_DSP_MCASP6_DAT_REGS;
287                 Mcasp_deviceInstInfo[i].numSerializers = CSL_MCASP_5_NumSerializers;
288                 Mcasp_deviceInstInfo[i].txMuxInEvent=CSL_XBAR_McASP6_IRQ_AXEVT;
289                 Mcasp_deviceInstInfo[i].rxMuxInEvent=CSL_XBAR_McASP6_IRQ_AREVT;
290                 Mcasp_deviceInstInfo[i].txMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
291                 Mcasp_deviceInstInfo[i].rxMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
292                 Mcasp_deviceInstInfo[i].muxNum=MCASP_INVALID_MUX_NUM;
293             
294 #ifdef _TMS320C6X
295                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
296                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
297                 Mcasp_deviceInstInfo[i].txIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
298                 Mcasp_deviceInstInfo[i].rxIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
299 #else
300                 Mcasp_deviceInstInfo[i].txIntNum = MCASP_UNASSIGNED_INTNUM;
301                 Mcasp_deviceInstInfo[i].rxIntNum = MCASP_UNASSIGNED_INTNUM;
302                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
303                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
304 #endif                  
305                 Mcasp_deviceInstInfo[i].rxDmaEventNumber =
306                     (uint32_t)CSL_EDMA3_CHA_MCASP5_RX;
307                 Mcasp_deviceInstInfo[i].txDmaEventNumber =
308                     (uint32_t)CSL_EDMA3_CHA_MCASP5_TX;
309             }
311             else if (i == 6)
312             {
313                 Mcasp_deviceInstInfo[i].ditSupport = (Bool)1;/* TRUE; */
314                 Mcasp_deviceInstInfo[i].baseAddress =
315                     (CSL_McaspRegs *)CSL_DSP_MCASP7_CFG_REGS;
316                 Mcasp_deviceInstInfo[i].fifoAddress =
317                     (CSL_AfifoRegs *)(CSL_DSP_MCASP7_CFG_REGS + 0x1000U);
318                 Mcasp_deviceInstInfo[i].dataAddress =
319                     (CSL_AdataRegs *)CSL_DSP_MCASP7_DAT_REGS;
321                 Mcasp_deviceInstInfo[i].numSerializers = CSL_MCASP_6_NumSerializers;
322                 Mcasp_deviceInstInfo[i].txMuxInEvent=CSL_XBAR_McASP7_IRQ_AXEVT;
323                 Mcasp_deviceInstInfo[i].rxMuxInEvent=CSL_XBAR_McASP7_IRQ_AREVT;
324                 Mcasp_deviceInstInfo[i].txMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
325                 Mcasp_deviceInstInfo[i].rxMuxOutEvent=MCASP_UNASSIGNED_MUX_EVENTNUM;
326                 Mcasp_deviceInstInfo[i].muxNum=MCASP_INVALID_MUX_NUM;
327             
328 #ifdef _TMS320C6X
329                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
330                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
331                 Mcasp_deviceInstInfo[i].txIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
332                 Mcasp_deviceInstInfo[i].rxIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
333 #else
334                 Mcasp_deviceInstInfo[i].txIntNum = MCASP_UNASSIGNED_INTNUM;
335                 Mcasp_deviceInstInfo[i].rxIntNum = MCASP_UNASSIGNED_INTNUM;
336                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
337                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
338 #endif                  
339                 Mcasp_deviceInstInfo[i].rxDmaEventNumber =
340                     (uint32_t)CSL_EDMA3_CHA_MCASP6_RX;
341                 Mcasp_deviceInstInfo[i].txDmaEventNumber =
342                     (uint32_t)CSL_EDMA3_CHA_MCASP6_TX;
343             }
345             else
346             {
347                 Mcasp_deviceInstInfo[i].ditSupport = (Bool)1;/* TRUE; */
348                 Mcasp_deviceInstInfo[i].baseAddress =
349                     (CSL_McaspRegs *)CSL_DSP_MCASP8_CFG_REGS;
350                 Mcasp_deviceInstInfo[i].fifoAddress =
351                     (CSL_AfifoRegs *)(CSL_DSP_MCASP8_CFG_REGS + 0x1000U);
352                 Mcasp_deviceInstInfo[i].dataAddress =
353                     (CSL_AdataRegs *)CSL_DSP_MCASP8_DAT_REGS;
355                 Mcasp_deviceInstInfo[i].numSerializers = CSL_MCASP_7_NumSerializers;
356                 Mcasp_deviceInstInfo[i].txMuxInEvent=CSL_XBAR_McASP8_IRQ_AXEVT;
357                 Mcasp_deviceInstInfo[i].rxMuxInEvent=CSL_XBAR_McASP8_IRQ_AREVT;
358                 Mcasp_deviceInstInfo[i].txMuxOutEvent=MCASP_UNASSIGNED_INTNUM;
359                 Mcasp_deviceInstInfo[i].rxMuxOutEvent=MCASP_UNASSIGNED_INTNUM;
360                 Mcasp_deviceInstInfo[i].muxNum=MCASP_INVALID_MUX_NUM;
361             
362 #ifdef _TMS320C6X
363                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
364                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
365                 Mcasp_deviceInstInfo[i].txIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
366                 Mcasp_deviceInstInfo[i].rxIntNum = OSAL_REGINT_INTVEC_EVENT_COMBINER;
367 #else
368                 Mcasp_deviceInstInfo[i].txIntNum = MCASP_UNASSIGNED_INTNUM;
369                 Mcasp_deviceInstInfo[i].rxIntNum = MCASP_UNASSIGNED_INTNUM;
370                 Mcasp_deviceInstInfo[i].cpuTxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
371                 Mcasp_deviceInstInfo[i].cpuRxEventNumber = MCASP_UNASSIGNED_EVENTNUM;
372 #endif                  
373                 Mcasp_deviceInstInfo[i].rxDmaEventNumber =
374                     (uint32_t)CSL_EDMA3_CHA_MCASP7_RX;
375                 Mcasp_deviceInstInfo[i].txDmaEventNumber =
376                     (uint32_t)CSL_EDMA3_CHA_MCASP7_TX;
377             }
378         }
380         /* intialise the loop job buffers and the mute buffers for all instances  */
381     #ifdef Mcasp_LOOPJOB_ENABLED
382         memset((void *)Mcasp_loopDstBuf, 0x0,
383                sizeof(Mcasp_TempBuffer) * MCASP_CNT);
384         memset((void *)Mcasp_loopSrcBuf, 0x0,
385                sizeof(Mcasp_TempBuffer) * MCASP_CNT);
386     #else /* Mcasp_LOOPJOB_ENABLED */
387         memset((void *)Mcasp_muteBuf, 0x0,
388                sizeof(Mcasp_TempBuffer) * MCASP_CNT);
389     #endif
392 /* ========================================================================== */
393 /*                              END OF FILE                                   */
394 /* ========================================================================== */