Re: [PATCH 2/5] iio: imu: mpu6050: fix INV_MPU6050_REG_UP_TIME delay

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 22/02/16 21:39, Matt Ranostay wrote:
> replace msleep(INV_MPU6050_REG_UP_TIME) with usleep_range calls
> due to fact the wait time is under 20 milliseconds.
> 
> Signed-off-by: Matt Ranostay <matt.ranostay@xxxxxxxxx>
Applied.
> ---
>  drivers/iio/imu/inv_mpu6050/inv_mpu_core.c | 3 ++-
>  drivers/iio/imu/inv_mpu6050/inv_mpu_i2c.c  | 3 ++-
>  drivers/iio/imu/inv_mpu6050/inv_mpu_iio.h  | 7 ++++++-
>  3 files changed, 10 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c b/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c
> index 4324328fd304..6d4b19dd16f8 100644
> --- a/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c
> +++ b/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c
> @@ -148,7 +148,8 @@ int inv_mpu6050_set_power_itg(struct inv_mpu6050_state *st, bool power_on)
>  		return result;
>  
>  	if (power_on)
> -		msleep(INV_MPU6050_REG_UP_TIME);
> +		usleep_range(INV_MPU6050_REG_UP_TIME_MIN,
> +			     INV_MPU6050_REG_UP_TIME_MAX);
>  
>  	return 0;
>  }
> diff --git a/drivers/iio/imu/inv_mpu6050/inv_mpu_i2c.c b/drivers/iio/imu/inv_mpu6050/inv_mpu_i2c.c
> index af400dd892a9..37cc16d3fca3 100644
> --- a/drivers/iio/imu/inv_mpu6050/inv_mpu_i2c.c
> +++ b/drivers/iio/imu/inv_mpu6050/inv_mpu_i2c.c
> @@ -68,7 +68,8 @@ static int inv_mpu6050_select_bypass(struct i2c_adapter *adap, void *mux_priv,
>  		if (ret)
>  			goto write_error;
>  
> -		msleep(INV_MPU6050_REG_UP_TIME);
> +		usleep_range(INV_MPU6050_REG_UP_TIME_MIN,
> +			     INV_MPU6050_REG_UP_TIME_MAX);
>  	}
>  	if (!ret) {
>  		st->powerup_count++;
> diff --git a/drivers/iio/imu/inv_mpu6050/inv_mpu_iio.h b/drivers/iio/imu/inv_mpu6050/inv_mpu_iio.h
> index fcc2f3dfdfa8..243324dd78de 100644
> --- a/drivers/iio/imu/inv_mpu6050/inv_mpu_iio.h
> +++ b/drivers/iio/imu/inv_mpu6050/inv_mpu_iio.h
> @@ -172,10 +172,15 @@ struct inv_mpu6050_state {
>  #define INV_MPU6050_BYTES_PER_3AXIS_SENSOR   6
>  #define INV_MPU6050_FIFO_COUNT_BYTE          2
>  #define INV_MPU6050_FIFO_THRESHOLD           500
> +
> +/* delay time in milliseconds */
>  #define INV_MPU6050_POWER_UP_TIME            100
>  #define INV_MPU6050_TEMP_UP_TIME             100
>  #define INV_MPU6050_SENSOR_UP_TIME           30
> -#define INV_MPU6050_REG_UP_TIME              5
> +
> +/* delay time in microseconds */
> +#define INV_MPU6050_REG_UP_TIME_MIN          5000
> +#define INV_MPU6050_REG_UP_TIME_MAX          10000
>  
>  #define INV_MPU6050_TEMP_OFFSET	             12421
>  #define INV_MPU6050_TEMP_SCALE               2941
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-iio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux