diff --git a/src/drivers/drv_accel.h b/src/drivers/drv_accel.h
index 63886530dc39fb272f40ec15c0da0b2128dac96c..ef19427983c857c2b0c84eff14427860ea099b6d 100644
--- a/src/drivers/drv_accel.h
+++ b/src/drivers/drv_accel.h
@@ -76,7 +76,4 @@ struct accel_calibration_s {
 /** set the accel scaling constants to the structure pointed to by (arg) */
 #define ACCELIOCSSCALE		_ACCELIOC(5)
 
-/** determine if hardware is external or onboard */
-#define ACCELIOCGEXTERNAL	_ACCELIOC(12)
-
 #endif /* _DRV_ACCEL_H */
diff --git a/src/drivers/imu/mpu6000/mpu6000.cpp b/src/drivers/imu/mpu6000/mpu6000.cpp
index 2953132ec6a9f1130e0cc2d7ae4d44bf1fb69c79..33965eec7a0d7b1d68972e5861d9285d4673e5ba 100644
--- a/src/drivers/imu/mpu6000/mpu6000.cpp
+++ b/src/drivers/imu/mpu6000/mpu6000.cpp
@@ -373,11 +373,7 @@ private:
 	 *
 	 * @return true if the sensor is not on the main MCU board
 	 */
-	bool			is_external()
-	{
-		unsigned dummy;
-		return _interface->ioctl(ACCELIOCGEXTERNAL, dummy);
-	}
+	bool			is_external() { return _interface->external(); }
 
 	/**
 	 * Measurement self test
@@ -1263,8 +1259,6 @@ MPU6000::gyro_read(struct file *filp, char *buffer, size_t buflen)
 int
 MPU6000::ioctl(struct file *filp, int cmd, unsigned long arg)
 {
-	unsigned dummy = arg;
-
 	switch (cmd) {
 
 	case SENSORIOCRESET:
@@ -1380,9 +1374,6 @@ MPU6000::ioctl(struct file *filp, int cmd, unsigned long arg)
 			}
 		}
 
-	case ACCELIOCGEXTERNAL:
-		return _interface->ioctl(cmd, dummy);
-
 	default:
 		/* give it to the superclass */
 		return CDev::ioctl(filp, cmd, arg);
diff --git a/src/drivers/imu/mpu6000/mpu6000_i2c.cpp b/src/drivers/imu/mpu6000/mpu6000_i2c.cpp
index 190bc24bb1f07c30e057b800fc68e4dbca02fec1..cfb1b8870da6fcec9b8c68ef4ed6fed3aacb6b6e 100644
--- a/src/drivers/imu/mpu6000/mpu6000_i2c.cpp
+++ b/src/drivers/imu/mpu6000/mpu6000_i2c.cpp
@@ -102,10 +102,6 @@ MPU6000_I2C::ioctl(unsigned operation, unsigned &arg)
 	int ret;
 
 	switch (operation) {
-
-	case ACCELIOCGEXTERNAL:
-		return external();
-
 	case DEVIOCGDEVICEID:
 		return CDev::ioctl(nullptr, operation, arg);
 
diff --git a/src/drivers/imu/mpu6000/mpu6000_spi.cpp b/src/drivers/imu/mpu6000/mpu6000_spi.cpp
index 2261e1bb868b7ee39c78b49074a9e59fbb39c0bc..1a8e21229aa53d7a5e2ce79b7a52a5aaa3742e98 100644
--- a/src/drivers/imu/mpu6000/mpu6000_spi.cpp
+++ b/src/drivers/imu/mpu6000/mpu6000_spi.cpp
@@ -234,12 +234,6 @@ MPU6000_SPI::ioctl(unsigned operation, unsigned &arg)
 	int ret;
 
 	switch (operation) {
-
-	case ACCELIOCGEXTERNAL:
-		external();
-
-	/* FALLTHROUGH */
-
 	case DEVIOCGDEVICEID:
 		return CDev::ioctl(nullptr, operation, arg);
 
diff --git a/src/drivers/imu/mpu9250/mag_i2c.cpp b/src/drivers/imu/mpu9250/mag_i2c.cpp
index 3f0bb4f225cc1b97ce1593feeed5455fde256b48..a3c163ea4ab2ce1d04c77fa3f4d4cfb4158020fa 100644
--- a/src/drivers/imu/mpu9250/mag_i2c.cpp
+++ b/src/drivers/imu/mpu9250/mag_i2c.cpp
@@ -100,10 +100,6 @@ AK8963_I2C::ioctl(unsigned operation, unsigned &arg)
 	int ret;
 
 	switch (operation) {
-
-	case ACCELIOCGEXTERNAL:
-		return external();
-
 	case DEVIOCGDEVICEID:
 		return CDev::ioctl(nullptr, operation, arg);
 
diff --git a/src/drivers/imu/mpu9250/mpu9250.h b/src/drivers/imu/mpu9250/mpu9250.h
index 866662569e64c16a9fe509a52f2f0cd61401d3a9..3939e9527013e3ead5798bb1d620fc2829e6aefa 100644
--- a/src/drivers/imu/mpu9250/mpu9250.h
+++ b/src/drivers/imu/mpu9250/mpu9250.h
@@ -490,11 +490,7 @@ private:
 	 *
 	 * @return true if the sensor is not on the main MCU board
 	 */
-	bool			is_external()
-	{
-		unsigned dummy;
-		return _interface->ioctl(ACCELIOCGEXTERNAL, dummy);
-	}
+	bool			is_external() { return _interface->external(); }
 
 	/**
 	 * Measurement self test
diff --git a/src/drivers/imu/mpu9250/mpu9250_i2c.cpp b/src/drivers/imu/mpu9250/mpu9250_i2c.cpp
index 2b3bf0f5a57c7e0be08392a15bb722881c248e49..0279d28a12d77b2ec217127cf302f3186e9d05b7 100644
--- a/src/drivers/imu/mpu9250/mpu9250_i2c.cpp
+++ b/src/drivers/imu/mpu9250/mpu9250_i2c.cpp
@@ -97,10 +97,6 @@ MPU9250_I2C::ioctl(unsigned operation, unsigned &arg)
 	int ret = PX4_ERROR;
 
 	switch (operation) {
-
-	case ACCELIOCGEXTERNAL:
-		return external();
-
 	case DEVIOCGDEVICEID:
 		return CDev::ioctl(nullptr, operation, arg);
 
diff --git a/src/drivers/imu/mpu9250/mpu9250_spi.cpp b/src/drivers/imu/mpu9250/mpu9250_spi.cpp
index 6f3279b29173076401da219fb48877b557c15228..de623263449a2c7046ab05abd7b39d78e36a76e0 100644
--- a/src/drivers/imu/mpu9250/mpu9250_spi.cpp
+++ b/src/drivers/imu/mpu9250/mpu9250_spi.cpp
@@ -130,12 +130,6 @@ MPU9250_SPI::ioctl(unsigned operation, unsigned &arg)
 	int ret;
 
 	switch (operation) {
-
-	case ACCELIOCGEXTERNAL:
-		external();
-
-	/* FALLTHROUGH */
-
 	case DEVIOCGDEVICEID:
 		return CDev::ioctl(nullptr, operation, arg);