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

Commit 1f624c4e authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "scsi: ufs: add link lost error status detection"

parents 46778034 cfeb0be9
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -6362,7 +6362,7 @@ static void ufshcd_err_handler(struct work_struct *work)
	 * Dump controller state before resetting. Transfer requests state
	 * will be dump as part of the request completion.
	 */
	if ((hba->saved_err & (INT_FATAL_ERRORS | UIC_ERROR)) ||
	if ((hba->saved_err & (INT_FATAL_ERRORS | UIC_ERROR | UIC_LINK_LOST)) ||
	    hba->auto_h8_err) {
		dev_err(hba->dev, "%s: saved_err 0x%x saved_uic_err 0x%x",
			__func__, hba->saved_err, hba->saved_uic_err);
@@ -6379,7 +6379,7 @@ static void ufshcd_err_handler(struct work_struct *work)
		hba->auto_h8_err = false;
	}

	if ((hba->saved_err & INT_FATAL_ERRORS)
	if ((hba->saved_err & (INT_FATAL_ERRORS | UIC_LINK_LOST))
	    || hba->saved_ce_err || hba->force_host_reset ||
	    ((hba->saved_err & UIC_ERROR) &&
	    (hba->saved_uic_err & (UFSHCD_UIC_DL_PA_INIT_ERROR |
@@ -6658,6 +6658,12 @@ static irqreturn_t ufshcd_check_errors(struct ufs_hba *hba)
	if (hba->errors & INT_FATAL_ERRORS || hba->ce_error)
		queue_eh_work = true;

	if (hba->errors & UIC_LINK_LOST) {
		dev_err(hba->dev, "%s: UIC_LINK_LOST received, errors 0x%x\n",
					__func__, hba->errors);
		queue_eh_work = true;
	}

	if (hba->errors & UIC_ERROR) {
		hba->uic_error = 0;
		retval = ufshcd_update_uic_error(hba);
+1 −1
Original line number Diff line number Diff line
@@ -154,7 +154,7 @@ enum {

#define UFSHCD_UIC_MASK		(UIC_COMMAND_COMPL | UFSHCD_UIC_PWR_MASK)

#define UFSHCD_ERROR_MASK	(UIC_ERROR |\
#define UFSHCD_ERROR_MASK	(UIC_ERROR | UIC_LINK_LOST |\
				DEVICE_FATAL_ERROR |\
				CONTROLLER_FATAL_ERROR |\
				SYSTEM_BUS_FATAL_ERROR |\