fxos8700: Fix broken gpio callback implementation
Fixes fxos8700_gpio_callback() to pass a pin number to gpio_pin_disable_callback() rather than a pin mask. Jira: ZEP-1507 Change-Id: I15bfbf4d3377f22942aa549377472d2b1142c32b Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
This commit is contained in:
parent
19974338bf
commit
8575a36dbe
2 changed files with 9 additions and 2 deletions
|
@ -114,6 +114,7 @@ struct fxos8700_data {
|
|||
struct k_sem sem;
|
||||
#ifdef CONFIG_FXOS8700_TRIGGER
|
||||
struct device *gpio;
|
||||
uint8_t gpio_pin;
|
||||
struct gpio_callback gpio_cb;
|
||||
sensor_trigger_handler_t drdy_handler;
|
||||
#endif
|
||||
|
|
|
@ -8,12 +8,16 @@
|
|||
|
||||
static void fxos8700_gpio_callback(struct device *dev,
|
||||
struct gpio_callback *cb,
|
||||
uint32_t pin)
|
||||
uint32_t pin_mask)
|
||||
{
|
||||
struct fxos8700_data *data =
|
||||
CONTAINER_OF(cb, struct fxos8700_data, gpio_cb);
|
||||
|
||||
gpio_pin_disable_callback(dev, pin);
|
||||
if ((pin_mask & BIT(data->gpio_pin)) == 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
gpio_pin_disable_callback(dev, data->gpio_pin);
|
||||
|
||||
#if defined(CONFIG_FXOS8700_TRIGGER_OWN_THREAD)
|
||||
k_sem_give(&data->trig_sem);
|
||||
|
@ -295,6 +299,8 @@ int fxos8700_trigger_init(struct device *dev)
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
data->gpio_pin = config->gpio_pin;
|
||||
|
||||
gpio_pin_configure(data->gpio, config->gpio_pin,
|
||||
GPIO_DIR_IN | GPIO_INT | GPIO_INT_EDGE |
|
||||
GPIO_INT_ACTIVE_LOW | GPIO_INT_DEBOUNCE);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue