Re: [PATCH v4 1/3] scsi: ufs: Allow RTT negotiation

From: Bart Van Assche
Date: Thu May 16 2024 - 12:05:17 EST


On 5/16/24 09:21, Avri Altman wrote:
On 5/15/24 23:51, Avri Altman wrote:
void ufshcd_fixup_dev_quirks(struct ufs_hba *hba,
const struct ufs_dev_quirk *fixups)
{
@@ -8278,6 +8312,8 @@ static int ufs_get_device_desc(struct ufs_hba *hba)
if (hba->ext_iid_sup)
ufshcd_ext_iid_probe(hba, desc_buf);

+ ufshcd_rtt_set(hba, desc_buf);
+

Why does this call occur in ufs_get_device_desc()? ufshcd_rtt_set() sets
a device parameter. Shouldn't this call be moved one level up into
ufshcd_device_params_init()?
Because otherwise bDeviceRTTCap is not available.
Please note several device configuration calls in ufs_get_device_desc - all requires some device descriptor fields.

Please make sure that the functionality of ufs_get_device_desc() and the name of that function remain in sync.

I think that bDeviceRTTCap is available in ufshcd_device_params_init()
after ufs_get_device_desc() has returned?

Thanks,

Bart.