From a26d7c35cda740a2456539e9eb111c71a6b90372 Mon Sep 17 00:00:00 2001 From: Lorenz Meier Date: Sat, 14 Nov 2015 11:17:28 +0100 Subject: [PATCH] Baro sim: use right IOCTL API --- src/platforms/posix/drivers/barosim/baro_sim.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/platforms/posix/drivers/barosim/baro_sim.cpp b/src/platforms/posix/drivers/barosim/baro_sim.cpp index 5fc38aaa1c..22574c27dc 100644 --- a/src/platforms/posix/drivers/barosim/baro_sim.cpp +++ b/src/platforms/posix/drivers/barosim/baro_sim.cpp @@ -64,7 +64,7 @@ public: virtual int init(); virtual int dev_read(unsigned offset, void *data, unsigned count); - virtual int dev_ioctl(unsigned operation, unsigned &arg); + virtual int dev_ioctl(unsigned operation, unsigned arg); virtual int transfer(const uint8_t *send, unsigned send_len, uint8_t *recv, unsigned recv_len); @@ -143,7 +143,7 @@ BARO_SIM::dev_read(unsigned offset, void *data, unsigned count) } int -BARO_SIM::dev_ioctl(unsigned operation, unsigned &arg) +BARO_SIM::dev_ioctl(unsigned operation, unsigned arg) { int ret; @@ -208,6 +208,10 @@ BARO_SIM::transfer(const uint8_t *send, unsigned send_len, if (recv_len == 0) { PX4_DEBUG("BARO_SIM measurement requested"); + } else if (send_len == 1 || send[0] != 12) { + /* measure command */ + return 0; + } else if (send_len != 1 || send[0] != 0) { PX4_WARN("BARO_SIM::transfer invalid param %u %u %u", send_len, send[0], recv_len); return 1;