| /* |
| * Copyright (c) 2021 Instituto de Pesquisas Eldorado (eldorado.org.br) |
| * |
| * SPDX-License-Identifier: Apache-2.0 |
| */ |
| |
| #include <zephyr/drivers/gpio.h> |
| |
| #define VEXT_PIN DT_GPIO_PIN(DT_NODELABEL(vext), gpios) |
| #define OLED_RST DT_GPIO_PIN(DT_NODELABEL(oledrst), gpios) |
| |
| static int board_heltec_wifi_lora32_v2_init(const struct device *dev) |
| { |
| ARG_UNUSED(dev); |
| const struct device *gpio; |
| |
| gpio = device_get_binding(DT_LABEL(DT_NODELABEL(gpio0))); |
| if (!gpio) { |
| return -ENODEV; |
| } |
| |
| /* turns external VCC on */ |
| gpio_pin_configure(gpio, VEXT_PIN, GPIO_OUTPUT); |
| gpio_pin_set_raw(gpio, VEXT_PIN, 0); |
| |
| /* turns OLED on */ |
| gpio_pin_configure(gpio, OLED_RST, GPIO_OUTPUT); |
| gpio_pin_set_raw(gpio, OLED_RST, 1); |
| |
| return 0; |
| } |
| |
| SYS_INIT(board_heltec_wifi_lora32_v2_init, PRE_KERNEL_2, CONFIG_GPIO_INIT_PRIORITY); |