MOS Source Code
Loading...
Searching...
No Matches
ipi.h
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
11
typedef
enum
12
{
13
IPI_TYPE_HALT
= 0,
// halt the CPU
14
IPI_TYPE_INVALIDATE_TLB
,
// TLB shootdown
15
IPI_TYPE_RESCHEDULE
,
// Reschedule
16
IPI_TYPE_MAX
,
17
}
ipi_type_t
;
18
19
MOS_STATIC_ASSERT
(
IPI_TYPE_MAX
<= (
u8
) 0xFF,
"IPI_TYPE_MAX must fit in a u8"
);
20
21
#define TARGET_CPU_ALL 0xFF
22
23
void
ipi_send
(
u8
target,
ipi_type_t
type);
24
void
ipi_send_all
(
ipi_type_t
type);
25
void
ipi_do_handle
(
ipi_type_t
type);
ipi_type_t
ipi_type_t
The type of IPI to send.
Definition
ipi.h:12
IPI_TYPE_RESCHEDULE
@ IPI_TYPE_RESCHEDULE
Definition
ipi.h:15
IPI_TYPE_MAX
@ IPI_TYPE_MAX
Definition
ipi.h:16
IPI_TYPE_HALT
@ IPI_TYPE_HALT
Definition
ipi.h:13
IPI_TYPE_INVALIDATE_TLB
@ IPI_TYPE_INVALIDATE_TLB
Definition
ipi.h:14
ipi_send_all
void ipi_send_all(ipi_type_t type)
ipi_do_handle
void ipi_do_handle(ipi_type_t type)
ipi_send
void ipi_send(u8 target, ipi_type_t type)
MOS_STATIC_ASSERT
#define MOS_STATIC_ASSERT
Definition
mos_global.h:14
types.h
u8
unsigned char u8
Definition
types.h:19
kernel
include
private
mos
interrupt
ipi.h
Generated on Sun Sep 1 2024 18:22:52 for MOS Source Code by
1.12.0