diff options
author | Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> | 2022-12-22 19:39:57 +0530 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2023-01-11 21:49:34 -0500 |
commit | 96a7141da33207672d7a354c885d65af4f0f9b6c (patch) | |
tree | 48cefb7e7d3d0ceb1f30d4b4d5270f4a05049522 /include/ufs | |
parent | c2c38c573a2e6184f9acd10e98305d3cb5f1c62b (diff) | |
download | linux-stable-96a7141da33207672d7a354c885d65af4f0f9b6c.tar.gz linux-stable-96a7141da33207672d7a354c885d65af4f0f9b6c.tar.bz2 linux-stable-96a7141da33207672d7a354c885d65af4f0f9b6c.zip |
scsi: ufs: core: Add support for reinitializing the UFS device
Some platforms like Qcom, requires the UFS device to be reinitialized after
switching to maximum gear speed. So add support for that in UFS core by
introducing a new quirk (UFSHCD_CAP_REINIT_AFTER_MAX_GEAR_SWITCH) and doing
the reinitialization, if the quirk is enabled by the controller driver.
Suggested-by: Can Guo <quic_cang@quicinc.com>
Tested-by: Andrew Halaney <ahalaney@redhat.com> # Qdrive3/sa8540p-ride
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'include/ufs')
-rw-r--r-- | include/ufs/ufshcd.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/ufs/ufshcd.h b/include/ufs/ufshcd.h index 97f007d3b851..ff138927676b 100644 --- a/include/ufs/ufshcd.h +++ b/include/ufs/ufshcd.h @@ -596,6 +596,12 @@ enum ufshcd_quirks { * auto-hibernate capability but it's FASTAUTO only. */ UFSHCD_QUIRK_HIBERN_FASTAUTO = 1 << 18, + + /* + * This quirk needs to be enabled if the host controller needs + * to reinit the device after switching to maximum gear. + */ + UFSHCD_QUIRK_REINIT_AFTER_MAX_GEAR_SWITCH = 1 << 19, }; enum ufshcd_caps { |