/* The function unblocks and resume posting of SLI4 asynchronous mailbox commands from the driver internal pending mailbox queue. It makes sure that there is no outstanding mailbox command before resuming posting asynchronous mailbox commands. If, for any reason, there is outstanding mailbox command, it will try to wait it out before resuming asynchronous mailbox command posting.  */
static void lpfc_sli4_async_mbox_unblock(struct lpfc_hba *phba)
/* The function unblocks and resume posting of SLI4 asynchronous mailbox commands from the driver internal pending mailbox queue. It makes sure that there is no outstanding mailbox command before resuming posting asynchronous mailbox commands. If, for any reason, there is outstanding mailbox command, it will try to wait it out before resuming asynchronous mailbox command posting.  */
static void lpfc_sli4_async_mbox_unblock(struct lpfc_hba *phba)
{
	struct lpfc_sli *psli = &phba->sli;
	spin_lock_irq(&phba->hbalock);
	if (!(psli->sli_flag & LPFC_SLI_ASYNC_MBX_BLK)) {
		spin_unlock_irq(&phba->hbalock);
		return;
	}
	psli->sli_flag &= ~LPFC_SLI_ASYNC_MBX_BLK;
	spin_unlock_irq(&phba->hbalock);
	lpfc_worker_wake_up(phba);
}