diff options
Diffstat (limited to 'drivers/misc/m4sensorhub_mpu9150.c')
| -rw-r--r-- | drivers/misc/m4sensorhub_mpu9150.c | 25 | 
1 files changed, 15 insertions, 10 deletions
diff --git a/drivers/misc/m4sensorhub_mpu9150.c b/drivers/misc/m4sensorhub_mpu9150.c index 52de21885d4..55d160bc607 100644 --- a/drivers/misc/m4sensorhub_mpu9150.c +++ b/drivers/misc/m4sensorhub_mpu9150.c @@ -178,8 +178,9 @@ static void m4_set_mpu9150_delay(struct mpu9150_client *mpu9150_client_data,  		cancel_delayed_work(&(dd->mpu9150_work[type]));  		dd->samplerate[type] = delay;  		if (dd->samplerate[type] > 0) -			schedule_delayed_work(&(dd->mpu9150_work[type]), -					      msecs_to_jiffies(delay)); +			queue_delayed_work(system_freezable_wq, +					&(dd->mpu9150_work[type]), +					msecs_to_jiffies(delay));  	}  } @@ -250,8 +251,9 @@ static void m4gyro_work_func(struct work_struct *work)  	m4_report_mpu9150_inputevent(dd, TYPE_GYRO);  	rate = dd->samplerate[TYPE_GYRO];  	if (rate > 0) -		schedule_delayed_work(&(dd->mpu9150_work[TYPE_GYRO]), -				      msecs_to_jiffies(rate)); +		queue_delayed_work(system_freezable_wq, +				&(dd->mpu9150_work[TYPE_GYRO]), +				msecs_to_jiffies(rate));  	mutex_unlock(&(dd->mutex));  } @@ -269,8 +271,9 @@ static void m4accel_work_func(struct work_struct *work)  	m4_report_mpu9150_inputevent(dd, TYPE_ACCEL);  	rate = dd->samplerate[TYPE_ACCEL];  	if (rate > 0) -		schedule_delayed_work(&(dd->mpu9150_work[TYPE_ACCEL]), -				      msecs_to_jiffies(rate)); +		queue_delayed_work(system_freezable_wq, +				&(dd->mpu9150_work[TYPE_ACCEL]), +				msecs_to_jiffies(rate));  	mutex_unlock(&(dd->mutex));  } @@ -287,8 +290,9 @@ static void m4compass_work_func(struct work_struct *work)  	m4_report_mpu9150_inputevent(dd, TYPE_COMPASS);  	rate = dd->samplerate[TYPE_COMPASS];  	if (rate > 0) -		schedule_delayed_work(&(dd->mpu9150_work[TYPE_COMPASS]), -				      msecs_to_jiffies(rate)); +		queue_delayed_work(system_freezable_wq, +				&(dd->mpu9150_work[TYPE_COMPASS]), +				msecs_to_jiffies(rate));  	mutex_unlock(&(dd->mutex));  } @@ -567,8 +571,9 @@ static void mpu9150_panic_restore(struct m4sensorhub_data *m4sensorhub,  		m4_set_mpu9150_delay(dd, rate, type);  		cancel_delayed_work(&(dd->mpu9150_work[type]));  		if (rate > 0) -			schedule_delayed_work(&(dd->mpu9150_work[type]), -					      msecs_to_jiffies(rate)); +			queue_delayed_work(system_freezable_wq, +					&(dd->mpu9150_work[type]), +					msecs_to_jiffies(rate));  	}  	mutex_unlock(&(dd->mutex));  }  |