linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/4] rts5208: Fix usleep_range is preferred over udelay
@ 2019-06-19 15:46 Lukas Schneider
  2019-06-19 15:46 ` [PATCH 2/4] " Lukas Schneider
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Lukas Schneider @ 2019-06-19 15:46 UTC (permalink / raw)
  To: kim.jamie.bradley, pakki001, colin.king, devel, linux-kernel
  Cc: Lukas Schneider, Jannik Moritz, linux-kernel

This patch fixes the issue reported by checkpatch:

CHECK: usleep_range is preferred over udelay;
see Documentation/timers/timers-howto.txt

It's save to sleep here instead of using busy waiting,
because we are not in an atomic context.

Signed-off-by: Lukas Schneider <lukas.s.schneider@fau.de>
Signed-off-by: Jannik Moritz <jannik.moritz@fau.de>
Cc: <linux-kernel@i4.cs.fau.de>
---
 drivers/staging/rts5208/ms.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/rts5208/ms.c b/drivers/staging/rts5208/ms.c
index 1128eec3bd08..264887d8b3e6 100644
--- a/drivers/staging/rts5208/ms.c
+++ b/drivers/staging/rts5208/ms.c
@@ -3237,7 +3237,7 @@ static int ms_write_multiple_pages(struct rtsx_chip *chip, u16 old_blk,
 			return STATUS_FAIL;
 		}
 
-		udelay(30);
+		usleep_range(30, 40);
 
 		rtsx_init_cmd(chip);
 
@@ -4159,7 +4159,7 @@ int mg_set_ICV(struct scsi_cmnd *srb, struct rtsx_chip *chip)
 
 #ifdef MG_SET_ICV_SLOW
 	for (i = 0; i < 2; i++) {
-		udelay(50);
+		usleep_range(50, 60);
 
 		rtsx_init_cmd(chip);
 
-- 
2.19.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/4] rts5208: Fix usleep_range is preferred over udelay
  2019-06-19 15:46 [PATCH 1/4] rts5208: Fix usleep_range is preferred over udelay Lukas Schneider
@ 2019-06-19 15:46 ` Lukas Schneider
  2019-06-19 15:46 ` [PATCH 3/4] " Lukas Schneider
  2019-06-19 15:46 ` [PATCH 4/4] rts5208: Fix usleep range " Lukas Schneider
  2 siblings, 0 replies; 6+ messages in thread
From: Lukas Schneider @ 2019-06-19 15:46 UTC (permalink / raw)
  To: kim.jamie.bradley, pakki001, colin.king, devel, linux-kernel
  Cc: Lukas Schneider, Jannik Moritz

This patch fixes the issue reported by checkpatch:

CHECK: usleep_range is preferred over udelay;
see Documentation/timers/timers-howto.txt

It's save to sleep here instead of using busy waiting,
because we are not in an atomic context.

Signed-off-by: Lukas Schneider <lukas.s.schneider@fau.de>
Signed-off-by: Jannik Moritz <jannik.moritz@fau.de>
Cc <linux-kernel@i4.cs.fau.de>
---
 drivers/staging/rts5208/rtsx_card.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/rts5208/rtsx_card.c b/drivers/staging/rts5208/rtsx_card.c
index 294f381518fa..960e845133c3 100644
--- a/drivers/staging/rts5208/rtsx_card.c
+++ b/drivers/staging/rts5208/rtsx_card.c
@@ -679,7 +679,7 @@ int switch_ssc_clock(struct rtsx_chip *chip, int clk)
 	if (retval < 0)
 		return STATUS_ERROR;
 
-	udelay(10);
+	usleep_range(10, 20);
 	retval = rtsx_write_register(chip, CLK_CTL, CLK_LOW_FREQ, 0);
 	if (retval)
 		return retval;
@@ -797,7 +797,7 @@ int switch_normal_clock(struct rtsx_chip *chip, int clk)
 		return retval;
 
 	if (sd_vpclk_phase_reset) {
-		udelay(200);
+		usleep_range(200, 210);
 		retval = rtsx_write_register(chip, SD_VPCLK0_CTL,
 					     PHASE_NOT_RESET, PHASE_NOT_RESET);
 		if (retval)
@@ -806,7 +806,7 @@ int switch_normal_clock(struct rtsx_chip *chip, int clk)
 					     PHASE_NOT_RESET, PHASE_NOT_RESET);
 		if (retval)
 			return retval;
-		udelay(200);
+		usleep_range(200, 210);
 	}
 	retval = rtsx_write_register(chip, CLK_CTL, 0xFF, 0);
 	if (retval)
-- 
2.19.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 3/4] rts5208: Fix usleep_range is preferred over udelay
  2019-06-19 15:46 [PATCH 1/4] rts5208: Fix usleep_range is preferred over udelay Lukas Schneider
  2019-06-19 15:46 ` [PATCH 2/4] " Lukas Schneider
@ 2019-06-19 15:46 ` Lukas Schneider
  2019-06-19 15:46 ` [PATCH 4/4] rts5208: Fix usleep range " Lukas Schneider
  2 siblings, 0 replies; 6+ messages in thread
From: Lukas Schneider @ 2019-06-19 15:46 UTC (permalink / raw)
  To: kim.jamie.bradley, pakki001, colin.king, devel, linux-kernel
  Cc: Lukas Schneider, Jannik Moritz, linux-kernel

This patch fixes the issue reported by checkpatch:

CHECK: usleep_range is preferred over udelay;
see Documentation/timers/timers-howto.txt

It's save to sleep here instead of using busy waiting,
because we are not in an atomic context.

Signed-off-by: Lukas Schneider <lukas.s.schneider@fau.de>
Signed-off-by: Jannik Moritz <jannik.moritz@fau.de>
Cc: <linux-kernel@i4.cs.fau.de>
---
 drivers/staging/rts5208/rtsx_chip.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/rts5208/rtsx_chip.c b/drivers/staging/rts5208/rtsx_chip.c
index 76c35f3c0208..8cddfe542d56 100644
--- a/drivers/staging/rts5208/rtsx_chip.c
+++ b/drivers/staging/rts5208/rtsx_chip.c
@@ -1803,7 +1803,7 @@ void rtsx_exit_ss(struct rtsx_chip *chip)
 
 	if (chip->power_down_in_ss) {
 		rtsx_force_power_on(chip, SSC_PDCTL | OC_PDCTL);
-		udelay(1000);
+		usleep_range(1000, 1010);
 	}
 
 	if (RTSX_TST_DELINK(chip)) {
-- 
2.19.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 4/4] rts5208: Fix usleep range is preferred over udelay
  2019-06-19 15:46 [PATCH 1/4] rts5208: Fix usleep_range is preferred over udelay Lukas Schneider
  2019-06-19 15:46 ` [PATCH 2/4] " Lukas Schneider
  2019-06-19 15:46 ` [PATCH 3/4] " Lukas Schneider
@ 2019-06-19 15:46 ` Lukas Schneider
  2019-06-21 11:04   ` Pavel Machek
  2 siblings, 1 reply; 6+ messages in thread
From: Lukas Schneider @ 2019-06-19 15:46 UTC (permalink / raw)
  To: kim.jamie.bradley, pakki001, colin.king, devel, linux-kernel
  Cc: Lukas Schneider, Jannik Moritz, linux-kernel

This patch fixes the issue reported by checkpatch:

CHECK: usleep_range is preferred over udelay;
see Doucmentation/timers/timers-howto.txt

It's save to sleep here instead of using busy waiting,
because we are not in an atomic context.

Signed-off-by: Lukas Schneider <lukas.s.schneider@fau.de>
Signed-off-by: Jannik Moritz <jannik.moritz@fau.de>
Cc: <linux-kernel@i4.cs.fau.de>
---
 drivers/staging/rts5208/sd.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/staging/rts5208/sd.c b/drivers/staging/rts5208/sd.c
index c256a2398651..23a3499096ce 100644
--- a/drivers/staging/rts5208/sd.c
+++ b/drivers/staging/rts5208/sd.c
@@ -865,7 +865,7 @@ static int sd_change_phase(struct rtsx_chip *chip, u8 sample_point, u8 tune_dir)
 						     PHASE_CHANGE);
 			if (retval)
 				return retval;
-			udelay(50);
+			usleep_range(50, 60);
 			retval = rtsx_write_register(chip, SD_VP_CTL, 0xFF,
 						     PHASE_CHANGE |
 						     PHASE_NOT_RESET |
@@ -877,14 +877,14 @@ static int sd_change_phase(struct rtsx_chip *chip, u8 sample_point, u8 tune_dir)
 						     CHANGE_CLK, CHANGE_CLK);
 			if (retval)
 				return retval;
-			udelay(50);
+			usleep_range(50, 60);
 			retval = rtsx_write_register(chip, SD_VP_CTL, 0xFF,
 						     PHASE_NOT_RESET |
 						     sample_point);
 			if (retval)
 				return retval;
 		}
-		udelay(100);
+		usleep_range(100, 110);
 
 		rtsx_init_cmd(chip);
 		rtsx_add_cmd(chip, WRITE_REG_CMD, SD_DCMPS_CTL, DCMPS_CHANGE,
@@ -918,7 +918,7 @@ static int sd_change_phase(struct rtsx_chip *chip, u8 sample_point, u8 tune_dir)
 				return retval;
 		}
 
-		udelay(50);
+		usleep_range(50, 60);
 	}
 
 	retval = rtsx_write_register(chip, SD_CFG1, SD_ASYNC_FIFO_NOT_RST, 0);
@@ -1416,7 +1416,7 @@ static int sd_wait_data_idle(struct rtsx_chip *chip)
 			retval = STATUS_SUCCESS;
 			break;
 		}
-		udelay(100);
+		usleep_range(100, 110);
 	}
 	dev_dbg(rtsx_dev(chip), "SD_DATA_STATE: 0x%02x\n", val);
 
-- 
2.19.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 4/4] rts5208: Fix usleep range is preferred over udelay
  2019-06-19 15:46 ` [PATCH 4/4] rts5208: Fix usleep range " Lukas Schneider
@ 2019-06-21 11:04   ` Pavel Machek
  2019-06-21 13:01     ` Lukas Schneider
  0 siblings, 1 reply; 6+ messages in thread
From: Pavel Machek @ 2019-06-21 11:04 UTC (permalink / raw)
  To: Lukas Schneider
  Cc: kim.jamie.bradley, pakki001, colin.king, devel, linux-kernel,
	Jannik Moritz, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1996 bytes --]

On Wed 2019-06-19 17:46:48, Lukas Schneider wrote:
> This patch fixes the issue reported by checkpatch:
> 
> CHECK: usleep_range is preferred over udelay;
> see Doucmentation/timers/timers-howto.txt
> 
> It's save to sleep here instead of using busy waiting,
> because we are not in an atomic context.

Is it good idea? How can the system really sleep for 50 usec?

      	   	     	     	    	   	     Pavel

> @@ -865,7 +865,7 @@ static int sd_change_phase(struct rtsx_chip *chip, u8 sample_point, u8 tune_dir)
>  						     PHASE_CHANGE);
>  			if (retval)
>  				return retval;
> -			udelay(50);
> +			usleep_range(50, 60);
>  			retval = rtsx_write_register(chip, SD_VP_CTL, 0xFF,
>  						     PHASE_CHANGE |
>  						     PHASE_NOT_RESET |
> @@ -877,14 +877,14 @@ static int sd_change_phase(struct rtsx_chip *chip, u8 sample_point, u8 tune_dir)
>  						     CHANGE_CLK, CHANGE_CLK);
>  			if (retval)
>  				return retval;
> -			udelay(50);
> +			usleep_range(50, 60);
>  			retval = rtsx_write_register(chip, SD_VP_CTL, 0xFF,
>  						     PHASE_NOT_RESET |
>  						     sample_point);
>  			if (retval)
>  				return retval;
>  		}
> -		udelay(100);
> +		usleep_range(100, 110);
>  
>  		rtsx_init_cmd(chip);
>  		rtsx_add_cmd(chip, WRITE_REG_CMD, SD_DCMPS_CTL, DCMPS_CHANGE,
> @@ -918,7 +918,7 @@ static int sd_change_phase(struct rtsx_chip *chip, u8 sample_point, u8 tune_dir)
>  				return retval;
>  		}
>  
> -		udelay(50);
> +		usleep_range(50, 60);
>  	}
>  
>  	retval = rtsx_write_register(chip, SD_CFG1, SD_ASYNC_FIFO_NOT_RST, 0);
> @@ -1416,7 +1416,7 @@ static int sd_wait_data_idle(struct rtsx_chip *chip)
>  			retval = STATUS_SUCCESS;
>  			break;
>  		}
> -		udelay(100);
> +		usleep_range(100, 110);
>  	}
>  	dev_dbg(rtsx_dev(chip), "SD_DATA_STATE: 0x%02x\n", val);
>  

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 4/4] rts5208: Fix usleep range is preferred over udelay
  2019-06-21 11:04   ` Pavel Machek
@ 2019-06-21 13:01     ` Lukas Schneider
  0 siblings, 0 replies; 6+ messages in thread
From: Lukas Schneider @ 2019-06-21 13:01 UTC (permalink / raw)
  To: Pavel Machek
  Cc: kim.jamie.bradley, pakki001, colin.king, devel, linux-kernel,
	Jannik Moritz, linux-kernel


Am 21.06.2019 um 13:04 schrieb Pavel Machek:
> On Wed 2019-06-19 17:46:48, Lukas Schneider wrote:
>> This patch fixes the issue reported by checkpatch:
>>
>> CHECK: usleep_range is preferred over udelay;
>> see Doucmentation/timers/timers-howto.txt
>>
>> It's save to sleep here instead of using busy waiting,
>> because we are not in an atomic context.
> Is it good idea? How can the system really sleep for 50 usec?
>
>        	   	     	     	    	   	     Pavel

According to Doucmentation/timers/timers-howto.txt, usleep_range should 
be used for sleep times between 10us and 20ms, so it is the correct 
function for 50us.

Lukas

>> @@ -865,7 +865,7 @@ static int sd_change_phase(struct rtsx_chip *chip, u8 sample_point, u8 tune_dir)
>>   						     PHASE_CHANGE);
>>   			if (retval)
>>   				return retval;
>> -			udelay(50);
>> +			usleep_range(50, 60);
>>   			retval = rtsx_write_register(chip, SD_VP_CTL, 0xFF,
>>   						     PHASE_CHANGE |
>>   						     PHASE_NOT_RESET |
>> @@ -877,14 +877,14 @@ static int sd_change_phase(struct rtsx_chip *chip, u8 sample_point, u8 tune_dir)
>>   						     CHANGE_CLK, CHANGE_CLK);
>>   			if (retval)
>>   				return retval;
>> -			udelay(50);
>> +			usleep_range(50, 60);
>>   			retval = rtsx_write_register(chip, SD_VP_CTL, 0xFF,
>>   						     PHASE_NOT_RESET |
>>   						     sample_point);
>>   			if (retval)
>>   				return retval;
>>   		}
>> -		udelay(100);
>> +		usleep_range(100, 110);
>>   
>>   		rtsx_init_cmd(chip);
>>   		rtsx_add_cmd(chip, WRITE_REG_CMD, SD_DCMPS_CTL, DCMPS_CHANGE,
>> @@ -918,7 +918,7 @@ static int sd_change_phase(struct rtsx_chip *chip, u8 sample_point, u8 tune_dir)
>>   				return retval;
>>   		}
>>   
>> -		udelay(50);
>> +		usleep_range(50, 60);
>>   	}
>>   
>>   	retval = rtsx_write_register(chip, SD_CFG1, SD_ASYNC_FIFO_NOT_RST, 0);
>> @@ -1416,7 +1416,7 @@ static int sd_wait_data_idle(struct rtsx_chip *chip)
>>   			retval = STATUS_SUCCESS;
>>   			break;
>>   		}
>> -		udelay(100);
>> +		usleep_range(100, 110);
>>   	}
>>   	dev_dbg(rtsx_dev(chip), "SD_DATA_STATE: 0x%02x\n", val);
>>   

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-06-21 13:09 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-19 15:46 [PATCH 1/4] rts5208: Fix usleep_range is preferred over udelay Lukas Schneider
2019-06-19 15:46 ` [PATCH 2/4] " Lukas Schneider
2019-06-19 15:46 ` [PATCH 3/4] " Lukas Schneider
2019-06-19 15:46 ` [PATCH 4/4] rts5208: Fix usleep range " Lukas Schneider
2019-06-21 11:04   ` Pavel Machek
2019-06-21 13:01     ` Lukas Schneider

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).