]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - ipc/ipcdev.git/blob - packages/ti/grcm/RcmClient.xs
Merge tag 'test_omx_omap5' into cleanup
[ipc/ipcdev.git] / packages / ti / grcm / RcmClient.xs
1 /*
2  * Copyright (c) 2011-2013, 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  */
34 /*
35  *  ======== RcmClient.xs ========
36  *
37  */
39 /*
40  *  ======== module$use ========
41  *  Use other modules required by this module
42  */
43 function module$use()
44 {
45     var Settings = xdc.module(this.$package.$name + '.Settings');
47     /* Settings.ipc config param cannot be undefined */
48     if (Settings.ipc == undefined) {
49         throw new Error("the " + Settings.$name + ".ipc config param"
50         + " is undefined, it must be assigned a value by"
51         + " the application config script.");
52     }
54     xdc.useModule('xdc.runtime.Diags');
55     xdc.useModule('xdc.runtime.Error');
56     xdc.useModule('xdc.runtime.Log');
57     xdc.useModule('xdc.runtime.Memory');
58     xdc.useModule('xdc.runtime.Startup');
59     xdc.useModule('xdc.runtime.knl.GateThread');
60     xdc.useModule('xdc.runtime.knl.Semaphore');
61     xdc.useModule('xdc.runtime.knl.SemThread');
62     xdc.useModule('xdc.runtime.knl.SyncSemThread');
64     if (Settings.IpcSupport_ti_sdo_ipc == Settings.ipc) {
65         xdc.useModule('ti.sdo.ipc.MessageQ');
66         xdc.useModule('ti.sdo.utils.List');
67     }
68     else if (Settings.IpcSupport_ti_syslink_ipc == Settings.ipc) {
69         xdc.loadPackage('ti.syslink');
70     }
71     else {
72         throw new Error("unknown value for " + Settings.$name
73         + ".ipc config param (" + Settings.ipc + ")");
74     }
75 }