Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 19ace024 authored by Daqing Chen's avatar Daqing Chen Committed by Gerrit - the friendly Code Review server
Browse files

input: sensors: modify resolution for sensor mpu6050



Modify mpu6050 accelerometer resolution and modify the report data
bit to 16 bits.

Change-Id: I29b6fddb083477b3724038b051173a6e1594c81c
Signed-off-by: default avatarDaqing Chen <chendaqing@codeaurora.org>
parent e4d39e9e
Loading
Loading
Loading
Loading
+9 −9
Original line number Original line Diff line number Diff line
@@ -627,11 +627,11 @@ static void mpu6050_read_single_event(struct mpu6050_sensor *sensor)
			sensor->pdata->place);
			sensor->pdata->place);
		shift = mpu_accel_fs_shift[sensor->cfg.accel_fs];
		shift = mpu_accel_fs_shift[sensor->cfg.accel_fs];
		input_report_abs(sensor->accel_dev, ABS_X,
		input_report_abs(sensor->accel_dev, ABS_X,
			(sensor->axis.x >> shift));
			(sensor->axis.x << shift));
		input_report_abs(sensor->accel_dev, ABS_Y,
		input_report_abs(sensor->accel_dev, ABS_Y,
			(sensor->axis.y >> shift));
			(sensor->axis.y << shift));
		input_report_abs(sensor->accel_dev, ABS_Z,
		input_report_abs(sensor->accel_dev, ABS_Z,
			(sensor->axis.z >> shift));
			(sensor->axis.z << shift));
		input_sync(sensor->accel_dev);
		input_sync(sensor->accel_dev);
	}
	}


@@ -759,11 +759,11 @@ static void mpu6050_accel_work_fn(struct work_struct *work)


	shift = mpu_accel_fs_shift[sensor->cfg.accel_fs];
	shift = mpu_accel_fs_shift[sensor->cfg.accel_fs];
	input_report_abs(sensor->accel_dev, ABS_X,
	input_report_abs(sensor->accel_dev, ABS_X,
		(sensor->axis.x >> shift));
		(sensor->axis.x << shift));
	input_report_abs(sensor->accel_dev, ABS_Y,
	input_report_abs(sensor->accel_dev, ABS_Y,
		(sensor->axis.y >> shift));
		(sensor->axis.y << shift));
	input_report_abs(sensor->accel_dev, ABS_Z,
	input_report_abs(sensor->accel_dev, ABS_Z,
		(sensor->axis.z >> shift));
		(sensor->axis.z << shift));
	input_event(sensor->accel_dev,
	input_event(sensor->accel_dev,
			EV_SYN, SYN_TIME_SEC,
			EV_SYN, SYN_TIME_SEC,
			ktime_to_timespec(timestamp).tv_sec);
			ktime_to_timespec(timestamp).tv_sec);
@@ -1519,11 +1519,11 @@ static void mpu6050_flush_fifo(struct mpu6050_sensor *sensor)


			shift = mpu_accel_fs_shift[sensor->cfg.accel_fs];
			shift = mpu_accel_fs_shift[sensor->cfg.accel_fs];
			input_report_abs(sensor->accel_dev, ABS_X,
			input_report_abs(sensor->accel_dev, ABS_X,
				(sensor->axis.x >> shift));
				(sensor->axis.x << shift));
			input_report_abs(sensor->accel_dev, ABS_Y,
			input_report_abs(sensor->accel_dev, ABS_Y,
				(sensor->axis.y >> shift));
				(sensor->axis.y << shift));
			input_report_abs(sensor->accel_dev, ABS_Z,
			input_report_abs(sensor->accel_dev, ABS_Z,
				(sensor->axis.z >> shift));
				(sensor->axis.z << shift));
			input_event(sensor->accel_dev,
			input_event(sensor->accel_dev,
				EV_SYN, SYN_TIME_SEC,
				EV_SYN, SYN_TIME_SEC,
				(int)sec);
				(int)sec);
+3 −3
Original line number Original line Diff line number Diff line
@@ -182,10 +182,10 @@ enum mpu_accl_fs {
/* Sensitivity Scale Factor */
/* Sensitivity Scale Factor */
/* Sensor HAL will take 1024 LSB/g */
/* Sensor HAL will take 1024 LSB/g */
enum mpu_accel_fs_shift {
enum mpu_accel_fs_shift {
	ACCEL_SCALE_SHIFT_02G = 4,
	ACCEL_SCALE_SHIFT_02G = 0,
	ACCEL_SCALE_SHIFT_04G = 3,
	ACCEL_SCALE_SHIFT_04G = 1,
	ACCEL_SCALE_SHIFT_08G = 2,
	ACCEL_SCALE_SHIFT_08G = 2,
	ACCEL_SCALE_SHIFT_16G = 1
	ACCEL_SCALE_SHIFT_16G = 3
};
};


enum mpu_gyro_fs_shift {
enum mpu_gyro_fs_shift {