if (!(mrioc->init_cmds.state & MPI3MR_CMD_COMPLETE)) {
                ioc_err(mrioc, "Issue IOUCTL time_stamp: command timed out\n");
                mrioc->init_cmds.is_waiting = 0;
-               mpi3mr_soft_reset_handler(mrioc,
-                   MPI3MR_RESET_FROM_TSU_TIMEOUT, 1);
+               if (!(mrioc->init_cmds.state & MPI3MR_CMD_RESET))
+                       mpi3mr_soft_reset_handler(mrioc,
+                           MPI3MR_RESET_FROM_TSU_TIMEOUT, 1);
                retval = -1;
                goto out_unlock;
        }
            (MPI3MR_INTADMCMD_TIMEOUT * HZ));
        if (!(mrioc->init_cmds.state & MPI3MR_CMD_COMPLETE)) {
                ioc_err(mrioc, "Issue EvtNotify: command timed out\n");
-               mpi3mr_soft_reset_handler(mrioc,
-                   MPI3MR_RESET_FROM_EVTACK_TIMEOUT, 1);
+               if (!(mrioc->init_cmds.state & MPI3MR_CMD_RESET))
+                       mpi3mr_soft_reset_handler(mrioc,
+                           MPI3MR_RESET_FROM_EVTACK_TIMEOUT, 1);
                retval = -1;
                goto out_unlock;
        }
 
                ioc_err(mrioc, "%s :Issue TM: command timed out\n", __func__);
                drv_cmd->is_waiting = 0;
                retval = -1;
-               mpi3mr_soft_reset_handler(mrioc,
-                   MPI3MR_RESET_FROM_TM_TIMEOUT, 1);
+               if (!(drv_cmd->state & MPI3MR_CMD_RESET))
+                       mpi3mr_soft_reset_handler(mrioc,
+                           MPI3MR_RESET_FROM_TM_TIMEOUT, 1);
                goto out_unlock;
        }