libmetal  82
sys.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2016, Xilinx Inc. and Contributors. All rights reserved.
3  * Copyright (c) 2022-2023 Advanced Micro Devices, Inc. All Rights Reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 
13 #ifndef __METAL_SYS__H__
14 #error "Include metal/sys.h instead of metal/freertos/sys.h"
15 #endif
16 
17 #ifndef __METAL_FREERTOS_SYS__H__
18 #define __METAL_FREERTOS_SYS__H__
19 
20 #include <metal/errno.h>
21 #include <metal/cpu.h>
22 
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26 
27 #ifndef METAL_MAX_DEVICE_REGIONS
28 #define METAL_MAX_DEVICE_REGIONS 1
29 #endif
30 
31 #define metal_yield() metal_cpu_yield()
32 
34 struct metal_state {
35 
38 };
39 
40 #ifdef METAL_INTERNAL
41 
45 void sys_irq_restore_enable(unsigned int flags);
46 
50 unsigned int sys_irq_save_disable(void);
51 
57 void sys_irq_enable(unsigned int vector);
58 
64 void sys_irq_disable(unsigned int vector);
65 
66 #endif /* METAL_INTERNAL */
67 
68 #ifdef __cplusplus
69 }
70 #endif
71 
72 #endif /* __METAL_FREERTOS_SYS__H__ */
void sys_irq_disable(unsigned int vector)
Definition: sys.c:36
unsigned int sys_irq_save_disable(void)
Definition: sys.c:23
void sys_irq_enable(unsigned int vector)
Definition: sys.c:29
void sys_irq_restore_enable(unsigned int flags)
Definition: sys.c:17
System independent runtime state for libmetal.
Definition: sys.h:63
Structure for FreeRTOS libmetal runtime state.
Definition: sys.h:34
struct metal_common_state common
Common (system independent) data.
Definition: sys.h:37