summaryrefslogtreecommitdiff
path: root/app/boards/arm/nrfmicro/pinmux.c
diff options
context:
space:
mode:
authorPete Johanson <peter@peterjohanson.com>2020-08-19 16:05:51 -0400
committerGitHub <noreply@github.com>2020-08-19 16:05:51 -0400
commit2a0e35c11f02257e7292ea5766b952fa8b364bbf (patch)
tree94e9907805e98800909f482470e8e694324d05be /app/boards/arm/nrfmicro/pinmux.c
parentebd6fbb2254cfcdd8af6309dd9a5c3251ac19935 (diff)
parent93b1e0ac442234c4ce60caf6937fa764df8d9913 (diff)
Merge pull request #101 from okke-formsma/nrfmicro
nrfmicro support
Diffstat (limited to 'app/boards/arm/nrfmicro/pinmux.c')
-rw-r--r--app/boards/arm/nrfmicro/pinmux.c37
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..803d20d
--- /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 defined(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); \ No newline at end of file