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: signature.asc
Description: Digital signature

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to