MOS Source Code
Loading...
Searching...
No Matches
ipi.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: GPL-3.0-or-later
2
3#pragma once
4
5#include <mos/types.h>
6#include <mos/types.hpp>
7
12typedef enum
13{
14 IPI_TYPE_HALT = 0, // halt the CPU
15 IPI_TYPE_INVALIDATE_TLB, // TLB shootdown
16 IPI_TYPE_RESCHEDULE, // Reschedule
19
20MOS_STATIC_ASSERT(IPI_TYPE_MAX <= (u8) 0xFF, "IPI_TYPE_MAX must fit in a u8");
21
22#define TARGET_CPU_ALL 0xFF
23
24void ipi_send(u8 target, ipi_type_t type);
ipi_type_t
The type of IPI to send.
Definition ipi.hpp:13
@ IPI_TYPE_RESCHEDULE
Definition ipi.hpp:16
@ IPI_TYPE_MAX
Definition ipi.hpp:17
@ IPI_TYPE_HALT
Definition ipi.hpp:14
@ IPI_TYPE_INVALIDATE_TLB
Definition ipi.hpp:15
void ipi_send_all(ipi_type_t type)
void ipi_do_handle(ipi_type_t type)
void ipi_send(u8 target, ipi_type_t type)
#define MOS_STATIC_ASSERT
Definition mos_global.h:14
unsigned char u8
Definition types.h:15