> - /* Poll SQRTSy.CUS = 1. Return result from SQRTSy.RTC */ > - reg = opr_sqd_base + REG_SQRTS; > - err = read_poll_timeout(readl, val, val & SQ_CUS, 20, > - MCQ_POLL_US, false, reg); > + /* Wait until SQRTSy.CUS = 1. */ > + err = read_poll_timeout(readl, val, val & SQ_CUS, 20, MCQ_POLL_US, > + false, opr_sqd_base + REG_SQRTS); > if (err) Can remove the if (err) > - dev_err(hba->dev, "%s: failed. hwq=%d, tag=%d err=%ld\n", > - __func__, id, task_tag, > - FIELD_GET(SQ_ICU_ERR_CODE_MASK, readl(reg))); > + dev_err(hba->dev, "%s: failed. hwq=%d, tag=%d err=%d\n", > + __func__, id, task_tag, err); And report RTC on success or err otherwise: + __func__, id, task_tag, err ? : FIELD_GET(SQ_ICU_ERR_CODE_MASK, readl(opr_sqd_base + REG_SQRTS)); Thanks, Avri > > if (ufshcd_mcq_sq_start(hba, hwq)) > err = -ETIMEDOUT;