Browse Source

lsm9ds1: cleanup + consistency with other drivers

sbg
Beat Küng 5 years ago committed by Daniel Agar
parent
commit
2d6a9ae1fb
  1. 20
      src/drivers/imu/st/lsm9ds1/LSM9DS1.cpp
  2. 4
      src/drivers/imu/st/lsm9ds1/LSM9DS1.hpp
  3. 2
      src/drivers/imu/st/lsm9ds1/lsm9ds1_main.cpp

20
src/drivers/imu/st/lsm9ds1/LSM9DS1.cpp

@ -73,20 +73,23 @@ int LSM9DS1::probe() @@ -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) @@ -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);

4
src/drivers/imu/st/lsm9ds1/LSM9DS1.hpp

@ -66,9 +66,9 @@ public: @@ -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();

2
src/drivers/imu/st/lsm9ds1/lsm9ds1_main.cpp

@ -47,7 +47,7 @@ I2CSPIDriverBase *LSM9DS1::instantiate(const BusCLIArguments &cli, const BusInst @@ -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;
}

Loading…
Cancel
Save