Zephyr API Documentation
2.7.0-rc2
A Scalable Open Source RTOS
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_LOW 0x00002000
27
#define IOAPIC_HIGH 0x00000000
28
#define IOAPIC_LOGICAL 0x00000800
29
#define IOAPIC_PHYSICAL 0x00000000
30
#define IOAPIC_FIXED 0x00000000
31
#define IOAPIC_LOWEST 0x00000100
32
#define IOAPIC_SMI 0x00000200
33
#define IOAPIC_NMI 0x00000400
34
#define IOAPIC_INIT 0x00000500
35
#define IOAPIC_EXTINT 0x00000700
36
37
#ifndef _ASMLANGUAGE
38
uint32_t
z_ioapic_num_rtes(
void
);
39
void
z_ioapic_irq_enable(
unsigned
int
irq);
40
void
z_ioapic_irq_disable(
unsigned
int
irq);
41
void
z_ioapic_int_vec_set(
unsigned
int
irq,
unsigned
int
vector);
42
void
z_ioapic_irq_set(
unsigned
int
irq,
unsigned
int
vector,
uint32_t
flags
);
43
#endif
/* _ASMLANGUAGE */
44
45
#ifdef __cplusplus
46
}
47
#endif
48
49
#endif
/* ZEPHYR_INCLUDE_DRIVERS_IOAPIC_H_ */
flags
flags
Definition:
http_parser.h:131
uint32_t
__UINT32_TYPE__ uint32_t
Definition:
stdint.h:60
include
drivers
interrupt_controller
ioapic.h
Generated on Sun Oct 9 2022 09:21:56 for Zephyr API Documentation by
1.9.4