hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
/*
 *
 * (C) COPYRIGHT 2022 ARM Limited. All rights reserved.
 *
 * This program is free software and is provided to you under the terms of the
 * GNU General Public License version 2 as published by the Free Software
 * Foundation, and any use by you of this program is subject to the terms
 * of such GNU license.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, you can access it online at
 * http://www.gnu.org/licenses/gpl-2.0.html.
 *
 */
 
#ifndef _CORESIGHT_ELA600_H
#define _CORESIGHT_ELA600_H
 
#include <linux/bits.h>
 
#define ELA_CTRL 0x000
#define ELA_TIMECTRL 0x004
#define ELA_TSSR 0x008
#define ELA_ATBCTRL 0x00C
#define ELA_PTACTION 0x010
#define ELA_AUXCTRL 0x014
#define ELA_CNTSEL 0x018
 
#define ELA_CTSR 0x020
#define ELA_CCVR 0x024
#define ELA_CAVR 0x028
#define ELA_RDCAPTID 0x02C
#define ELA_RDCAPTIDEXT 0x030
 
#define ELA_RRAR 0x040
#define ELA_RRDR 0x044
#define ELA_RWAR 0x048
#define ELA_RWDR 0x04C
 
#define ELA_SIGSEL(x) (0x100 + 0x100 * (x))
#define ELA_TRIGCTRL(x) (ELA_SIGSEL(x) + 0x004)
#define ELA_NEXTSTATE(x) (ELA_SIGSEL(x) + 0x008)
#define ELA_ACTION(x) (ELA_SIGSEL(x) + 0x00C)
#define ELA_ALTNEXTSTATE(x) (ELA_SIGSEL(x) + 0x010)
#define ELA_ALTACTION(x) (ELA_SIGSEL(x) + 0x014)
#define ELA_COMPCTRL(x) (ELA_SIGSEL(x) + 0x018)
#define ELA_ALTCOMPCTRL(x) (ELA_SIGSEL(x) + 0x01C)
#define ELA_COUNTCOMP(x) (ELA_SIGSEL(x) + 0x020)
#define ELA_TWBSEL(x) (ELA_SIGSEL(x) + 0x028)
#define ELA_EXTMASK(x) (ELA_SIGSEL(x) + 0x030)
#define ELA_EXTCOMP(x) (ELA_SIGSEL(x) + 0x034)
#define ELA_QUALMASK(x) (ELA_SIGSEL(x) + 0x038)
#define ELA_QUALCOMP(x) (ELA_SIGSEL(x) + 0x03C)
#define ELA_SIGMASK(x, y) (ELA_SIGSEL(x) + 0x040 + 4 * (y))
#define ELA_SIGCOMP(x, y) (ELA_SIGSEL(x) + 0x080 + 4 * (y))
 
#define ELA_ITTRIGOUT 0xEE8
#define ELA_ITATBDATA 0xEEC
#define ELA_ITATBCTR1 0xEF0
#define ELA_ITATBCTR0 0xEF4
#define ELA_ITTRIGIN 0xEF8
#define ELA_ITCTRL 0xF00
 
#define ELA_AUTHSTATUS 0xFB8
 
#define ELA_DEVARCH 0xFBC
#define ELA_DEVID2 0xFC0
#define ELA_DEVID1 0xFC4
#define ELA_DEVID 0xFC8
#define ELA_DEVTYPE 0xFCC
 
#define ELA_PIDR4 0xFD0
#define ELA_PIDR5 0xFD4
#define ELA_PIDR6 0xFD8
#define ELA_PIDR7 0xFDC
#define ELA_PIDR0 0xFE0
#define ELA_PIDR1 0xFE4
#define ELA_PIDR2 0xFE8
#define ELA_PIDR3 0xFEC
#define ELA_CIDR0 0xFF0
#define ELA_CIDR1 0xFF4
#define ELA_CIDR2 0xFF8
#define ELA_CIDR3 0xFFC
 
/* REGISTER MASKS */
#define ELA_CTRL_RUN BIT(0)
#define ELA_CTRL_TRACE_BUSY BIT(1)
 
#define ELA_TIMECTRL_TSEN BIT(16)
#define ELA_TIMECTRL_TSINT GEN_MASK(15, 12)
#define ELA_TIMECTRL_TCSEL1 GEN_MASK(7, 4)
#define ELA_TIMECTRL_TCSEL0 GEN_MASK(3, 0)
 
#define ELA_ATBCTRL_PREDICT BIT(31)
#define ELA_ATBCTRL_ATID_TRIG_EN BIT(15)
#define ELA_ATBCTRL_ATID_VALUE GEN_MASK(14, 8)
#define ELA_ATBCTRL_ASYNC_INTERVAL GEN_MASK(7, 0)
 
#define ELA_ACTION_ELAOUTPUT GEN_MASK(7, 4)
#define ELA_ACTION_TRACE BIT(3)
#define ELA_ACTION_STOPCLOCK BIT(2)
#define ELA_ACTION_CTTRIGOUT GEN_MASK(1, 0)
 
#define ELA_AUXCTRL_FLUSH_DIS BIT(0)
 
#define ELA_SIGSEL_JCN_REQUEST BIT(0)
#define ELA_SIGSEL_JCN_RESPONSE BIT(1)
#define ELA_SIGSEL_CEU_EXECUTION BIT(2)
#define ELA_SIGSEL_MCU_AHBP BIT(3)
#define ELA_SIGSEL_HOST_AXI BIT(4)
 
#define ELA_TRIGCTRL_ALTCOMPSEL BIT(15)
#define ELA_TRIGCTRL_ALTCOMP GEN_MASK(14, 12)
#define ELA_TRIGCTRL_CAPTID GEN_MASK(11, 10)
#define ELA_TRIGCTRL_COUNTBRK BIT(9)
#define ELA_TRIGCTRL_COUNTCLR BIT(8)
#define ELA_TRIGCTRL_TRACE GEN_MASK(7, 6)
#define ELA_TRIGCTRL_COUNTSRC BIT(5)
#define ELA_TRIGCTRL_WATCHRST BIT(4)
#define ELA_TRIGCTRL_COMPSEL BIT(3)
#define ELA_TRIGCTRL_COMP GEN_MASK(2, 0)
 
#endif /* _CORESIGHT_ELA600_H */