diff options
author | CrossR <r.cross@lancaster.ac.uk> | 2020-08-21 22:03:52 +0100 |
---|---|---|
committer | CrossR <r.cross@lancaster.ac.uk> | 2020-08-21 22:03:52 +0100 |
commit | 84761fc58931c8caa8cf1bf1b39946a9cb652822 (patch) | |
tree | ab5effc50925021507f742ed8206fbd683f4ee99 /app/boards/arm/nrfmicro/pinmux.c | |
parent | 5c29259fedc4a0265064afc0bc141e6bf33425f2 (diff) | |
parent | c619fb9c58c8f2dbcc19d74e7502459b49633113 (diff) |
Merge branch 'main' into CrossR/Sofle
Diffstat (limited to 'app/boards/arm/nrfmicro/pinmux.c')
-rw-r--r-- | app/boards/arm/nrfmicro/pinmux.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/app/boards/arm/nrfmicro/pinmux.c b/app/boards/arm/nrfmicro/pinmux.c new file mode 100644 index 0000000..c02ca92 --- /dev/null +++ b/app/boards/arm/nrfmicro/pinmux.c @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2020 Okke Formsma, joric + * + * SPDX-License-Identifier: MIT + */ + +#include <kernel.h> +#include <device.h> +#include <init.h> +#include <drivers/gpio.h> +#include <sys/sys_io.h> +#include <devicetree.h> + +static int pinmux_nrfmicro_init(struct device *port) +{ + ARG_UNUSED(port); + + struct device *p1 = device_get_binding("GPIO_1"); + +#if CONFIG_BOARD_NRFMICRO_13 + struct device *p0 = device_get_binding("GPIO_0"); + // enable EXT_VCC (use 0 for nRFMicro 1.3, use 1 for nRFMicro 1.1) + gpio_pin_configure(p1, 9, GPIO_OUTPUT); + gpio_pin_set(p1, 9, 0); + + // enable charger (nRFMicro 1.3 only) + gpio_pin_configure(p0, 5, GPIO_OUTPUT); + gpio_pin_set(p0, 5, 0); +#else + // enable EXT_VCC (use 0 for nRFMicro 1.3, use 1 for nRFMicro 1.1) + gpio_pin_configure(p1, 9, GPIO_OUTPUT); + gpio_pin_set(p1, 9, 1); +#endif + return 0; +} + +SYS_INIT(pinmux_nrfmicro_init, APPLICATION, CONFIG_APPLICATION_INIT_PRIORITY); |