Skip to content
Snippets Groups Projects
Commit b860ad37 authored by Cenk Gündoğan's avatar Cenk Gündoğan
Browse files

saul: make pull-up/pull-down mode configurable

parent f4006a67
Branches
No related tags found
No related merge requests found
...@@ -35,16 +35,19 @@ static const saul_gpio_params_t saul_gpio_params[] = ...@@ -35,16 +35,19 @@ static const saul_gpio_params_t saul_gpio_params[] =
.name = "LED(red)", .name = "LED(red)",
.pin = LED_RED_GPIO, .pin = LED_RED_GPIO,
.dir = GPIO_DIR_OUT, .dir = GPIO_DIR_OUT,
.pull = GPIO_NOPULL,
}, },
{ {
.name = "LED(green)", .name = "LED(green)",
.pin = LED_GREEN_GPIO, .pin = LED_GREEN_GPIO,
.dir = GPIO_DIR_OUT, .dir = GPIO_DIR_OUT,
.pull = GPIO_NOPULL,
}, },
{ {
.name = "LED(orange)", .name = "LED(orange)",
.pin = LED_ORANGE_GPIO, .pin = LED_ORANGE_GPIO,
.dir = GPIO_DIR_OUT, .dir = GPIO_DIR_OUT,
.pull = GPIO_NOPULL,
}, },
}; };
......
...@@ -37,6 +37,7 @@ static const saul_gpio_params_t saul_gpio_params[] = ...@@ -37,6 +37,7 @@ static const saul_gpio_params_t saul_gpio_params[] =
.name = "LED(orange)", .name = "LED(orange)",
.pin = LED_GPIO, .pin = LED_GPIO,
.dir = GPIO_DIR_OUT, .dir = GPIO_DIR_OUT,
.pull = GPIO_NOPULL,
}, },
}; };
......
...@@ -32,6 +32,7 @@ typedef struct { ...@@ -32,6 +32,7 @@ typedef struct {
const char *name; /**< name of the device connected to this pin */ const char *name; /**< name of the device connected to this pin */
gpio_t pin; /**< GPIO pin to initialize and expose */ gpio_t pin; /**< GPIO pin to initialize and expose */
gpio_dir_t dir; /**< use GPIO as input or output */ gpio_dir_t dir; /**< use GPIO as input or output */
gpio_pp_t pull; /**< define the pull-up/pull-down mode */
} saul_gpio_params_t; } saul_gpio_params_t;
#ifdef __cplusplus #ifdef __cplusplus
......
...@@ -62,7 +62,7 @@ void auto_init_gpio(void) ...@@ -62,7 +62,7 @@ void auto_init_gpio(void)
saul_reg_entries[i].name = p->name; saul_reg_entries[i].name = p->name;
saul_reg_entries[i].driver = &gpio_saul_driver; saul_reg_entries[i].driver = &gpio_saul_driver;
/* initialize the GPIO pin */ /* initialize the GPIO pin */
gpio_init(p->pin, p->dir, GPIO_NOPULL); gpio_init(p->pin, p->dir, p->pull);
/* add to registry */ /* add to registry */
saul_reg_add(&(saul_reg_entries[i])); saul_reg_add(&(saul_reg_entries[i]));
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment