libmetal
Loading...
Searching...
No Matches
sys.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2017, Linaro Limited. and Contributors. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7/*
8 * @file zephyr/sys.h
9 * @brief Zephyr system primitives for libmetal.
10 */
11
12#ifndef __METAL_SYS__H__
13#error "Include metal/sys.h instead of metal/zephyr/sys.h"
14#endif
15
16#ifndef __METAL_ZEPHYR_SYS__H__
17#define __METAL_ZEPHYR_SYS__H__
18
19#include <metal/cpu.h>
20#include <stdlib.h>
21#include <zephyr/kernel.h>
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
27#define metal_yield() metal_cpu_yield()
28
29#define METAL_INIT_DEFAULTS \
30{ \
31 .log_handler = metal_zephyr_log_handler, \
32 .log_level = METAL_LOG_INFO, \
33}
34
35#ifndef METAL_MAX_DEVICE_REGIONS
36#define METAL_MAX_DEVICE_REGIONS 1
37#endif
38
40struct metal_state {
41
44};
45
46static inline void metal_wait_usec(uint32_t usec_to_wait)
47{
48 k_busy_wait(usec_to_wait);
49}
50
51#ifdef __cplusplus
52}
53#endif
54
55#endif /* __METAL_ZEPHYR_SYS__H__ */
Definition sys.h:63
Definition sys.h:40
struct metal_common_state common
Definition sys.h:43
static void metal_wait_usec(uint32_t usec_to_wait)
Definition sys.h:46