Zephyr API Documentation  2.7.0-rc2
A Scalable Open Source RTOS
cmsis_ext.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2020 Stephanos Ioannidis <root@stephanos.io>
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
17#ifndef ZEPHYR_INCLUDE_ARCH_ARM_AARCH32_CORTEX_A_R_CMSIS_EXT_H_
18#define ZEPHYR_INCLUDE_ARCH_ARM_AARCH32_CORTEX_A_R_CMSIS_EXT_H_
19
20/* FSR Register Definitions */
21#define FSR_FS_BACKGROUND_FAULT (0)
22#define FSR_FS_ALIGNMENT_FAULT (1)
23#define FSR_FS_DEBUG_EVENT (2)
24#define FSR_FS_SYNC_EXTERNAL_ABORT (8)
25#define FSR_FS_PERMISSION_FAULT (13)
26#define FSR_FS_ASYNC_EXTERNAL_ABORT (22)
27#define FSR_FS_ASYNC_PARITY_ERROR (24)
28#define FSR_FS_SYNC_PARITY_ERROR (25)
29
30/* DBGDSCR Register Definitions */
31#define DBGDSCR_MOE_Pos (2U)
32#define DBGDSCR_MOE_Msk (0xFUL << DBGDSCR_MOE_Pos)
33
34#define DBGDSCR_MOE_HALT_REQUEST (0)
35#define DBGDSCR_MOE_BREAKPOINT (1)
36#define DBGDSCR_MOE_ASYNC_WATCHPOINT (2)
37#define DBGDSCR_MOE_BKPT_INSTRUCTION (3)
38#define DBGDSCR_MOE_EXT_DEBUG_REQUEST (4)
39#define DBGDSCR_MOE_VECTOR_CATCH (5)
40#define DBGDSCR_MOE_OS_UNLOCK_CATCH (8)
41#define DBGDSCR_MOE_SYNC_WATCHPOINT (10)
42
43__STATIC_FORCEINLINE uint32_t __get_DFAR(void)
44{
46 __get_CP(15, 0, result, 6, 0, 0);
47 return result;
48}
49
50__STATIC_FORCEINLINE uint32_t __get_IFAR(void)
51{
53 __get_CP(15, 0, result, 6, 0, 2);
54 return result;
55}
56
57__STATIC_FORCEINLINE uint32_t __get_DBGDSCR(void)
58{
60 __get_CP(14, 0, result, 0, 1, 0);
61 return result;
62}
63
64#endif /* ZEPHYR_INCLUDE_ARCH_ARM_AARCH32_CORTEX_A_R_CMSIS_EXT_H_ */
struct result result[2]
Definition: errno.c:41
__UINT32_TYPE__ uint32_t
Definition: stdint.h:60
Definition: errno.c:36