Vayu: Remove unnecessary dependency in InterruptIpu
authorChris Ring <cring@ti.com>
Wed, 12 Jun 2013 22:13:23 +0000 (15:13 -0700)
committerChris Ring <cring@ti.com>
Wed, 12 Jun 2013 22:13:23 +0000 (15:13 -0700)
There was an unnecessary dependency from the IPU interrupt handler
(ti.sdo.ipc.family.vayu.InterruptIpu) onto the core of IPC
(ti.sdo.ipc.Ipc).  For the MmServiceMgr use case, which needs the
interrupt handler but not the core of IPC, this dependency brought
in unnecessary code/data.

Signed-off-by: Chris Ring <cring@ti.com>
packages/ti/sdo/ipc/family/vayu/InterruptIpu.c
packages/ti/sdo/ipc/family/vayu/InterruptIpu.xs
packages/ti/sdo/ipc/family/vayu/package.xs

index 2914af6cf7f67183421abd8fda31cbcb14507098..e440b61793683598b5a1fc236151d77a890a5c64 100644 (file)
@@ -31,7 +31,7 @@
  */
 /*
  *  ======== InterruptIpu.c ========
- *  Ducati/TI81xx based interupt manager
+ *  Vayu IPU based interupt manager
  */
 
 #include <xdc/std.h>
@@ -44,7 +44,6 @@
 #include <ti/sysbios/family/arm/m3/Hwi.h>
 #include <ti/sysbios/family/arm/ducati/Core.h>
 #include <ti/sdo/ipc/notifyDrivers/IInterrupt.h>
-#include <ti/sdo/ipc/_Ipc.h>
 #include <ti/sdo/utils/_MultiProc.h>
 
 #include "package/internal/InterruptIpu.xdc.h"
@@ -316,7 +315,7 @@ Void InterruptIpu_intRegister(UInt16 remoteProcId,
     InterruptIpu_FxnTable *table;
 
     Assert_isTrue(remoteProcId < ti_sdo_utils_MultiProc_numProcessors,
-            ti_sdo_ipc_Ipc_A_internal);
+            ti_sdo_utils_MultiProc_A_invalidMultiProcId);
 
     mbxIdx = MBX_BASEADDR_IDX(MBX_TABLE_IDX(remoteProcId, MultiProc_self()));
 
index 76751460b21c866f39089ca411cb98c3e8b088f3..20681f3a704a99d707d8be9511c6bbcc45a89f7f 100644 (file)
@@ -47,7 +47,6 @@ function module$use()
     BIOS            = xdc.useModule("ti.sysbios.BIOS");
     Hwi             = xdc.useModule("ti.sysbios.family.arm.m3.Hwi");
     Core            = xdc.useModule("ti.sysbios.family.arm.ducati.Core");
-    Ipc             = xdc.useModule("ti.sdo.ipc.Ipc");
     Ipu             = xdc.useModule("ti.sdo.ipc.family.vayu.InterruptIpu");
     Xbar            = xdc.useModule("ti.sysbios.hal.vayu.IntXbar");
     TableInit       = xdc.useModule("ti.sdo.ipc.family.vayu.TableInit");
index 033e77e195363b01ca66b8f752692343727c28d7..ddaec667b8f1fbe3272376fe81956dc0989f2e95 100644 (file)
@@ -58,4 +58,15 @@ function close()
     if (xdc.om.$name != 'cfg') {
         return;
     }
+
+    /*
+     * Force the Build module to get used if any module
+     * in this package is used
+     */
+    for (var mod in this.$modules) {
+        if (this.$modules[mod].$used == true) {
+            xdc.useModule('ti.sdo.ipc.Build');
+            break;
+        }
+    }
 }