/**
  * lpfc_chk_tgt_mapped -
  * @vport: The virtual port to check on
- * @cmnd: Pointer to scsi_cmnd data structure.
+ * @rport: Pointer to fc_rport data structure.
  *
  * This routine delays until the scsi target (aka rport) for the
  * command exists (is present and logged in) or we declare it non-existent.
  *  0x2002 - Success
  **/
 static int
-lpfc_chk_tgt_mapped(struct lpfc_vport *vport, struct scsi_cmnd *cmnd)
+lpfc_chk_tgt_mapped(struct lpfc_vport *vport, struct fc_rport *rport)
 {
        struct lpfc_rport_data *rdata;
-       struct lpfc_nodelist *pnode;
+       struct lpfc_nodelist *pnode = NULL;
        unsigned long later;
 
-       rdata = lpfc_rport_data_from_scsi_device(cmnd->device);
+       rdata = rport->dd_data;
        if (!rdata) {
                lpfc_printf_vlog(vport, KERN_INFO, LOG_FCP,
                        "0797 Tgt Map rport failure: rdata x%px\n", rdata);
                return FAILED;
        }
        pnode = rdata->pnode;
+
        /*
         * If target is not in a MAPPED state, delay until
         * target is rediscovered or devloss timeout expires.
                if (pnode->nlp_state == NLP_STE_MAPPED_NODE)
                        return SUCCESS;
                schedule_timeout_uninterruptible(msecs_to_jiffies(500));
-               rdata = lpfc_rport_data_from_scsi_device(cmnd->device);
+               rdata = rport->dd_data;
                if (!rdata)
                        return FAILED;
                pnode = rdata->pnode;
        if (status != 0 && status != SUCCESS)
                return status;
 
-       status = lpfc_chk_tgt_mapped(vport, cmnd);
+       status = lpfc_chk_tgt_mapped(vport, rport);
        if (status == FAILED) {
                lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT,
                        "0721 Device Reset rport failure: rdata x%px\n", rdata);
        if (status != 0 && status != SUCCESS)
                return status;
 
-       status = lpfc_chk_tgt_mapped(vport, cmnd);
+       status = lpfc_chk_tgt_mapped(vport, rport);
        if (status == FAILED) {
                lpfc_printf_vlog(vport, KERN_ERR, LOG_TRACE_EVENT,
                        "0722 Target Reset rport failure: rdata x%px\n", rdata);