1 /*
2 * Copyright (c) 2010, Texas Instruments Incorporated
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 *
16 * * Neither the name of Texas Instruments Incorporated nor the names of
17 * its contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 *
32 */
33
34 /*!
35 * ======== Settings ========
36 * Dsplink ipc Settings.
37 */
38 @Template("./Ipc.xdt")
39
40 metaonly module Ipc inherits ti.sdo.ce.ipc.IIpc {
41
42 /*!
43 * ======== maxTimeout ========
44 * Maximum timeout allowed.
45 *
46 * Users can specify a value here to indicate a 'cap' on the time
47 * which the IPC APIs in this package will wait before timing out.
48 * If the 'maxTimeout' value is encountered in a running system, it
49 * is treated as a system error. Resources will be unlocked (e.g.
50 * MSGQ_pend() will return, releasing any DSP Link resources), and
51 * the thread that exceeded its maxTimeout will spin forever, never
52 * returning. It will need to be deleted by another "monitor process".
53 *
54 * This can be used in a system to detect if a remote processor has
55 * become unresponsive.
56 *
57 * The default is 0xffffffff, which indicates that there is no cap and
58 * the underyling APIs can wait forever if so instructed.
59 */
60 config UInt32 maxTimeout = 0xffffffff;
61
62 /*!
63 * ======== dspLinkCfg ========
64 * Use a specific DspLink configuration. This parameter does not need
65 * to be set if using the DspLinkCfg provided with Codec Engine.
66 * This parameter provides a default memory map and power control
67 * settings for supported platforms.
68 */
69 config IDspLinkCfg.Module dspLinkCfg;
70
71 /*!
72 * ======== armCommMsgSize ========
73 * Default size for the Arm-DSP communication messages (MSGQ messages).
74 */
75 config UInt32 armCommMsgSize = 4 * 1024;
76
77 /*!
78 * ======== armCommNumMsgs ========
79 * Number of <commMsgSize>-sized messages used for Arm-DSP communication.
80 */
81 config UInt32 armCommNumMsgs = 64;
82
83 /*!
84 * ======== commLocateRetries ========
85 * number of times to retry Comm_locate() -- to find DSP server's MSGQ --
86 * before giving up.
87 */
88 config int commLocateRetries = 20;
89
90 /*!
91 * ======== useLinkArbiter ========
92 * Control flag to indicate if Codec Engine should use the Link Arbiter
93 * Daemon (LAD) to arbitrate DSPLINK APIs that need arbitration. Set to
94 * false means LAD should not be used; set to true means LAD should be
95 * used.
96 *
97 * This feature may not be available on all devices.
98 */
99 config Bool useLinkArbiter = false;
100
101 /*!
102 * ======== usePowerManagement ========
103 * If set to true, will attempt to include power-management code
104 * where applicable. If left undefined, an appropriate default value
105 * will be assigned based on the device type.
106 *
107 * This feature may not be available on all devices.
108 */
109 config bool usePowerManagement;
110
111
112 /*!
113 * ======== debug ========
114 * Enable the debug profile of the dsplink ipc module.
115 */
116 config Bool debug = false;
117 }
118 /*
119 * @(#) ti.sdo.ce.ipc.dsplink; 2, 0, 1,182; 12-2-2010 21:24:21; /db/atree/library/trees/ce/ce-r11x/src/ xlibrary
120
121 */
122