From 2d6a9ae1fbddc21280c3f447c2102d2084e0046f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beat=20K=C3=BCng?= Date: Wed, 18 Mar 2020 17:26:37 +0100 Subject: [PATCH] lsm9ds1: cleanup + consistency with other drivers --- src/drivers/imu/st/lsm9ds1/LSM9DS1.cpp | 20 ++++++++------------ src/drivers/imu/st/lsm9ds1/LSM9DS1.hpp | 4 ++-- src/drivers/imu/st/lsm9ds1/lsm9ds1_main.cpp | 2 +- 3 files changed, 11 insertions(+), 15 deletions(-) diff --git a/src/drivers/imu/st/lsm9ds1/LSM9DS1.cpp b/src/drivers/imu/st/lsm9ds1/LSM9DS1.cpp index 83b62768e5..913de7b97e 100644 --- a/src/drivers/imu/st/lsm9ds1/LSM9DS1.cpp +++ b/src/drivers/imu/st/lsm9ds1/LSM9DS1.cpp @@ -73,20 +73,23 @@ int LSM9DS1::probe() return PX4_ERROR; } -bool LSM9DS1::Init() +int LSM9DS1::init() { - if (SPI::init() != PX4_OK) { - return false; + int ret = SPI::init(); + + if (ret != OK) { + DEVICE_DEBUG("SPI init failed (%i)", ret); + return ret; } if (!Reset()) { PX4_ERR("reset failed"); - return false; + return PX4_ERROR; } Start(); - return true; + return PX4_OK; } bool LSM9DS1::Reset() @@ -172,18 +175,11 @@ void LSM9DS1::RegisterClearBits(Register reg, uint8_t clearbits) void LSM9DS1::Start() { - Stop(); - ResetFIFO(); ScheduleOnInterval(_fifo_interval / 2, _fifo_interval); } -void LSM9DS1::Stop() -{ - ScheduleClear(); -} - void LSM9DS1::RunImpl() { perf_count(_interval_perf); diff --git a/src/drivers/imu/st/lsm9ds1/LSM9DS1.hpp b/src/drivers/imu/st/lsm9ds1/LSM9DS1.hpp index 057fe21034..bda45ed4b5 100644 --- a/src/drivers/imu/st/lsm9ds1/LSM9DS1.hpp +++ b/src/drivers/imu/st/lsm9ds1/LSM9DS1.hpp @@ -66,9 +66,9 @@ public: static void print_usage(); void print_status(); - bool Init(); + int init() override; + void Start(); - void Stop(); bool Reset(); void RunImpl(); diff --git a/src/drivers/imu/st/lsm9ds1/lsm9ds1_main.cpp b/src/drivers/imu/st/lsm9ds1/lsm9ds1_main.cpp index 5c39962649..8b868c2d1a 100644 --- a/src/drivers/imu/st/lsm9ds1/lsm9ds1_main.cpp +++ b/src/drivers/imu/st/lsm9ds1/lsm9ds1_main.cpp @@ -47,7 +47,7 @@ I2CSPIDriverBase *LSM9DS1::instantiate(const BusCLIArguments &cli, const BusInst return nullptr; } - if (!instance->Init()) { + if (OK != instance->init()) { delete instance; return nullptr; }