oveRTOS C++ API
C++20 RAII wrappers for the oveRTOS C API
Loading...
Searching...
No Matches
bsp.hpp
Go to the documentation of this file.
1/*
2 * Copyright (C) 2026 Kamil Lulko <kamil.lulko@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-3.0-or-later
5 *
6 * This file is part of oveRTOS.
7 */
8
14#pragma once
15
16#include <ove/bsp.h>
17#include <ove/types.hpp>
18
19#ifdef CONFIG_OVE_BSP
20
21namespace ove {
22
30namespace bsp {
31
36[[nodiscard]] inline int board_init() {
37 return ove_bsp_board_init();
38}
39
45inline void led_set(unsigned int led, int on) {
46 ove_bsp_led_set(led, on);
47}
48
53inline void led_toggle(unsigned int led) {
54 ove_bsp_led_toggle(led);
55}
56
64[[nodiscard]] inline int gpio_set(unsigned int port, unsigned int pin,
65 int value) {
66 return ove_bsp_gpio_set(port, pin, value);
67}
68
75[[nodiscard]] inline int gpio_get(unsigned int port, unsigned int pin) {
76 return ove_bsp_gpio_get(port, pin);
77}
78
88[[nodiscard]] inline int gpio_irq_register(unsigned int port,
89 unsigned int pin,
90 ove_gpio_irq_mode_t mode,
91 ove_gpio_irq_cb callback,
92 void *user_data) {
93 return ove_bsp_gpio_irq_register(port, pin, mode, callback,
94 user_data);
95}
96
103[[nodiscard]] inline int gpio_irq_enable(unsigned int port,
104 unsigned int pin) {
105 return ove_bsp_gpio_irq_enable(port, pin);
106}
107
114[[nodiscard]] inline int gpio_irq_disable(unsigned int port,
115 unsigned int pin) {
116 return ove_bsp_gpio_irq_disable(port, pin);
117}
118
119} /* namespace bsp */
120
121} // namespace ove
122
123#endif /* CONFIG_OVE_BSP */
int gpio_irq_enable(unsigned int port, unsigned int pin)
Enables a GPIO interrupt (backward-compatibility alias for gpio::irq_enable).
Definition bsp.hpp:103
int gpio_get(unsigned int port, unsigned int pin)
Reads a GPIO pin level (backward-compatibility alias for gpio::get).
Definition bsp.hpp:75
void led_toggle(unsigned int led)
Toggles a LED (backward-compatibility alias for led::toggle).
Definition bsp.hpp:53
int gpio_set(unsigned int port, unsigned int pin, int value)
Drives a GPIO output pin (backward-compatibility alias for gpio::set).
Definition bsp.hpp:64
int gpio_irq_disable(unsigned int port, unsigned int pin)
Disables a GPIO interrupt (backward-compatibility alias for gpio::irq_disable).
Definition bsp.hpp:114
int gpio_irq_register(unsigned int port, unsigned int pin, ove_gpio_irq_mode_t mode, ove_gpio_irq_cb callback, void *user_data)
Registers a GPIO interrupt callback (backward-compatibility alias for gpio::irq_register).
Definition bsp.hpp:88
int board_init()
Initialises the board hardware (backward-compatibility alias for board::init).
Definition bsp.hpp:36
void led_set(unsigned int led, int on)
Turns a LED on or off (backward-compatibility alias for led::set).
Definition bsp.hpp:45
Top-level namespace for all oveRTOS C++ abstractions.
Definition app.hpp:19
Common type definitions and concepts for the C++ wrapper layer.