return error;
 }
 
-static void linux_wlan_mac_indicate(int flag)
+void linux_wlan_mac_indicate(int flag)
 {
        /*I have to do it that way becuase there is no mean to encapsulate device pointer
         * as a parameter
 
        /*for now - to be revised*/
        nwi->net_func.rx_complete = linux_wlan_rx_complete;
-       nwi->indicate_func.mac_indicate = linux_wlan_mac_indicate;
 }
 
 int wlan_initialize_threads(perInterface_wlan_t *nic)
 
        wilc_wlan_os_func_t os_func;
        wilc_wlan_io_func_t io_func;
        wilc_wlan_net_func_t net_func;
-       wilc_wlan_indicate_func_t indicate_func;
 
        /**
         *      host interface functions
                                                /**
                                                 *      Call back to indicate status...
                                                 **/
-                                               if (p->indicate_func.mac_indicate) {
-                                                       p->indicate_func.mac_indicate(WILC_MAC_INDICATE_STATUS);
-                                               }
+                                               linux_wlan_mac_indicate(WILC_MAC_INDICATE_STATUS);
 
                                        } else if (rsp.type == WILC_CFG_RSP_SCAN) {
-                                               if (p->indicate_func.mac_indicate)
-                                                       p->indicate_func.mac_indicate(WILC_MAC_INDICATE_SCAN);
+                                               linux_wlan_mac_indicate(WILC_MAC_INDICATE_SCAN);
                                        }
                                }
                        }
        memcpy((void *)&g_wlan.os_func, (void *)&inp->os_func, sizeof(wilc_wlan_os_func_t));
        memcpy((void *)&g_wlan.io_func, (void *)&inp->io_func, sizeof(wilc_wlan_io_func_t));
        memcpy((void *)&g_wlan.net_func, (void *)&inp->net_func, sizeof(wilc_wlan_net_func_t));
-       memcpy((void *)&g_wlan.indicate_func, (void *)&inp->indicate_func, sizeof(wilc_wlan_net_func_t));
        g_wlan.hif_lock = inp->os_context.hif_critical_section;
        g_wlan.txq_lock = inp->os_context.txq_critical_section;
 
 
        void (*rx_complete)(void);
 } wilc_wlan_net_func_t;
 
-typedef struct {
-       void (*mac_indicate)(int);
-} wilc_wlan_indicate_func_t;
 #define WILC_MAC_INDICATE_STATUS       0x1
 #define WILC_MAC_STATUS_INIT           -1
 #define WILC_MAC_STATUS_READY          0
        wilc_wlan_os_func_t os_func;
        wilc_wlan_io_func_t io_func;
        wilc_wlan_net_func_t net_func;
-       wilc_wlan_indicate_func_t indicate_func;
 } wilc_wlan_inp_t;
 
 struct tx_complete_data {