Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 94c122ab authored by Namjae Jeon's avatar Namjae Jeon Committed by James Bottomley
Browse files

[SCSI] ufs: fix incorrect return value about SUCCESS and FAILED



Currently the UFS host driver has returned incorrect values for SUCCESS
and FAILED.  Fix it to return the correct value to the upper layer.

Signed-off-by: default avatarNamjae Jeon <linkinjeon@gmail.com>
Acked-by: default avatarSantosh Y <santoshsy@gmail.com>
Signed-off-by: default avatarVenkatraman S <svenkatr@ti.com>
Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
parent 73ec513a
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -1163,6 +1163,8 @@ static int ufshcd_task_req_compl(struct ufs_hba *hba, u32 index)
		if (task_result != UPIU_TASK_MANAGEMENT_FUNC_COMPL &&
		    task_result != UPIU_TASK_MANAGEMENT_FUNC_SUCCEEDED)
			task_result = FAILED;
		else
			task_result = SUCCESS;
	} else {
		task_result = FAILED;
		dev_err(&hba->pdev->dev,
@@ -1556,7 +1558,7 @@ ufshcd_issue_tm_cmd(struct ufs_hba *hba,
		goto out;
	}
	clear_bit(free_slot, &hba->tm_condition);
	return ufshcd_task_req_compl(hba, free_slot);
	err = ufshcd_task_req_compl(hba, free_slot);
out:
	return err;
}
@@ -1580,7 +1582,7 @@ static int ufshcd_device_reset(struct scsi_cmnd *cmd)
	tag = cmd->request->tag;

	err = ufshcd_issue_tm_cmd(hba, &hba->lrb[tag], UFS_LOGICAL_RESET);
	if (err)
	if (err == FAILED)
		goto out;

	for (pos = 0; pos < hba->nutrs; pos++) {
@@ -1620,7 +1622,7 @@ static int ufshcd_host_reset(struct scsi_cmnd *cmd)
	if (hba->ufshcd_state == UFSHCD_STATE_RESET)
		return SUCCESS;

	return (ufshcd_do_reset(hba) == SUCCESS) ? SUCCESS : FAILED;
	return ufshcd_do_reset(hba);
}

/**
@@ -1652,7 +1654,7 @@ static int ufshcd_abort(struct scsi_cmnd *cmd)
	spin_unlock_irqrestore(host->host_lock, flags);

	err = ufshcd_issue_tm_cmd(hba, &hba->lrb[tag], UFS_ABORT_TASK);
	if (err)
	if (err == FAILED)
		goto out;

	scsi_dma_unmap(cmd);