Zephyr Project API
3.7.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
ioapic.h
Go to the documentation of this file.
1
/* ioapic.h - public IOAPIC APIs */
2
3
/*
4
* Copyright (c) 2012-2015 Wind River Systems, Inc.
5
*
6
* SPDX-License-Identifier: Apache-2.0
7
*/
8
9
#ifndef ZEPHYR_INCLUDE_DRIVERS_IOAPIC_H_
10
#define ZEPHYR_INCLUDE_DRIVERS_IOAPIC_H_
11
12
#ifdef __cplusplus
13
extern
"C"
{
14
#endif
15
16
/*
17
* Redirection table entry bits: lower 32 bit
18
* Used as flags argument in ioapic_irq_set
19
*/
20
21
#define IOAPIC_INT_MASK 0x00010000
22
#define IOAPIC_TRIGGER_MASK 0x00008000
23
#define IOAPIC_LEVEL 0x00008000
24
#define IOAPIC_EDGE 0x00000000
25
#define IOAPIC_REMOTE 0x00004000
26
#define IOAPIC_POLARITY_MASK 0x00002000
27
#define IOAPIC_LOW 0x00002000
28
#define IOAPIC_HIGH 0x00000000
29
#define IOAPIC_LOGICAL 0x00000800
30
#define IOAPIC_PHYSICAL 0x00000000
31
#define IOAPIC_DELIVERY_MODE_MASK 0x00000700
32
#define IOAPIC_FIXED 0x00000000
33
#define IOAPIC_LOWEST 0x00000100
34
#define IOAPIC_SMI 0x00000200
35
#define IOAPIC_NMI 0x00000400
36
#define IOAPIC_INIT 0x00000500
37
#define IOAPIC_EXTINT 0x00000700
38
39
#ifndef _ASMLANGUAGE
40
uint32_t
z_ioapic_num_rtes(
void
);
41
void
z_ioapic_irq_enable(
unsigned
int
irq);
42
void
z_ioapic_irq_disable(
unsigned
int
irq);
43
void
z_ioapic_int_vec_set(
unsigned
int
irq,
unsigned
int
vector);
44
void
z_ioapic_irq_set(
unsigned
int
irq,
unsigned
int
vector,
uint32_t
flags
);
45
#endif
/* _ASMLANGUAGE */
46
47
#ifdef __cplusplus
48
}
49
#endif
50
51
#endif
/* ZEPHYR_INCLUDE_DRIVERS_IOAPIC_H_ */
flags
flags
Definition
parser.h:96
uint32_t
__UINT32_TYPE__ uint32_t
Definition
stdint.h:90
include
zephyr
drivers
interrupt_controller
ioapic.h
Generated on Sun Sep 15 2024 17:01:30 for Zephyr Project API by
1.9.8