Commit 883a8b45 authored by Andrew Halaney's avatar Andrew Halaney Committed by Martin K. Petersen

scsi: ufs: qcom: Clarify comments about the initial phy_gear

The comments that currently are within the hw_ver < 4 conditional are
misleading. They really apply to various branches of the conditionals there
and incorrectly state that the phy_gear value can increase.

Right now the logic is to:

 - Default to max supported gear for phy_gear

 - Set phy_gear to minimum value if version < 4 since those versions only
   support one PHY init sequence (and therefore don't need reinit)

 - Set phy_gear to the optimal value if the device version is already
   populated in the controller registers on boot

Let's move some of the comment to outside the if statement and clean up the
bit left about switching to a higher gear on reinit. This way the comment
more accurately reflects the logic.
Signed-off-by: default avatarAndrew Halaney <ahalaney@redhat.com>
Link: https://lore.kernel.org/r/20240123-ufs-reinit-comments-v1-1-ff2b3532d7fe@redhat.comReviewed-by: default avatarManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 2b9bc9ef
......@@ -843,15 +843,20 @@ static void ufs_qcom_set_phy_gear(struct ufs_qcom_host *host)
struct ufs_host_params *host_params = &host->host_params;
u32 val, dev_major;
/*
* Default to powering up the PHY to the max gear possible, which is
* backwards compatible with lower gears but not optimal from
* a power usage point of view. After device negotiation, if the
* gear is lower a reinit will be performed to program the PHY
* to the ideal gear for this combo of controller and device.
*/
host->phy_gear = host_params->hs_tx_gear;
if (host->hw_ver.major < 0x4) {
/*
* For controllers whose major HW version is < 4, power up the
* PHY using minimum supported gear (UFS_HS_G2). Switching to
* max gear will be performed during reinit if supported.
* For newer controllers, whose major HW version is >= 4, power
* up the PHY using max supported gear.
* These controllers only have one PHY init sequence,
* let's power up the PHY using that (the minimum supported
* gear, UFS_HS_G2).
*/
host->phy_gear = UFS_HS_G2;
} else if (host->hw_ver.major >= 0x5) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment