1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 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 120 121
122