diff --git a/sys/auto_init/saul/auto_init_tsl2561.c b/sys/auto_init/saul/auto_init_tsl2561.c index 39809e159b..487075e4a3 100644 --- a/sys/auto_init/saul/auto_init_tsl2561.c +++ b/sys/auto_init/saul/auto_init_tsl2561.c @@ -40,30 +40,32 @@ static tsl2561_t tsl2561_devs[TSL2561_NUMOF]; */ static saul_reg_t saul_entries[TSL2561_NUMOF]; +/** + * @brief Define the number of saul info + */ +#define TSL2561_INFO_NUMOF (sizeof(tsl2561_saul_info) / sizeof(tsl2561_saul_info[0])) + /** * @brief Reference the driver structs. - * @{ */ extern const saul_driver_t tsl2561_illuminance_saul_driver; -/** @} */ void auto_init_tsl2561(void) { + assert(TSL2561_NUMOF == TSL2561_INFO_NUMOF); + for (unsigned i = 0; i < TSL2561_NUMOF; i++) { LOG_DEBUG("[auto_init_saul] initializing tsl2561 #%u\n", i); if (tsl2561_init(&tsl2561_devs[i], - tsl2561_params[i].i2c_dev, - tsl2561_params[i].addr, - tsl2561_params[i].gain, - tsl2561_params[i].integration) != TSL2561_OK) { + &tsl2561_params[i]) != TSL2561_OK) { LOG_ERROR("[auto_init_saul] error initializing tsl2561 #%u\n", i); continue; } /* illuminance */ saul_entries[i].dev = &(tsl2561_devs[i]); - saul_entries[i].name = tsl2561_saul_reg_info[i].name; + saul_entries[i].name = tsl2561_saul_info[i].name; saul_entries[i].driver = &tsl2561_illuminance_saul_driver; /* register to saul */