OpenMPTL - ARM Cortex (common)
C++ Microprocessor Template Library
debug.hpp
Go to the documentation of this file.
1 /*
2  * OpenMPTL - C++ Microprocessor Template Library
3  *
4  * Copyright (C) 2012-2017 Axel Burri <axel@tty0.ch>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program. If not, see <http://www.gnu.org/licenses/>.
18  *
19  */
20 
21 #ifndef ARM_CORTEX_COMMON_REG_DEBUG_HPP_INCLUDED
22 #define ARM_CORTEX_COMMON_REG_DEBUG_HPP_INCLUDED
23 
24 #include <register.hpp>
25 
26 namespace mptl {
27 
28 /**
29  * Debug Register
30  *
31  * For details, see "Cortex-M3 Technical Reference Manual":
32  * <http://infocenter.arm.com/help/topic/com.arm.doc.subset.cortexm.m3/index.html>
33  */
34 struct DEBUG
35 {
36  using DFSR = reg<uint32_t, 0xE000ED30, rw>; /**< Debug Fault Status Register */
37  using DHCSR = reg<uint32_t, 0xE000EDF0, rw>; /**< Debug Halting Control and Status Register */
38  using DCRSR = reg<uint32_t, 0xE000EDF4, wo>; /**< Debug Core Register Selector Register */
39  using DCRDR = reg<uint32_t, 0xE000EDF8, rw>; /**< Debug Core Register Data Register */
40 
41  /**
42  * Debug Exception and Monitor Control Register
43  */
44  struct DEMCR
45  : public reg<uint32_t, 0xE000EDFC, rw>
46  {
47  using TRCENA = regbits< type, 24, 1 >; /**< Enable DWT */
48  };
49 };
50 
51 } // namespace mptl
52 
53 #endif // ARM_CORTEX_COMMON_REG_DEBUG_HPP_INCLUDED
Debug Register.
Definition: debug.hpp:34
Debug Exception and Monitor Control Register.
Definition: debug.hpp:44