From 60a40ec131790164471e2d2527effff04b7fd312 Mon Sep 17 00:00:00 2001
From: Daniel Agar <daniel@agar.ca>
Date: Sat, 3 Nov 2018 15:38:28 -0400
Subject: [PATCH] delete unused IOCTL MAGIOCSSAMPLERATE

---
 src/drivers/drv_mag.h                            |  3 ---
 src/drivers/imu/adis16448/adis16448.cpp          |  4 ----
 src/drivers/imu/fxos8701cq/fxos8701cq.cpp        |  3 ---
 src/drivers/imu/lsm303d/lsm303d.cpp              |  3 ---
 src/drivers/imu/mpu9250/mag.cpp                  | 12 ------------
 src/drivers/magnetometer/bmm150/bmm150.cpp       |  3 ---
 src/drivers/magnetometer/hmc5883/hmc5883.cpp     |  4 ----
 src/drivers/magnetometer/ist8310/ist8310.cpp     |  4 ----
 src/drivers/magnetometer/lis3mdl/lis3mdl.cpp     |  4 ----
 src/drivers/magnetometer/lsm303agr/LSM303AGR.cpp |  4 ----
 src/drivers/magnetometer/rm3100/rm3100.cpp       |  4 ----
 src/modules/simulator/accelsim/accelsim.cpp      |  4 ----
 src/modules/uavcan/sensors/mag.cpp               |  4 ----
 src/systemcmds/config/config.c                   | 12 +-----------
 14 files changed, 1 insertion(+), 67 deletions(-)

diff --git a/src/drivers/drv_mag.h b/src/drivers/drv_mag.h
index d385062fd3..0ada4e4c6a 100644
--- a/src/drivers/drv_mag.h
+++ b/src/drivers/drv_mag.h
@@ -69,9 +69,6 @@ struct mag_calibration_s {
 #define _MAGIOCBASE		(0x2400)
 #define _MAGIOC(_n)		(_PX4_IOC(_MAGIOCBASE, _n))
 
-/** set the mag internal sample rate to at least (arg) Hz */
-#define MAGIOCSSAMPLERATE	_MAGIOC(0)
-
 /** return the mag internal sample rate in Hz */
 #define MAGIOCGSAMPLERATE	_MAGIOC(1)
 
diff --git a/src/drivers/imu/adis16448/adis16448.cpp b/src/drivers/imu/adis16448/adis16448.cpp
index f4e7773734..eb2d4909da 100644
--- a/src/drivers/imu/adis16448/adis16448.cpp
+++ b/src/drivers/imu/adis16448/adis16448.cpp
@@ -1160,10 +1160,6 @@ ADIS16448::mag_ioctl(struct file *filp, int cmd, unsigned long arg)
 	case MAGIOCGSAMPLERATE:
 		return _sample_rate;
 
-	case MAGIOCSSAMPLERATE:
-		_set_sample_rate(arg);
-		return OK;
-
 	case MAGIOCSSCALE:
 		/* copy scale in */
 		memcpy(&_mag_scale, (struct mag_calibration_s *) arg, sizeof(_mag_scale));
diff --git a/src/drivers/imu/fxos8701cq/fxos8701cq.cpp b/src/drivers/imu/fxos8701cq/fxos8701cq.cpp
index 74fd0cce3b..d76a04209a 100644
--- a/src/drivers/imu/fxos8701cq/fxos8701cq.cpp
+++ b/src/drivers/imu/fxos8701cq/fxos8701cq.cpp
@@ -983,9 +983,6 @@ FXOS8701CQ::mag_ioctl(struct file *filp, int cmd, unsigned long arg)
 		reset();
 		return OK;
 
-	case MAGIOCSSAMPLERATE:
-		return mag_set_samplerate(arg);
-
 	case MAGIOCGSAMPLERATE:
 		return _mag_samplerate;
 
diff --git a/src/drivers/imu/lsm303d/lsm303d.cpp b/src/drivers/imu/lsm303d/lsm303d.cpp
index 2b891387b2..1f113418a4 100644
--- a/src/drivers/imu/lsm303d/lsm303d.cpp
+++ b/src/drivers/imu/lsm303d/lsm303d.cpp
@@ -994,9 +994,6 @@ LSM303D::mag_ioctl(struct file *filp, int cmd, unsigned long arg)
 		reset();
 		return OK;
 
-	case MAGIOCSSAMPLERATE:
-		return mag_set_samplerate(arg);
-
 	case MAGIOCGSAMPLERATE:
 		return _mag_samplerate;
 
diff --git a/src/drivers/imu/mpu9250/mag.cpp b/src/drivers/imu/mpu9250/mag.cpp
index ba5ce78ad6..34d83bc4fd 100644
--- a/src/drivers/imu/mpu9250/mag.cpp
+++ b/src/drivers/imu/mpu9250/mag.cpp
@@ -353,18 +353,6 @@ MPU9250_mag::ioctl(struct file *filp, int cmd, unsigned long arg)
 	case MAGIOCGSAMPLERATE:
 		return MPU9250_AK8963_SAMPLE_RATE;
 
-	case MAGIOCSSAMPLERATE:
-
-		/*
-		 * We don't currently support any means of changing
-		 * the sampling rate of the mag
-		 */
-		if (MPU9250_AK8963_SAMPLE_RATE != arg) {
-			return -EINVAL;
-		}
-
-		return OK;
-
 	case MAGIOCSSCALE:
 		/* copy scale in */
 		memcpy(&_mag_scale, (struct mag_scale *) arg, sizeof(_mag_scale));
diff --git a/src/drivers/magnetometer/bmm150/bmm150.cpp b/src/drivers/magnetometer/bmm150/bmm150.cpp
index 39d87ae13a..54438b4b1e 100644
--- a/src/drivers/magnetometer/bmm150/bmm150.cpp
+++ b/src/drivers/magnetometer/bmm150/bmm150.cpp
@@ -807,9 +807,6 @@ BMM150::ioctl(struct file *filp, int cmd, unsigned long arg)
 	case MAGIOCEXSTRAP:
 		return OK;
 
-	case MAGIOCSSAMPLERATE:
-		return ioctl(filp, SENSORIOCSPOLLRATE, arg);
-
 	case MAGIOCGSAMPLERATE:
 		return 1000000 / _call_interval;
 
diff --git a/src/drivers/magnetometer/hmc5883/hmc5883.cpp b/src/drivers/magnetometer/hmc5883/hmc5883.cpp
index 98c10f114a..7c5ffcac46 100644
--- a/src/drivers/magnetometer/hmc5883/hmc5883.cpp
+++ b/src/drivers/magnetometer/hmc5883/hmc5883.cpp
@@ -697,10 +697,6 @@ HMC5883::ioctl(struct file *filp, int cmd, unsigned long arg)
 	case SENSORIOCRESET:
 		return reset();
 
-	case MAGIOCSSAMPLERATE:
-		/* same as pollrate because device is in single measurement mode*/
-		return ioctl(filp, SENSORIOCSPOLLRATE, arg);
-
 	case MAGIOCGSAMPLERATE:
 		/* same as pollrate because device is in single measurement mode*/
 		return 1000000 / TICK2USEC(_measure_ticks);
diff --git a/src/drivers/magnetometer/ist8310/ist8310.cpp b/src/drivers/magnetometer/ist8310/ist8310.cpp
index a59d51e067..eec1b70a1a 100644
--- a/src/drivers/magnetometer/ist8310/ist8310.cpp
+++ b/src/drivers/magnetometer/ist8310/ist8310.cpp
@@ -677,10 +677,6 @@ IST8310::ioctl(struct file *filp, int cmd, unsigned long arg)
 	case SENSORIOCRESET:
 		return reset();
 
-	case MAGIOCSSAMPLERATE:
-		/* same as pollrate because device is in single measurement mode*/
-		return ioctl(filp, SENSORIOCSPOLLRATE, arg);
-
 	case MAGIOCGSAMPLERATE:
 		/* same as pollrate because device is in single measurement mode*/
 		return 1000000 / TICK2USEC(_measure_ticks);
diff --git a/src/drivers/magnetometer/lis3mdl/lis3mdl.cpp b/src/drivers/magnetometer/lis3mdl/lis3mdl.cpp
index 2c8e3d5e87..a4172868c3 100644
--- a/src/drivers/magnetometer/lis3mdl/lis3mdl.cpp
+++ b/src/drivers/magnetometer/lis3mdl/lis3mdl.cpp
@@ -584,10 +584,6 @@ LIS3MDL::ioctl(struct file *file_pointer, int cmd, unsigned long arg)
 	case SENSORIOCRESET:
 		return reset();
 
-	case MAGIOCSSAMPLERATE:
-		/* same as pollrate because device is in single measurement mode*/
-		return ioctl(file_pointer, SENSORIOCSPOLLRATE, arg);
-
 	case MAGIOCGSAMPLERATE:
 		/* same as pollrate because device is in single measurement mode*/
 		return 1000000 / TICK2USEC(_measure_ticks);
diff --git a/src/drivers/magnetometer/lsm303agr/LSM303AGR.cpp b/src/drivers/magnetometer/lsm303agr/LSM303AGR.cpp
index b725b578b6..8a6f168e34 100644
--- a/src/drivers/magnetometer/lsm303agr/LSM303AGR.cpp
+++ b/src/drivers/magnetometer/lsm303agr/LSM303AGR.cpp
@@ -308,10 +308,6 @@ LSM303AGR::ioctl(struct file *filp, int cmd, unsigned long arg)
 	case SENSORIOCRESET:
 		return reset();
 
-	case MAGIOCSSAMPLERATE:
-		/* same as pollrate because device is in single measurement mode*/
-		return ioctl(filp, SENSORIOCSPOLLRATE, arg);
-
 	case MAGIOCGSAMPLERATE:
 		/* same as pollrate because device is in single measurement mode*/
 		return 1000000 / TICK2USEC(_measure_ticks);
diff --git a/src/drivers/magnetometer/rm3100/rm3100.cpp b/src/drivers/magnetometer/rm3100/rm3100.cpp
index fb37f0730a..3d8562b0b1 100644
--- a/src/drivers/magnetometer/rm3100/rm3100.cpp
+++ b/src/drivers/magnetometer/rm3100/rm3100.cpp
@@ -445,10 +445,6 @@ RM3100::ioctl(struct file *file_pointer, int cmd, unsigned long arg)
 	case SENSORIOCRESET:
 		return reset();
 
-	case MAGIOCSSAMPLERATE:
-		/* same as pollrate because device is in single measurement mode*/
-		return ioctl(file_pointer, SENSORIOCSPOLLRATE, arg);
-
 	case MAGIOCGSAMPLERATE:
 		/* same as pollrate because device is in single measurement mode*/
 		return 1000000 / TICK2USEC(_measure_ticks);
diff --git a/src/modules/simulator/accelsim/accelsim.cpp b/src/modules/simulator/accelsim/accelsim.cpp
index 9e6a76e978..7619440163 100644
--- a/src/modules/simulator/accelsim/accelsim.cpp
+++ b/src/modules/simulator/accelsim/accelsim.cpp
@@ -659,10 +659,6 @@ ACCELSIM::mag_ioctl(unsigned long cmd, unsigned long arg)
 		// Nothing to do for simulator
 		return OK;
 
-	case MAGIOCSSAMPLERATE:
-		// No need to set internal sampling rate for simulator
-		return OK;
-
 	case MAGIOCGSAMPLERATE:
 		return _mag_samplerate;
 
diff --git a/src/modules/uavcan/sensors/mag.cpp b/src/modules/uavcan/sensors/mag.cpp
index cad8097937..9a5b1321aa 100644
--- a/src/modules/uavcan/sensors/mag.cpp
+++ b/src/modules/uavcan/sensors/mag.cpp
@@ -118,10 +118,6 @@ int UavcanMagnetometerBridge::ioctl(struct file *filp, int cmd, unsigned long ar
 			return 1;           // declare it external rise it's priority and to allow for correct orientation compensation
 		}
 
-	case MAGIOCSSAMPLERATE: {
-			return 0;           // Pretend that this stuff is supported to keep the sensor app happy
-		}
-
 	case MAGIOCCALIBRATE:
 	case MAGIOCGSAMPLERATE:
 	case MAGIOCSRANGE:
diff --git a/src/systemcmds/config/config.c b/src/systemcmds/config/config.c
index da2543568e..3661cca74a 100644
--- a/src/systemcmds/config/config.c
+++ b/src/systemcmds/config/config.c
@@ -223,17 +223,7 @@ do_mag(int argc, char *argv[])
 
 		int ret;
 
-		if (argc == 3 && !strcmp(argv[0], "sampling")) {
-
-			/* set the mag internal sampling rate up to at least i Hz */
-			ret = ioctl(fd, MAGIOCSSAMPLERATE, strtoul(argv[2], NULL, 0));
-
-			if (ret) {
-				PX4_ERR("sampling rate could not be set");
-				return 1;
-			}
-
-		} else if (argc == 3 && !strcmp(argv[0], "rate")) {
+		if (argc == 3 && !strcmp(argv[0], "rate")) {
 
 			/* set the driver to poll at i Hz */
 			ret = ioctl(fd, SENSORIOCSPOLLRATE, strtoul(argv[2], NULL, 0));
-- 
GitLab