/*----------------------------------------------------------------------------*/ VOID glResetUninit(VOID) { /* 1. Deregister reset callback */ mtk_wcn_wmt_msgcb_unreg(WMTDRV_TYPE_WIFI); return; }
static int GPS_close(struct inode *inode, struct file *file) { printk("%s: major %d minor %d (pid %d)\n", __func__, imajor(inode), iminor(inode), current->pid ); if(retflag == 1) { GPS_WARN_FUNC("whole chip resetting...\n"); return -EPERM; } /*Flush Rx Queue*/ mtk_wcn_stp_register_event_cb(GPS_TASK_INDX, 0x0); // unregister event callback function mtk_wcn_wmt_msgcb_unreg(WMTDRV_TYPE_GPS); if (MTK_WCN_BOOL_FALSE == mtk_wcn_wmt_func_off(WMTDRV_TYPE_GPS)) { GPS_WARN_FUNC("WMT turn off GPS fail!\n"); return -EIO; //mostly, native programer does not care this return vlaue, but we still return error code. } else { GPS_INFO_FUNC("WMT turn off GPS OK!\n"); } return 0; }
/*----------------------------------------------------------------------------*/ VOID glResetUninit(VOID) { #if (MTK_WCN_SINGLE_MODULE == 0) /* 1. Deregister reset callback */ mtk_wcn_wmt_msgcb_unreg(WMTDRV_TYPE_WIFI); #endif /* MTK_WCN_SINGLE_MODULE */ return; }
/*----------------------------------------------------------------------------*/ VOID glResetUninit( VOID ) { /* 1. release NETLINK_GENERIC family */ genl_unregister_family(&mtk_wifi_gnl_family); /* 2. deregister for reset callback */ mtk_wcn_wmt_msgcb_unreg(WMTDRV_TYPE_WIFI); return; }
/*----------------------------------------------------------------------------*/ VOID glResetUninit( VOID ) { /* 1. release NETLINK_GENERIC family */ genl_unregister_family(&mtk_wifi_gnl_family); #if (MTK_WCN_SINGLE_MODULE == 0) /* 2. deregister for reset callback */ mtk_wcn_wmt_msgcb_unreg(WMTDRV_TYPE_WIFI); #endif /* MTK_WCN_SINGLE_MODULE */ return; }
static int BT_close(struct inode *inode, struct file *file) { BT_INFO_FUNC("%s: major %d minor %d (pid %d)\n", __func__, imajor(inode), iminor(inode), current->pid); if (current->pid == 1) return 0; retflag = 0; mtk_wcn_wmt_msgcb_unreg(WMTDRV_TYPE_BT); mtk_wcn_stp_register_event_cb(BT_TASK_INDX, NULL); if (MTK_WCN_BOOL_FALSE == mtk_wcn_wmt_func_off(WMTDRV_TYPE_BT)) { BT_INFO_FUNC("WMT turn off BT fail!\n"); return -EIO; /* mostly, native programmer will not check this return value. */ } else { BT_INFO_FUNC("WMT turn off BT OK!\n"); } return 0; }