gem5 v24.0.0.0
Loading...
Searching...
No Matches
dt_constants.hh
Go to the documentation of this file.
1/*
2 * Copyright (c) 2007 MIPS Technologies, Inc.
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;
9 * redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution;
12 * neither the name of the copyright holders nor the names of its
13 * contributors may be used to endorse or promote products derived from
14 * this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 */
28
29#ifndef __ARCH_MIPS_DT_CONSTANTS_HH__
30#define __ARCH_MIPS_DT_CONSTANTS_HH__
31
32#include "arch/mips/types.hh"
33#include "base/bitunion.hh"
34
35namespace gem5
36{
37
38namespace MipsISA
39{
40
41BitUnion32(DebugReg)
42 Bitfield<31> dbd;
43 Bitfield<30> dm;
44 Bitfield<29> nodcr;
45 Bitfield<28> lsnm;
46 Bitfield<27> doze;
47 Bitfield<26> halt;
48 Bitfield<25> conutdm;
49 Bitfield<24> ibusep;
50 Bitfield<23> mcheckep;
51 Bitfield<22> cacheep;
52 Bitfield<21> dbusep;
53 Bitfield<20, 19> iexi;
54 Bitfield<19> ddbsImpr;
55 Bitfield<18> ddblImpr;
56 SubBitUnion(ejtagVer, 17, 15)
57 Bitfield<17> ejtagVer2;
58 Bitfield<16> ejtagVer1;
59 Bitfield<15> ejtagVer0;
61 Bitfield<14, 10> dexcCode;
62 Bitfield<9> nosst;
63 Bitfield<8> sst;
64 Bitfield<7> offline;
65 Bitfield<6> dibimpr;
66 Bitfield<5> dint;
67 Bitfield<4> dib;
68 Bitfield<3> ddbs;
69 Bitfield<2> ddbl;
70 Bitfield<1> dbp;
71 Bitfield<0> dss;
72EndBitUnion(DebugReg)
73
74BitUnion32(TraceControlReg)
75 Bitfield<31> ts;
76 Bitfield<30> ut;
77 Bitfield<27> tb;
78 Bitfield<26> io;
79 Bitfield<25> d;
80 Bitfield<24> e;
81 Bitfield<23> k;
82 Bitfield<22> s;
83 Bitfield<21> u;
84 Bitfield<20, 13> asidM;
85 Bitfield<12, 5> asid;
86 Bitfield<4> g;
87 Bitfield<3> tfcr;
88 Bitfield<2> tlsm;
89 Bitfield<1> tim;
90 Bitfield<0> on;
91EndBitUnion(TraceControlReg)
92
93BitUnion32(TraceControl2Reg)
94 Bitfield<29> cpuidv;
95 Bitfield<28, 21> cpuid;
96 Bitfield<20> tcv;
97 Bitfield<19, 12> tcnum;
98 Bitfield<11, 7> mode;
99 Bitfield<6, 5> validModes;
100 Bitfield<4> tbi;
101 Bitfield<3> tbu;
102 Bitfield<2, 0> syp;
103EndBitUnion(TraceControl2Reg)
104
105BitUnion32(TraceBPCReg)
106 Bitfield<31> mb;
107 Bitfield<28> e;
108 Bitfield<27> ate;
109 Bitfield<26, 24> bpc8;
110 Bitfield<23, 21> bpc7;
111 Bitfield<20, 18> bpc6;
112 Bitfield<17, 15> bpc5;
113 Bitfield<14, 12> bpc4;
114 Bitfield<11, 9> bpc3;
115 Bitfield<8, 6> bpc2;
116 Bitfield<5, 3> bpc1;
117 Bitfield<2, 0> bpc0;
118EndBitUnion(TraceBPCReg)
119
120BitUnion32(TraceBPC2Reg)
121 Bitfield<17, 15> bpc14;
122 Bitfield<14, 12> bpc13;
123 Bitfield<11, 9> bpc12;
124 Bitfield<8, 6> bpc11;
125 Bitfield<5, 3> bpc10;
126 Bitfield<2, 0> bpc9;
127EndBitUnion(TraceBPC2Reg)
128
129BitUnion32(Debug2Reg)
130 Bitfield<3> prm;
131 Bitfield<2> dq;
132 Bitfield<1> tup;
133 Bitfield<0> paco;
134EndBitUnion(Debug2Reg)
135
136} // namespace MipsISA
137} // namespace gem5
138
139#endif
#define BitUnion32(name)
Definition bitunion.hh:495
#define EndBitUnion(name)
This closes off the class and union started by the above macro.
Definition bitunion.hh:428
#define SubBitUnion(name, first, last)
Regular bitfields These define macros for read/write regular bitfield based subbitfields.
Definition bitunion.hh:470
#define EndSubBitUnion(name)
This closes off the union created above and gives it a name.
Definition bitunion.hh:455
Bitfield< 4 > tbi
Bitfield< 22 > cacheep
Bitfield< 0 > paco
Bitfield< 7 > offline
Bitfield< 22 > s
Bitfield< 5 > dint
Bitfield< 21 > ts
Bitfield< 20, 18 > bpc6
Bitfield< 24 > e
Bitfield< 12, 5 > asid
Bitfield< 29 > nodcr
Bitfield< 8, 6 > bpc11
Bitfield< 11, 9 > bpc3
Bitfield< 3 > ddbs
Bitfield< 8 > sst
Bitfield< 3 > tbu
Bitfield< 2, 0 > bpc0
Bitfield< 1 > dbp
Bitfield< 2 > ddbl
Bitfield< 8, 6 > bpc2
Bitfield< 19, 12 > tcnum
Bitfield< 20, 13 > asidM
Bitfield< 24 > ibusep
Bitfield< 26, 24 > bpc8
Bitfield< 4 > dib
Bitfield< 26 > io
Bitfield< 26 > halt
Bitfield< 17, 15 > bpc5
Bitfield< 1 > tup
Bitfield< 28 > lsnm
Bitfield< 5, 3 > bpc1
Bitfield< 23, 21 > bpc7
Bitfield< 2, 0 > bpc9
Bitfield< 11, 7 > mode
Bitfield< 30 > ut
Bitfield< 2 > tlsm
Bitfield< 3 > tfcr
Bitfield< 9 > nosst
Bitfield< 14, 12 > bpc13
Bitfield< 25 > d
Bitfield< 2, 0 > syp
Bitfield< 27 > ate
Bitfield< 27 > tb
Bitfield< 14, 12 > bpc4
Bitfield< 30 > dm
Bitfield< 11, 9 > bpc12
Bitfield< 25 > conutdm
Bitfield< 4 > g
Bitfield< 0 > dss
Bitfield< 21 > u
Bitfield< 20, 19 > iexi
Bitfield< 20 > tcv
Bitfield< 16 > ejtagVer1
Bitfield< 6, 5 > validModes
Bitfield< 18 > ddblImpr
Bitfield< 27 > doze
Bitfield< 0 > on
Bitfield< 19 > ddbsImpr
Bitfield< 1 > tim
Bitfield< 23 > k
Bitfield< 6 > dibimpr
Bitfield< 21 > dbusep
Bitfield< 2 > dq
Bitfield< 23 > mcheckep
Bitfield< 5, 3 > bpc10
Bitfield< 15 > ejtagVer0
Bitfield< 28, 21 > cpuid
Bitfield< 10, 6 > mb
Definition types.hh:55
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
Definition binary32.hh:36

Generated on Tue Jun 18 2024 16:23:57 for gem5 by doxygen 1.11.0