static void hci_dev_smd_open(struct work_struct *worker) { mutex_lock(&hci_smd_enable); hci_smd_hci_register_dev(&hs); mutex_unlock(&hci_smd_enable); kfree(worker); }
static void hci_dev_smd_open(struct work_struct *worker) { down(&hci_smd_enable); if (restart_in_progress == 1) { /* Allow wcnss to initialize */ restart_in_progress = 0; msleep(10000); } hci_smd_hci_register_dev(&hs); up(&hci_smd_enable); kfree(worker); }
static void hci_dev_smd_open(struct work_struct *worker) { mutex_lock(&hci_smd_enable); if (restart_in_progress == 1) { restart_in_progress = 0; msleep(10000); } hci_smd_hci_register_dev(&hs); mutex_unlock(&hci_smd_enable); kfree(worker); }
static void hci_dev_smd_open(struct work_struct *worker) { down(&hci_smd_enable); if (ssr_state) BT_DBG("SSR state is : %x", ssr_state); if ((ssr_state != STATE_SSR_OFF) && (ssr_state != (STATE_SSR_PENDING_INIT))) { up(&hci_smd_enable); kfree(worker); return; } if (restart_in_progress == 1) { /* Allow wcnss to initialize */ restart_in_progress = 0; msleep(10000); } hci_smd_hci_register_dev(&hs); up(&hci_smd_enable); kfree(worker); }