summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--wilink_6_1/platforms/os/linux/src/osapi.c9
-rw-r--r--wilink_6_1/stad/src/Ctrl_Interface/DrvMain.c5
2 files changed, 13 insertions, 1 deletions
diff --git a/wilink_6_1/platforms/os/linux/src/osapi.c b/wilink_6_1/platforms/os/linux/src/osapi.c
index 4bdae8d..fd99089 100644
--- a/wilink_6_1/platforms/os/linux/src/osapi.c
+++ b/wilink_6_1/platforms/os/linux/src/osapi.c
@@ -737,7 +737,8 @@ void *os_SignalObjectCreate (TI_HANDLE OsContext)
{
struct completion *myPtr;
myPtr = os_memoryAlloc(OsContext, sizeof(struct completion));
- init_completion (myPtr);
+ if (myPtr)
+ init_completion (myPtr);
return (myPtr);
}
@@ -753,6 +754,8 @@ Return Value: TI_OK
-----------------------------------------------------------------------------*/
int os_SignalObjectWait (TI_HANDLE OsContext, void *signalObject)
{
+ if (!signalObject)
+ return TI_NOK;
wait_for_completion ((struct completion *)signalObject);
return TI_OK;
}
@@ -769,6 +772,8 @@ Return Value: TI_OK
-----------------------------------------------------------------------------*/
int os_SignalObjectSet (TI_HANDLE OsContext, void *signalObject)
{
+ if (!signalObject)
+ return TI_NOK;
complete ((struct completion *)signalObject);
return TI_OK;
}
@@ -785,6 +790,8 @@ Return Value: TI_OK
-----------------------------------------------------------------------------*/
int os_SignalObjectFree (TI_HANDLE OsContext, void *signalObject)
{
+ if (!signalObject)
+ return TI_NOK;
os_memoryFree(OsContext, signalObject, sizeof(struct completion));
return TI_OK;
}
diff --git a/wilink_6_1/stad/src/Ctrl_Interface/DrvMain.c b/wilink_6_1/stad/src/Ctrl_Interface/DrvMain.c
index 00ae174..257cf20 100644
--- a/wilink_6_1/stad/src/Ctrl_Interface/DrvMain.c
+++ b/wilink_6_1/stad/src/Ctrl_Interface/DrvMain.c
@@ -1266,6 +1266,7 @@ TI_STATUS drvMain_InsertAction (TI_HANDLE hDrvMain, EActionType eAction)
/* Free signalling object */
os_SignalObjectFree (pDrvMain->tStadHandles.hOs, pDrvMain->hSignalObj);
+ pDrvMain->hSignalObj = NULL;
if (pDrvMain->eSmState == SM_STATE_FAILED)
return TI_NOK;
@@ -1292,7 +1293,11 @@ TI_STATUS drvMain_Recovery (TI_HANDLE hDrvMain)
if (!pDrvMain->bRecovery)
{
TRACE1(pDrvMain->tStadHandles.hReport, REPORT_SEVERITY_CONSOLE,".....drvMain_Recovery, ts=%d\n", os_timeStampMs(pDrvMain->tStadHandles.hOs));
+#ifdef REPORT_LOG
WLAN_OS_REPORT((".....drvMain_Recovery, ts=%d\n", os_timeStampMs(pDrvMain->tStadHandles.hOs)));
+#else
+ printk("%s\n",__func__);
+#endif
pDrvMain->bRecovery = TI_TRUE;
drvMain_SmEvent (hDrvMain, SM_EVENT_RECOVERY);
return TI_OK;