blob: a0bfd3f4dfed0accc0bfd23da4bd24918d931bcc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#ifndef __GENERIC_ARMCM_BOOT_H
#define __GENERIC_ARMCM_BOOT_H
#include "ctr.h" // DECL_CTR_INT
// Declare an IRQ handler
#define DECL_ARMCM_IRQ(FUNC, NUM) \
DECL_CTR_INT("DECL_ARMCM_IRQ " __stringify(FUNC), 1, CTR_INT(NUM))
// Statically declare an IRQ handler and run-time enable it
#define armcm_enable_irq(FUNC, NUM, PRIORITY) do { \
DECL_ARMCM_IRQ(FUNC, (NUM)); \
NVIC_SetPriority((NUM), (PRIORITY)); \
NVIC_EnableIRQ((NUM)); \
} while (0)
// Vectors created by scripts/buildcommands.py from DECL_ARMCM_IRQ commands
extern const void * const VectorTable[];
#endif // armcm_boot.h
|