void mpi3mr_cleanup_fwevt_list(struct mpi3mr_ioc *mrioc);
 void mpi3mr_flush_host_io(struct mpi3mr_ioc *mrioc);
 void mpi3mr_invalidate_devhandles(struct mpi3mr_ioc *mrioc);
-void mpi3mr_rfresh_tgtdevs(struct mpi3mr_ioc *mrioc);
+void mpi3mr_refresh_tgtdevs(struct mpi3mr_ioc *mrioc);
 void mpi3mr_flush_delayed_cmd_lists(struct mpi3mr_ioc *mrioc);
 void mpi3mr_check_rh_fault_ioc(struct mpi3mr_ioc *mrioc, u32 reason_code);
 void mpi3mr_print_fault_info(struct mpi3mr_ioc *mrioc);
 
 }
 
 /**
- * mpi3mr_rfresh_tgtdevs - Refresh target device exposure
+ * mpi3mr_refresh_tgtdevs - Refresh target device exposure
  * @mrioc: Adapter instance reference
  *
  * This is executed post controller reset to identify any
  * Return: Nothing.
  */
 
-void mpi3mr_rfresh_tgtdevs(struct mpi3mr_ioc *mrioc)
+void mpi3mr_refresh_tgtdevs(struct mpi3mr_ioc *mrioc)
 {
        struct mpi3mr_tgt_dev *tgtdev, *tgtdev_next;
        struct mpi3mr_stgt_priv_data *tgt_priv;
        dprint_reset(mrioc, "refresh target devices: check for removals\n");
        list_for_each_entry_safe(tgtdev, tgtdev_next, &mrioc->tgtdev_list,
            list) {
-               if ((tgtdev->dev_handle == MPI3MR_INVALID_DEV_HANDLE) &&
-                    tgtdev->is_hidden &&
+               if (((tgtdev->dev_handle == MPI3MR_INVALID_DEV_HANDLE) ||
+                    tgtdev->is_hidden) &&
                     tgtdev->host_exposed && tgtdev->starget &&
                     tgtdev->starget->hostdata) {
                        tgt_priv = tgtdev->starget->hostdata;
                        mpi3mr_refresh_sas_ports(mrioc);
                        mpi3mr_refresh_expanders(mrioc);
                }
-               mpi3mr_rfresh_tgtdevs(mrioc);
+               mpi3mr_refresh_tgtdevs(mrioc);
                ioc_info(mrioc,
                    "scan for non responding and newly added devices after soft reset completed\n");
                break;