diff options
| -rw-r--r-- | src/include/sys/misc.h | 12 | ||||
| -rw-r--r-- | src/lib/syscall_misc.C | 5 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/include/sys/misc.h b/src/include/sys/misc.h index e1f8e42a7..1ffd8e6a7 100644 --- a/src/include/sys/misc.h +++ b/src/include/sys/misc.h @@ -133,6 +133,18 @@ enum CpuSprNames */ uint64_t cpu_spr_value(CpuSprNames spr); +/** @fn cpu_master_winkle + * @brief Winkle the master core so runtime SLW image can be applied. + * + * This requires that the master core is the only one executing instructions. + * Will execute the winkle instruction on all running threads and return when + * an IPI is receieved on the master thread of the core. + * + * @retval 0 - Success + * @retval -EDEADLK - Cores other than the master are already running. + */ +int cpu_master_winkle(); + #ifdef __cplusplus } #endif diff --git a/src/lib/syscall_misc.C b/src/lib/syscall_misc.C index af58021a7..7b23ef22b 100644 --- a/src/lib/syscall_misc.C +++ b/src/lib/syscall_misc.C @@ -83,3 +83,8 @@ uint64_t cpu_spr_value(CpuSprNames spr) _syscall1(MISC_CPUSPRVALUE, reinterpret_cast<void*>(spr))); } +int cpu_master_winkle() +{ + return 0; +} + |

