]>
Commit | Line | Data |
---|---|---|
11fdf7f2 TL |
1 | /* SPDX-License-Identifier: BSD-3-Clause |
2 | * Copyright(c) 2017 Cavium, Inc | |
3 | */ | |
4 | ||
5 | #ifndef _RTE_PAUSE_PPC64_H_ | |
6 | #define _RTE_PAUSE_PPC64_H_ | |
7 | ||
8 | #ifdef __cplusplus | |
9 | extern "C" { | |
10 | #endif | |
11 | ||
9f95a23c TL |
12 | #include "rte_atomic.h" |
13 | ||
11fdf7f2 TL |
14 | #include "generic/rte_pause.h" |
15 | ||
16 | static inline void rte_pause(void) | |
17 | { | |
9f95a23c TL |
18 | /* Set hardware multi-threading low priority */ |
19 | asm volatile("or 1,1,1"); | |
20 | /* Set hardware multi-threading medium priority */ | |
21 | asm volatile("or 2,2,2"); | |
22 | rte_compiler_barrier(); | |
11fdf7f2 TL |
23 | } |
24 | ||
25 | #ifdef __cplusplus | |
26 | } | |
27 | #endif | |
28 | ||
29 | #endif /* _RTE_PAUSE_PPC64_H_ */ |