]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/MicroBlaze_Kintex7_EthernetLite/BSP/microblaze_0/libsrc/standalone_v5_4/src/fsl.h
Update the Microblaze hardware design and BSP to the latest IP and tool versions.
[freertos] / FreeRTOS / Demo / MicroBlaze_Kintex7_EthernetLite / BSP / microblaze_0 / libsrc / standalone_v5_4 / src / fsl.h
1 #ifndef FSL_H
2 #define FSL_H
3
4 #include "mb_interface.h"       /* Legacy reasons. We just have to include this guy who defines the FSL stuff */
5
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
9
10 /* Extended FSL macros. These now replace all of the previous FSL macros */
11 #define FSL_DEFAULT
12 #define FSL_NONBLOCKING                          n
13 #define FSL_EXCEPTION                            e
14 #define FSL_CONTROL                              c
15 #define FSL_ATOMIC                               a
16
17 #define FSL_NONBLOCKING_EXCEPTION                ne
18 #define FSL_NONBLOCKING_CONTROL                  nc
19 #define FSL_NONBLOCKING_ATOMIC                   na
20 #define FSL_EXCEPTION_CONTROL                    ec
21 #define FSL_EXCEPTION_ATOMIC                     ea
22 #define FSL_CONTROL_ATOMIC                       ca
23
24 #define FSL_NONBLOCKING_EXCEPTION_CONTROL        nec
25 #define FSL_NONBLOCKING_EXCEPTION_ATOMIC         nea
26 #define FSL_NONBLOCKING_CONTROL_ATOMIC           nca
27 #define FSL_EXCEPTION_CONTROL_ATOMIC             eca
28
29 #define FSL_NONBLOCKING_EXCEPTION_CONTROL_ATOMIC neca
30
31 #define getfslx(val, id, flags)      asm volatile (stringify(flags) "get\t%0,rfsl" stringify(id) : "=d" (val))
32 #define putfslx(val, id, flags)      asm volatile (stringify(flags) "put\t%0,rfsl" stringify(id) :: "d" (val))
33
34 #define tgetfslx(val, id, flags)     asm volatile ("t" stringify(flags) "get\t%0,rfsl" stringify(id) : "=d" (val))
35 #define tputfslx(id, flags)          asm volatile ("t" stringify(flags) "put\trfsl" stringify(id))
36
37 #define getdfslx(val, var, flags)    asm volatile (stringify(flags) "getd\t%0,%1" : "=d" (val) : "d" (var))
38 #define putdfslx(val, var, flags)    asm volatile (stringify(flags) "putd\t%0,%1" :: "d" (val), "d" (var))
39
40 #define tgetdfslx(val, var, flags)   asm volatile ("t" stringify(flags) "getd\t%0,%1" : "=d" (val) : "d" (var))
41 #define tputdfslx(var, flags)        asm volatile ("t" stringify(flags) "putd\t%0" :: "d" (var))
42
43
44 #ifdef __cplusplus
45 }
46 #endif
47 #endif /* FSL_H */