Added meta-only modules to handle package dependencies.
authorRamsey Harris <ramsey@ti.com>
Tue, 9 Apr 2013 21:40:20 +0000 (14:40 -0700)
committerRamsey Harris <ramsey@ti.com>
Tue, 9 Apr 2013 21:40:20 +0000 (14:40 -0700)
packages/ti/ipc/ipcmgr/IpcMgr.xdc [new file with mode: 0644]
packages/ti/ipc/ipcmgr/IpcMgr.xs [new file with mode: 0644]
packages/ti/ipc/mm/MmRpc.c
packages/ti/ipc/mm/MmServiceMgr.c
packages/ti/ipc/mm/MmServiceMgr.h
packages/ti/ipc/mm/MmServiceMgr.xdc [new file with mode: 0644]
packages/ti/ipc/mm/MmServiceMgr.xs [new file with mode: 0644]
packages/ti/ipc/mm/package.xdc
packages/ti/ipc/mm/package.xs

diff --git a/packages/ti/ipc/ipcmgr/IpcMgr.xdc b/packages/ti/ipc/ipcmgr/IpcMgr.xdc
new file mode 100644 (file)
index 0000000..14c1b0a
--- /dev/null
@@ -0,0 +1,62 @@
+/*
+ * Copyright (c) 2013, Texas Instruments Incorporated
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * *  Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * *  Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * *  Neither the name of Texas Instruments Incorporated nor the names of
+ *    its contributors may be used to endorse or promote products derived
+ *    from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+ * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ *  ======== IpcMgr.xdc ========
+ */
+package ti.ipc.ipcmgr;
+
+/*!
+ *  ======== IpcMgr ========
+ *  IPC Manager
+ */
+metaonly module IpcMgr
+{
+    /*!
+     *  Transport combinations
+     *
+     *  IpcMgr supports the following transport combinations.
+     */
+    enum TransCombo {
+        TransCombo_RPMSG,               //! RPMessage only
+        TransCombo_RPMSG_MESSAGEQ,      //! RPMessage over MessageQ
+        TransCombo_RPMSG_IPC            //! RpMessage plus IPC between slaves
+    };
+
+    /*!
+     *  Specifies which transport combination will be used
+     *
+     *  This config param must be set in the application config script.
+     *  It has no default value.
+     */
+    config TransCombo transportCombo;
+}
diff --git a/packages/ti/ipc/ipcmgr/IpcMgr.xs b/packages/ti/ipc/ipcmgr/IpcMgr.xs
new file mode 100644 (file)
index 0000000..649308c
--- /dev/null
@@ -0,0 +1,62 @@
+/*
+ * Copyright (c) 2013, Texas Instruments Incorporated
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * *  Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * *  Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * *  Neither the name of Texas Instruments Incorporated nor the names of
+ *    its contributors may be used to endorse or promote products derived
+ *    from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+ * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ *  ======== IpcMgr.xs ========
+ */
+
+
+/*
+ *  ======== module$use ========
+ *  Use other modules required by this module
+ */
+function module$use()
+{
+    var IpcMgr = this;
+
+    switch (IpcMgr.transportCombo) {
+
+        case IpcMgr.TransCombo_RPMSG:
+            xdc.loadPackage('ti.ipc.rpmsg');
+            break;
+
+        case IpcMgr.TransCombo_RMSG_MESSAGEQ:
+            xdc.useModule('ti.ipc.namesrv.NameServerRemoteRpmsg');
+            xdc.loadPackage('ti.ipc.rpmsg');
+            xdc.useModule('ti.ipc.transports.TransportRpmsgSetup');
+            xdc.loadPackage('xdc.runtime');
+            break;
+
+        case IpcMgr.TransCombo_IPC:
+            break;
+    }
+}
index 811661c3c020b10ad03273c89946ae4a299de4d4..e5275b725e3f78712283b49eeb4f20e390fc584b 100644 (file)
@@ -111,7 +111,7 @@ int MmRpc_create(const char *service, const MmRpc_Params *params,
     obj->fd = open(cbuf, O_RDWR);
 
     if (obj->fd < 0) {
-        printf("MmRpc_create: Error: open failed\n");
+        printf("MmRpc_create: Error: open failed, name=%s\n", cbuf);
         status = MmRpc_E_FAIL;
         goto leave;
     }
index a0551837837ffe671cb05733f04a4622908dd2f4..042b08da2dfbe9b090e6a963082e3f34eb2e48fd 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012-2013, Texas Instruments Incorporated
+ * Copyright (c) 2013, Texas Instruments Incorporated
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
index bd789286fdb62b80c34b7e5ebaacbb70d19aea56..954a96647ec35007b43c4631fb79e31603032a01 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012-2013, Texas Instruments Incorporated
+ * Copyright (c) 2013, Texas Instruments Incorporated
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
diff --git a/packages/ti/ipc/mm/MmServiceMgr.xdc b/packages/ti/ipc/mm/MmServiceMgr.xdc
new file mode 100644 (file)
index 0000000..6f9d8f5
--- /dev/null
@@ -0,0 +1,45 @@
+/*
+ * Copyright (c) 2013, Texas Instruments Incorporated
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * *  Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * *  Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * *  Neither the name of Texas Instruments Incorporated nor the names of
+ *    its contributors may be used to endorse or promote products derived
+ *    from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+ * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ *  ======== MmServiceMgr.xdc ========
+ */
+package ti.ipc.mm;
+
+/*!
+ *  ======== MmServiceMgr ========
+ *  Multi-Media Service Manager
+ */
+metaonly module MmServiceMgr
+{
+
+}
diff --git a/packages/ti/ipc/mm/MmServiceMgr.xs b/packages/ti/ipc/mm/MmServiceMgr.xs
new file mode 100644 (file)
index 0000000..bfb14b1
--- /dev/null
@@ -0,0 +1,49 @@
+/*
+ * Copyright (c) 2013, Texas Instruments Incorporated
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * *  Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *
+ * *  Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * *  Neither the name of Texas Instruments Incorporated nor the names of
+ *    its contributors may be used to endorse or promote products derived
+ *    from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+ * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ *  ======== MmServiceMgr.xs ========
+ */
+
+/*
+ *  ======== module$use ========
+ *  Use other modules required by this module
+ */
+function module$use()
+{
+    xdc.useModule('ti.grcm.RcmServer');
+    xdc.useModule('ti.sdo.utils.MultiProc');
+    xdc.loadPackage('ti.srvmgr');
+    xdc.loadPackage('ti.srvmgr.omaprpc');
+    xdc.useModule('xdc.runtime.Memory');
+    xdc.useModule('xdc.runtime.System');
+}
index b329b848ad914d4de6a1e638543a6d3eb24f01a4..f5d906a623ad7112a44b673bf95a667dd9d02712 100644 (file)
@@ -37,4 +37,5 @@
  */
 
 package ti.ipc.mm [1,0,0] {
+    module MmServiceMgr;
 };
index de34c944d52fdaebc5df9e383f0d45979e963412..91d51a7e6285f0146fdb1e2b2dda4619a58df707 100644 (file)
  *
  */
 
+/*
+ *  ======== close ========
+ */
+function close()
+{
+    if (xdc.om.$name != "cfg") {
+        return;
+    }
+
+    xdc.useModule('ti.grcm.RcmServer');
+    xdc.useModule('ti.sdo.utils.MultiProc');
+    xdc.loadPackage('ti.srvmgr');
+    xdc.loadPackage('ti.srvmgr.omaprpc');
+    xdc.useModule('xdc.runtime.Memory');
+    xdc.useModule('xdc.runtime.System');
+}
+
 /*
  *  ======== getLibs ========
  */