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

Commit 87512fdf authored by puneet's avatar puneet Committed by Gerrit - the friendly Code Review server
Browse files

Changed sensor range and return count during early buffering



changed acc range by default to 2G and Gyro to 125 degree
with return count changes.

CRs-Fixed: 2053679
Change-Id: Iedfd7789936e9d698eb0ea207a62e4730ae83503
Signed-off-by: default avatarpuneet <puneet@codeaurora.org>
parent e8800dc9
Loading
Loading
Loading
Loading
+24 −8
Original line number Original line Diff line number Diff line
@@ -360,7 +360,9 @@ static int bmi160_acc_gyro_early_buff_init(void)
	bmi160_set_command_register(ACCEL_MODE_NORMAL);
	bmi160_set_command_register(ACCEL_MODE_NORMAL);
	bmi160_set_command_register(GYRO_MODE_NORMAL);
	bmi160_set_command_register(GYRO_MODE_NORMAL);
	bmi160_set_accel_output_data_rate(BMI160_ACCEL_OUTPUT_DATA_RATE_100HZ);
	bmi160_set_accel_output_data_rate(BMI160_ACCEL_OUTPUT_DATA_RATE_100HZ);
	bmi160_set_accel_range(BMI160_ACCEL_RANGE_2G);
	bmi160_set_gyro_output_data_rate(BMI160_GYRO_OUTPUT_DATA_RATE_100HZ);
	bmi160_set_gyro_output_data_rate(BMI160_GYRO_OUTPUT_DATA_RATE_100HZ);
	bmi160_set_gyro_range(BMI160_GYRO_RANGE_125_DEG_SEC);
	bmi160_set_intr_enable_1(BMI160_DATA_RDY_ENABLE, BMI160_ENABLE);
	bmi160_set_intr_enable_1(BMI160_DATA_RDY_ENABLE, BMI160_ENABLE);
	return 1;
	return 1;
clean_exit4:
clean_exit4:
@@ -2251,6 +2253,13 @@ static ssize_t bmi160_acc_range_store(struct device *dev,
{
{
	int err;
	int err;
	unsigned long range;
	unsigned long range;
	struct iio_dev *indio_dev = dev_get_drvdata(dev);
	struct bmi_client_data *client_data = iio_priv(indio_dev);

	err = bmi160_check_acc_early_buff_enable_flag(client_data);
	if (err)
		return count;

	err = kstrtoul(buf, 10, &range);
	err = kstrtoul(buf, 10, &range);
	if (err)
	if (err)
		return err;
		return err;
@@ -2289,7 +2298,7 @@ static ssize_t bmi160_acc_odr_store(struct device *dev,


	err = bmi160_check_acc_early_buff_enable_flag(client_data);
	err = bmi160_check_acc_early_buff_enable_flag(client_data);
	if (err)
	if (err)
		return 0;
		return count;


	err = kstrtoul(buf, 10, &acc_odr);
	err = kstrtoul(buf, 10, &acc_odr);
	if (err)
	if (err)
@@ -2341,7 +2350,7 @@ static ssize_t bmi160_acc_op_mode_store(struct device *dev,


	err = bmi160_check_acc_early_buff_enable_flag(client_data);
	err = bmi160_check_acc_early_buff_enable_flag(client_data);
	if (err)
	if (err)
		return 0;
		return count;


	err = kstrtoul(buf, 10, &op_mode);
	err = kstrtoul(buf, 10, &op_mode);
	if (err)
	if (err)
@@ -2942,13 +2951,13 @@ static ssize_t bmi160_gyro_op_mode_store(struct device *dev,
	unsigned long op_mode;
	unsigned long op_mode;
	int err;
	int err;


	err = kstrtoul(buf, 10, &op_mode);
	err = bmi160_check_gyro_early_buff_enable_flag(client_data);
	if (err)
	if (err)
		return err;
		return count;


	err = bmi160_check_gyro_early_buff_enable_flag(client_data);
	err = kstrtoul(buf, 10, &op_mode);
	if (err)
	if (err)
		return 0;
		return err;


	mutex_lock(&client_data->mutex_op_mode);
	mutex_lock(&client_data->mutex_op_mode);


@@ -3022,6 +3031,13 @@ static ssize_t bmi160_gyro_range_store(struct device *dev,
{
{
	int err;
	int err;
	unsigned long range;
	unsigned long range;
	struct iio_dev *indio_dev = dev_get_drvdata(dev);
	struct bmi_client_data *client_data = iio_priv(indio_dev);

	err = bmi160_check_gyro_early_buff_enable_flag(client_data);
	if (err)
		return count;

	err = kstrtoul(buf, 10, &range);
	err = kstrtoul(buf, 10, &range);
	if (err)
	if (err)
		return err;
		return err;
@@ -3060,7 +3076,7 @@ static ssize_t bmi160_gyro_odr_store(struct device *dev,


	err = bmi160_check_gyro_early_buff_enable_flag(client_data);
	err = bmi160_check_gyro_early_buff_enable_flag(client_data);
	if (err)
	if (err)
		return 0;
		return count;


	err = kstrtoul(buf, 10, &gyro_odr);
	err = kstrtoul(buf, 10, &gyro_odr);
	if (err)
	if (err)
@@ -3538,7 +3554,7 @@ static ssize_t bmi_enable_int_store(struct device *dev,
	int interrupt_type, value;
	int interrupt_type, value;


	if (bmi160_check_acc_gyro_early_buff_enable_flag())
	if (bmi160_check_acc_gyro_early_buff_enable_flag())
		return 0;
		return count;


	sscanf(buf, "%3d %3d", &interrupt_type, &value);
	sscanf(buf, "%3d %3d", &interrupt_type, &value);