| /* |
| * Copyright (c) 2020 Raspberry Pi (Trading) Ltd. |
| * |
| * SPDX-License-Identifier: BSD-3-Clause |
| */ |
| |
| #ifndef _PICO_RUNTIME_H |
| #define _PICO_RUNTIME_H |
| |
| #include "pico.h" |
| |
| /** \file runtime.h |
| * \defgroup pico_runtime pico_runtime |
| * \brief Basic runtime support for running pre-main initializers provided by other libraries |
| */ |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #define PICO_RUNTIME_INIT_TYPE_HW 0 |
| #define PICO_RUNTIME_INIT_TYPE_RUNTIME 1 |
| #define PICO_RUNTIME_INIT_TYPE_PER_CORE 2 |
| |
| #ifndef PICO_RUNTIME_INIT_FUNC_FLAGS |
| #define PICO_RUNTIME_INIT_FUNC_FLAGS(func, flags, priority_string1, priority_string2) |
| #endif |
| #define PICO_RUNTIME_INIT_FUNC_HW(func, priority_string1, priority_string2) PICO_RUNTIME_INIT_FUNC_FLAGS(func, PICO_RUNTIME_INIT_TYPE_HW, priority_string1, priority_string2) |
| #define PICO_RUNTIME_INIT_FUNC_RUNTIME(func, priority_string1, priority_string2) PICO_RUNTIME_INIT_FUNC_FLAGS(func, PICO_RUNTIME_INIT_TYPE_RUNTIME, priority_string1, priority_string2) |
| #define PICO_RUNTIME_INIT_FUNC_PER_CORE(func, priority_string1, priority_string2) PICO_RUNTIME_INIT_FUNC_FLAGS(func, PICO_RUNTIME_INIT_TYPE_PER_CORE, priority_string1, priority_string2) |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif |