Re: [PATCH v6 3/7] scsi: ufs: introduce common delay function

From: Bart Van Assche
Date: Mon Mar 16 2020 - 12:23:12 EST


On 3/16/20 1:52 AM, Stanley Chu wrote:
+void ufshcd_wait_us(unsigned long us, unsigned long tolerance, bool can_sleep)
+{
+ if (!us)
+ return;
+
+ if (us < 10 || !can_sleep)
+ udelay(us);
+ else
+ usleep_range(us, us + tolerance);
+}
+EXPORT_SYMBOL_GPL(ufshcd_wait_us);

I don't like this function because I think it makes the UFS code harder to read instead of easier. The 'can_sleep' argument is only set by one caller which I think is a strong argument to remove that argument again and to move the code that depends on that argument from the above function into the caller. Additionally, it is not possible to comprehend what a ufshcd_wait_us() call does without looking up the function definition to see what the meaning of the third argument is.

Please drop this patch.

Thanks,

Bart.