You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by an...@apache.org on 2018/11/23 16:16:51 UTC
[mynewt-core] 19/26: hw/drivers/bme280: Fix creation of bus node
for sensor
This is an automated email from the ASF dual-hosted git repository.
andk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mynewt-core.git
commit b5b8c1760053358aa4ba63f8ea6717b365283934
Author: Andrzej Kaczmarek <an...@codecoup.pl>
AuthorDate: Thu Nov 15 22:30:22 2018 +0100
hw/drivers/bme280: Fix creation of bus node for sensor
---
hw/drivers/sensors/bme280/include/bme280/bme280.h | 8 ++++----
hw/drivers/sensors/bme280/src/bme280.c | 18 +++++++++++-------
2 files changed, 15 insertions(+), 11 deletions(-)
diff --git a/hw/drivers/sensors/bme280/include/bme280/bme280.h b/hw/drivers/sensors/bme280/include/bme280/bme280.h
index 2bb4630..8979fbe 100644
--- a/hw/drivers/sensors/bme280/include/bme280/bme280.h
+++ b/hw/drivers/sensors/bme280/include/bme280/bme280.h
@@ -286,12 +286,12 @@ int bme280_shell_init(void);
#if MYNEWT_VAL(BUS_DRIVER_PRESENT)
int
-bme280_create_i2c_dev(struct bus_i2c_node *node, const char *name,
- const struct bus_i2c_node_cfg *cfg);
+bme280_create_i2c_sensor_dev(struct bus_i2c_node *node, const char *name,
+ const struct sensor_node_cfg *cfg);
int
-bme280_create_spi_dev(struct bus_spi_node *node, const char *name,
- const struct bus_spi_node_cfg *cfg);
+bme280_create_spi_sensor_dev(struct bus_spi_node *node, const char *name,
+ const struct sensor_node_cfg *cfg);
#endif
#ifdef __cplusplus
diff --git a/hw/drivers/sensors/bme280/src/bme280.c b/hw/drivers/sensors/bme280/src/bme280.c
index 864d368..92c5fe9 100644
--- a/hw/drivers/sensors/bme280/src/bme280.c
+++ b/hw/drivers/sensors/bme280/src/bme280.c
@@ -1393,12 +1393,16 @@ err:
static void
init_node_cb(struct bus_node *bnode, void *arg)
{
- bme280_init((struct os_dev *)bnode, arg);
+ struct sensor_node_cfg *cfg = CONTAINER_OF(arg, struct sensor_node_cfg,
+ i2c_node_cfg);
+ struct sensor_itf *itf = &cfg->itf;
+
+ bme280_init((struct os_dev *)bnode, itf);
}
int
-bme280_create_i2c_dev(struct bus_i2c_node *node, const char *name,
- const struct bus_i2c_node_cfg *cfg)
+bme280_create_i2c_sensor_dev(struct bus_i2c_node *node, const char *name,
+ const struct sensor_node_cfg *cfg)
{
struct bus_node_callbacks cbs = {
.init = init_node_cb,
@@ -1407,14 +1411,14 @@ bme280_create_i2c_dev(struct bus_i2c_node *node, const char *name,
bus_node_set_callbacks((struct os_dev *)node, &cbs);
- rc = bus_i2c_node_create(name, node, (struct bus_i2c_node_cfg *)cfg);
+ rc = bus_i2c_node_create(name, node, &cfg->i2c_node_cfg);
return rc;
}
int
-bme280_create_spi_dev(struct bus_spi_node *node, const char *name,
- const struct bus_spi_node_cfg *cfg)
+bme280_create_spi_sensor_dev(struct bus_spi_node *node, const char *name,
+ const struct sensor_node_cfg *cfg)
{
struct bus_node_callbacks cbs = {
.init = init_node_cb,
@@ -1423,7 +1427,7 @@ bme280_create_spi_dev(struct bus_spi_node *node, const char *name,
bus_node_set_callbacks((struct os_dev *)node, &cbs);
- rc = bus_spi_node_create(name, node, (struct bus_spi_node_cfg *)cfg);
+ rc = bus_spi_node_create(name, node, &cfg->spi_node_cfg);
return rc;
}