/* Initialize Framework Layer. 
Initialize companion module and register callback. */
ADI_WIFI_RESULT adi_wifi_Init(ADI_CALLBACK const pCallbackFunc, void *const pCBParam)
/* Initialize Framework Layer. 
Initialize companion module and register callback. */
ADI_WIFI_RESULT adi_wifi_Init(ADI_CALLBACK const pCallbackFunc, void *const pCBParam)
{
    ASSERT(pCallbackFunc != NULL);
    pApplicationCallback  = pCallbackFunc;
    pApplicationParameter = pCBParam;
    if((adi_tmr_Init(ADI_WIFI_NOOS_GP_TIMER_CFG, adi_wifi_TimerCallback, NULL, true) == ADI_TMR_SUCCESS)  &&
       (adi_tmr_Init(ADI_WIFI_BROKER_CONNECTION_GP_TIMER_CFG, adi_wifi_PingTimerCallback, NULL, true) == ADI_TMR_SUCCESS))
    {
    	return(adi_wifi_radio_Init(adi_wifi_NoosCallback));
    }
    return(ADI_WIFI_FAILURE);
}