xref: /freebsd/sys/arm64/include/cmn600_reg.h (revision 95ee2897e98f5d444f26ed2334cc7c439f9c16c6)
1e3572eb6SAleksandr Rybalko /*-
2*753c7fc9SAndrew Turner  * SPDX-License-Identifier: BSD-2-Clause
3e3572eb6SAleksandr Rybalko  *
4e3572eb6SAleksandr Rybalko  * Copyright (c) 2021 ARM Ltd
5e3572eb6SAleksandr Rybalko  *
6e3572eb6SAleksandr Rybalko  * Redistribution and use in source and binary forms, with or without
7e3572eb6SAleksandr Rybalko  * modification, are permitted provided that the following conditions
8e3572eb6SAleksandr Rybalko  * are met:
9e3572eb6SAleksandr Rybalko  * 1. Redistributions of source code must retain the above copyright
10e3572eb6SAleksandr Rybalko  *    notice, this list of conditions and the following disclaimer.
11e3572eb6SAleksandr Rybalko  * 2. Redistributions in binary form must reproduce the above copyright
12e3572eb6SAleksandr Rybalko  *    notice, this list of conditions and the following disclaimer in the
13e3572eb6SAleksandr Rybalko  *    documentation and/or other materials provided with the distribution.
14e3572eb6SAleksandr Rybalko  *
15e3572eb6SAleksandr Rybalko  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
16e3572eb6SAleksandr Rybalko  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17e3572eb6SAleksandr Rybalko  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18e3572eb6SAleksandr Rybalko  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
19e3572eb6SAleksandr Rybalko  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
20e3572eb6SAleksandr Rybalko  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21e3572eb6SAleksandr Rybalko  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
22e3572eb6SAleksandr Rybalko  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
23e3572eb6SAleksandr Rybalko  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24e3572eb6SAleksandr Rybalko  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25e3572eb6SAleksandr Rybalko  * SUCH DAMAGE.
26e3572eb6SAleksandr Rybalko  */
27e3572eb6SAleksandr Rybalko 
28e3572eb6SAleksandr Rybalko #ifndef	_MACHINE_CMN600_REG_H_
29e3572eb6SAleksandr Rybalko #define	_MACHINE_CMN600_REG_H_
30e3572eb6SAleksandr Rybalko 
31e3572eb6SAleksandr Rybalko #define	CMN600_COUNTERS_N		8
32e3572eb6SAleksandr Rybalko #define	CMN600_UNIT_MAX			4
33e3572eb6SAleksandr Rybalko #define	CMN600_PMU_DEFAULT_UNITS_N	2
34e3572eb6SAleksandr Rybalko #define	CMN600_COMMON_PMU_EVENT_SEL	0x2000	/* rw */
35e3572eb6SAleksandr Rybalko #define		CMN600_COMMON_PMU_EVENT_SEL_OCC_SHIFT	32
36e3572eb6SAleksandr Rybalko #define		CMN600_COMMON_PMU_EVENT_SEL_OCC_MASK	(0x7UL << 32)
37e3572eb6SAleksandr Rybalko 
38e3572eb6SAleksandr Rybalko struct cmn600_pmc {
39e3572eb6SAleksandr Rybalko 	void	*arg;
40e3572eb6SAleksandr Rybalko 	int	domain;
41e3572eb6SAleksandr Rybalko };
42e3572eb6SAleksandr Rybalko 
43e3572eb6SAleksandr Rybalko int cmn600_pmc_nunits(void);
44e3572eb6SAleksandr Rybalko int cmn600_pmc_getunit(int unit, void **arg, int *domain);
45e3572eb6SAleksandr Rybalko 
46e3572eb6SAleksandr Rybalko int cmn600_pmu_intr_cb(void *arg, int (*handler)(struct trapframe *tf,
47e3572eb6SAleksandr Rybalko     int unit, int i));
48e3572eb6SAleksandr Rybalko 
49e3572eb6SAleksandr Rybalko int pmu_cmn600_alloc_localpmc(void *arg, int nodeid, int node_type,
50e3572eb6SAleksandr Rybalko     int *local_counter);
51e3572eb6SAleksandr Rybalko int pmu_cmn600_free_localpmc(void *arg, int nodeid, int node_type,
52e3572eb6SAleksandr Rybalko     int local_counter);
53e3572eb6SAleksandr Rybalko int pmu_cmn600_rev(void *arg);
54e3572eb6SAleksandr Rybalko uint32_t pmu_cmn600_rd4(void *arg, int nodeid, int node_type, off_t reg);
55e3572eb6SAleksandr Rybalko int pmu_cmn600_wr4(void *arg, int nodeid, int node_type, off_t reg,
56e3572eb6SAleksandr Rybalko     uint32_t val);
57e3572eb6SAleksandr Rybalko uint64_t pmu_cmn600_rd8(void *arg, int nodeid, int node_type, off_t reg);
58e3572eb6SAleksandr Rybalko int pmu_cmn600_wr8(void *arg, int nodeid, int node_type, off_t reg,
59e3572eb6SAleksandr Rybalko     uint64_t val);
60e3572eb6SAleksandr Rybalko int pmu_cmn600_set8(void *arg, int nodeid, int node_type, off_t reg,
61e3572eb6SAleksandr Rybalko     uint64_t val);
62e3572eb6SAleksandr Rybalko int pmu_cmn600_clr8(void *arg, int nodeid, int node_type, off_t reg,
63e3572eb6SAleksandr Rybalko     uint64_t val);
64e3572eb6SAleksandr Rybalko int pmu_cmn600_md8(void *arg, int nodeid, int node_type, off_t reg,
65e3572eb6SAleksandr Rybalko     uint64_t mask, uint64_t val);
66e3572eb6SAleksandr Rybalko 
67e3572eb6SAleksandr Rybalko /* Configuration master registers */
68e3572eb6SAleksandr Rybalko #define	POR_CFGM_NODE_INFO			0x0000	/* ro */
69e3572eb6SAleksandr Rybalko #define		POR_CFGM_NODE_INFO_LOGICAL_ID_MASK	0xffff00000000UL
70e3572eb6SAleksandr Rybalko #define		POR_CFGM_NODE_INFO_LOGICAL_ID_SHIFT	32
71e3572eb6SAleksandr Rybalko #define		POR_CFGM_NODE_INFO_NODE_ID_MASK		0xffff0000
72e3572eb6SAleksandr Rybalko #define		POR_CFGM_NODE_INFO_NODE_ID_SHIFT	16
73e3572eb6SAleksandr Rybalko #define		POR_CFGM_NODE_INFO_NODE_TYPE_MASK	0xffff
74e3572eb6SAleksandr Rybalko #define		POR_CFGM_NODE_INFO_NODE_TYPE_SHIFT	0
75e3572eb6SAleksandr Rybalko 
7659191f35SAleksandr Rybalko #define		NODE_ID_SUB_MASK		0x3
7759191f35SAleksandr Rybalko #define		NODE_ID_SUB_SHIFT		0
7859191f35SAleksandr Rybalko #define		NODE_ID_PORT_MASK		0x4
7959191f35SAleksandr Rybalko #define		NODE_ID_PORT_SHIFT		2
8059191f35SAleksandr Rybalko #define		NODE_ID_X2B_MASK		(0x3 << 3)
8159191f35SAleksandr Rybalko #define		NODE_ID_X2B_SHIFT		3
8259191f35SAleksandr Rybalko #define		NODE_ID_Y2B_MASK		(0x3 << 5)
8359191f35SAleksandr Rybalko #define		NODE_ID_Y2B_SHIFT		5
8459191f35SAleksandr Rybalko #define		NODE_ID_X3B_MASK		(0x7 << 3)
8559191f35SAleksandr Rybalko #define		NODE_ID_X3B_SHIFT		3
8659191f35SAleksandr Rybalko #define		NODE_ID_Y3B_MASK		(0x7 << 6)
8759191f35SAleksandr Rybalko #define		NODE_ID_Y3B_SHIFT		6
8859191f35SAleksandr Rybalko 
89e3572eb6SAleksandr Rybalko #define	NODE_TYPE_INVALID	0x000
90e3572eb6SAleksandr Rybalko #define	NODE_TYPE_DVM		0x001
91e3572eb6SAleksandr Rybalko #define	NODE_TYPE_CFG		0x002
92e3572eb6SAleksandr Rybalko #define	NODE_TYPE_DTC		0x003
93e3572eb6SAleksandr Rybalko #define	NODE_TYPE_HN_I		0x004
94e3572eb6SAleksandr Rybalko #define	NODE_TYPE_HN_F		0x005
95e3572eb6SAleksandr Rybalko #define	NODE_TYPE_XP		0x006
96e3572eb6SAleksandr Rybalko #define	NODE_TYPE_SBSX		0x007
97e3572eb6SAleksandr Rybalko #define	NODE_TYPE_RN_I		0x00A
98e3572eb6SAleksandr Rybalko #define	NODE_TYPE_RN_D		0x00D
99e3572eb6SAleksandr Rybalko #define	NODE_TYPE_RN_SAM	0x00F
100e3572eb6SAleksandr Rybalko #define	NODE_TYPE_CXRA		0x100
101e3572eb6SAleksandr Rybalko #define	NODE_TYPE_CXHA		0x101
102e3572eb6SAleksandr Rybalko #define	NODE_TYPE_CXLA		0x102
103e3572eb6SAleksandr Rybalko 
104e3572eb6SAleksandr Rybalko #define	POR_CFGM_PERIPH_ID_0_PERIPH_ID_1	0x0008	/* ro */
105e3572eb6SAleksandr Rybalko #define	POR_CFGM_PERIPH_ID_2_PERIPH_ID_3	0x0010	/* ro */
106e3572eb6SAleksandr Rybalko #define		POR_CFGM_PERIPH_ID_2_REV_SHIFT			4
107e3572eb6SAleksandr Rybalko #define		POR_CFGM_PERIPH_ID_2_REV_MASK			0xf0
108e3572eb6SAleksandr Rybalko #define		POR_CFGM_PERIPH_ID_2_REV_R1P0			0
109e3572eb6SAleksandr Rybalko #define		POR_CFGM_PERIPH_ID_2_REV_R1P1			1
110e3572eb6SAleksandr Rybalko #define		POR_CFGM_PERIPH_ID_2_REV_R1P2			2
111e3572eb6SAleksandr Rybalko #define		POR_CFGM_PERIPH_ID_2_REV_R1P3			3
112e3572eb6SAleksandr Rybalko #define		POR_CFGM_PERIPH_ID_2_REV_R2P0			4
113e3572eb6SAleksandr Rybalko #define	POR_CFGM_PERIPH_ID_4_PERIPH_ID_5	0x0018	/* ro */
114e3572eb6SAleksandr Rybalko #define	POR_CFGM_PERIPH_ID_6_PERIPH_ID_7	0x0020	/* ro */
115e3572eb6SAleksandr Rybalko #define	POR_CFGM_PERIPH_ID_32(x)		(0x0008 + ((x) * 4)) /* ro 32 */
116e3572eb6SAleksandr Rybalko #define	POR_CFGM_COMPONENT_ID_0_COMPONENT_ID_1	0x0028	/* ro */
117e3572eb6SAleksandr Rybalko #define	POR_CFGM_COMPONENT_ID_2_COMPONENT_ID_3	0x0030	/* ro */
118e3572eb6SAleksandr Rybalko #define	POR_CFGM_CHILD_INFO			0x0080	/* ro */
119e3572eb6SAleksandr Rybalko #define		POR_CFGM_CHILD_INFO_CHILD_PTR_OFFSET_MASK	0xffff0000
120e3572eb6SAleksandr Rybalko #define		POR_CFGM_CHILD_INFO_CHILD_PTR_OFFSET_SHIFT	16
121e3572eb6SAleksandr Rybalko #define		POR_CFGM_CHILD_INFO_CHILD_COUNT_MASK		0x0000ffff
122e3572eb6SAleksandr Rybalko #define		POR_CFGM_CHILD_INFO_CHILD_COUNT_SHIFT		0
123e3572eb6SAleksandr Rybalko #define	POR_CFGM_SECURE_ACCESS			0x0980	/* rw */
124e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR0			0x3000	/* ro */
125e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR1			0x3008	/* ro */
126e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR2			0x3010	/* ro */
127e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR3			0x3018	/* ro */
128e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR4			0x3020	/* ro */
129e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR5			0x3080	/* ro */
130e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR6			0x3088	/* ro */
131e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR7			0x3090	/* ro */
132e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR8			0x3098	/* ro */
133e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR9			0x30a0	/* ro */
134e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR(x)			(0x3000 + ((x) * 8)) /* ro */
135e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR0_ns			0x3100	/* ro */
136e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR1_ns			0x3108	/* ro */
137e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR2_ns			0x3110	/* ro */
138e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR3_ns			0x3118	/* ro */
139e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR4_ns			0x3120	/* ro */
140e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR5_ns			0x3180	/* ro */
141e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR6_ns			0x3188	/* ro */
142e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR7_ns			0x3190	/* ro */
143e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR8_ns			0x3198	/* ro */
144e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR9_ns			0x31a0	/* ro */
145e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRGSR_ns(x)			(0x3100 + ((x) * 8)) /* ro */
146e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRDEVAFF			0x3fa8	/* ro */
147e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRDEVARCH			0x3fb8	/* ro */
148e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRIDR				0x3fc8	/* ro */
149e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRPIDR45			0x3fd0	/* ro */
150e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRPIDR67			0x3fd8	/* ro */
151e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRPIDR01			0x3fe0	/* ro */
152e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRPIDR23			0x3fe8	/* ro */
153e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRCIDR01			0x3ff0	/* ro */
154e3572eb6SAleksandr Rybalko #define	POR_CFGM_ERRCIDR23			0x3ff8	/* ro */
155e3572eb6SAleksandr Rybalko #define	POR_INFO_GLOBAL				0x0900	/* ro */
156e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_CHIC_MODE_EN			(1UL << 49) /* CHI-C mode enable */
157e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_R2_ENABLE			(1UL << 48) /* CMN R2 feature enable */
158e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_RNSAM_NUM_ADD_HASHED_TGT_SHIFT	36 /* Number of additional hashed target ID's supported by the RN SAM, beyond the local HNF count */
159e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_RNSAM_NUM_ADD_HASHED_TGT_MASK	(0x3fUL << 36)
160e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_NUM_REMOTE_RNF_SHIFT		28 /* Number of remote RN-F devices in the system when the CML feature is enabled */
161e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_NUM_REMOTE_RNF_MASK		(0xffUL << 28)
162e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_FLIT_PARITY_EN			(1 << 25) /* Indicates whether parity checking is enabled in the transport layer on all flits sent on the interconnect */
163e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_DATACHECK_EN			(1 << 24) /* Indicates whether datacheck feature is enabled for CHI DAT flit */
164e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_PHYSICAL_ADDRESS_WIDTH_SHIFT	16 /* Physical address width */
165e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_PHYSICAL_ADDRESS_WIDTH_MASK	(0xff << 16)
166e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_CHI_REQ_ADDR_WIDTH_SHIFT	8 /* REQ address width */
167e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_CHI_REQ_ADDR_WIDTH_MASK		(0xff << 8)
168e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_CHI_REQ_RSVDC_WIDTH_SHIFT	0 /* RSVDC field width in CHI REQ flit */
169e3572eb6SAleksandr Rybalko #define		POR_INFO_GLOBAL_CHI_REQ_RSVDC_WIDTH_MASK	0xff
170e3572eb6SAleksandr Rybalko 
171e3572eb6SAleksandr Rybalko #define	POR_PPU_INT_ENABLE			0x1000	/* rw */
172e3572eb6SAleksandr Rybalko #define	POR_PPU_INT_STATUS			0x1008	/* w1c */
173e3572eb6SAleksandr Rybalko #define	POR_PPU_QACTIVE_HYST			0x1010	/* rw */
174e3572eb6SAleksandr Rybalko #define	POR_CFGM_CHILD_POINTER_0		0x0100	/* ro */
175e3572eb6SAleksandr Rybalko #define	POR_CFGM_CHILD_POINTER(x)	(POR_CFGM_CHILD_POINTER_0 + ((x) * 8))
176e3572eb6SAleksandr Rybalko #define		POR_CFGM_CHILD_POINTER_EXT	(1 << 31)
177e3572eb6SAleksandr Rybalko #define		POR_CFGM_CHILD_POINTER_BASE_MASK 0x0fffffffUL
178e3572eb6SAleksandr Rybalko 
179e3572eb6SAleksandr Rybalko /* DN registers */
180e3572eb6SAleksandr Rybalko #define	POR_DN_NODE_INFO			0x0000	/* ro */
181e3572eb6SAleksandr Rybalko #define	POR_DN_CHILD_INFO			0x0080	/* ro */
182e3572eb6SAleksandr Rybalko #define	POR_DN_BUILD_INFO			0x0900	/* ro */
183e3572eb6SAleksandr Rybalko #define	POR_DN_SECURE_REGISTER_GROUPS_OVERRIDE	0x0980	/* rw */
184e3572eb6SAleksandr Rybalko #define	POR_DN_AUX_CTL				0x0a00	/* rw */
185e3572eb6SAleksandr Rybalko #define	POR_DN_VMF0_CTRL			0x0c00	/* rw */
186e3572eb6SAleksandr Rybalko #define	POR_DN_VMF0_RNF0			0x0c08	/* rw */
187e3572eb6SAleksandr Rybalko #define	POR_DN_VMF0_RND				0x0c10	/* rw */
188e3572eb6SAleksandr Rybalko #define	POR_DN_VMF0_CXRA			0x0c18	/* rw */
189e3572eb6SAleksandr Rybalko #define	POR_DN_VMF1_CTRL			0x0c20	/* rw */
190e3572eb6SAleksandr Rybalko #define	POR_DN_VMF1_RNF0			0x0c28	/* rw */
191e3572eb6SAleksandr Rybalko #define	POR_DN_VMF1_RND				0x0c30	/* rw */
192e3572eb6SAleksandr Rybalko #define	POR_DN_VMF1_CXRA			0x0c38	/* rw */
193e3572eb6SAleksandr Rybalko #define	POR_DN_VMF2_CTRL			0x0c40	/* rw */
194e3572eb6SAleksandr Rybalko #define	POR_DN_VMF2_RNF0			0x0c48	/* rw */
195e3572eb6SAleksandr Rybalko #define	POR_DN_VMF2_RND				0x0c50	/* rw */
196e3572eb6SAleksandr Rybalko #define	POR_DN_VMF2_CXRA			0x0c58	/* rw */
197e3572eb6SAleksandr Rybalko #define	POR_DN_VMF3_CTRL			0x0c60	/* rw */
198e3572eb6SAleksandr Rybalko #define	POR_DN_VMF3_RNF0			0x0c68	/* rw */
199e3572eb6SAleksandr Rybalko #define	POR_DN_VMF3_RND				0x0c70	/* rw */
200e3572eb6SAleksandr Rybalko #define	POR_DN_VMF3_CXRA			0x0c78	/* rw */
201e3572eb6SAleksandr Rybalko #define	POR_DN_VMF4_CTRL			0x0c80	/* rw */
202e3572eb6SAleksandr Rybalko #define	POR_DN_VMF4_RNF0			0x0c88	/* rw */
203e3572eb6SAleksandr Rybalko #define	POR_DN_VMF4_RND				0x0c90	/* rw */
204e3572eb6SAleksandr Rybalko #define	POR_DN_VMF4_CXRA			0x0c98	/* rw */
205e3572eb6SAleksandr Rybalko #define	POR_DN_VMF5_CTRL			0x0ca0	/* rw */
206e3572eb6SAleksandr Rybalko #define	POR_DN_VMF5_RNF0			0x0ca8	/* rw */
207e3572eb6SAleksandr Rybalko #define	POR_DN_VMF5_RND				0x0cb0	/* rw */
208e3572eb6SAleksandr Rybalko #define	POR_DN_VMF5_CXRA			0x0cb8	/* rw */
209e3572eb6SAleksandr Rybalko #define	POR_DN_VMF6_CTRL			0x0cc0	/* rw */
210e3572eb6SAleksandr Rybalko #define	POR_DN_VMF6_RNF0			0x0cc8	/* rw */
211e3572eb6SAleksandr Rybalko #define	POR_DN_VMF6_RND				0x0cd0	/* rw */
212e3572eb6SAleksandr Rybalko #define	POR_DN_VMF6_CXRA			0x0cd8	/* rw */
213e3572eb6SAleksandr Rybalko #define	POR_DN_VMF7_CTRL			0x0ce0	/* rw */
214e3572eb6SAleksandr Rybalko #define	POR_DN_VMF7_RNF0			0x0ce8	/* rw */
215e3572eb6SAleksandr Rybalko #define	POR_DN_VMF7_RND				0x0cf0	/* rw */
216e3572eb6SAleksandr Rybalko #define	POR_DN_VMF7_CXRA			0x0cf8	/* rw */
217e3572eb6SAleksandr Rybalko #define	POR_DN_VMF8_CTRL			0x0d00	/* rw */
218e3572eb6SAleksandr Rybalko #define	POR_DN_VMF8_RNF0			0x0d08	/* rw */
219e3572eb6SAleksandr Rybalko #define	POR_DN_VMF8_RND				0x0d10	/* rw */
220e3572eb6SAleksandr Rybalko #define	POR_DN_VMF8_CXRA			0x0d18	/* rw */
221e3572eb6SAleksandr Rybalko #define	POR_DN_VMF9_CTRL			0x0d20	/* rw */
222e3572eb6SAleksandr Rybalko #define	POR_DN_VMF9_RNF0			0x0d28	/* rw */
223e3572eb6SAleksandr Rybalko #define	POR_DN_VMF9_RND				0x0d30	/* rw */
224e3572eb6SAleksandr Rybalko #define	POR_DN_VMF9_CXRA			0x0d38	/* rw */
225e3572eb6SAleksandr Rybalko #define	POR_DN_VMF10_CTRL			0x0d40	/* rw */
226e3572eb6SAleksandr Rybalko #define	POR_DN_VMF10_RNF0			0x0d48	/* rw */
227e3572eb6SAleksandr Rybalko #define	POR_DN_VMF10_RND			0x0d50	/* rw */
228e3572eb6SAleksandr Rybalko #define	POR_DN_VMF10_CXRA			0x0d58	/* rw */
229e3572eb6SAleksandr Rybalko #define	POR_DN_VMF11_CTRL			0x0d60	/* rw */
230e3572eb6SAleksandr Rybalko #define	POR_DN_VMF11_RNF0			0x0d68	/* rw */
231e3572eb6SAleksandr Rybalko #define	POR_DN_VMF11_RND			0x0d70	/* rw */
232e3572eb6SAleksandr Rybalko #define	POR_DN_VMF11_CXRA			0x0d78	/* rw */
233e3572eb6SAleksandr Rybalko #define	POR_DN_VMF12_CTRL			0x0d80	/* rw */
234e3572eb6SAleksandr Rybalko #define	POR_DN_VMF12_RNF0			0x0d88	/* rw */
235e3572eb6SAleksandr Rybalko #define	POR_DN_VMF12_RND			0x0d90	/* rw */
236e3572eb6SAleksandr Rybalko #define	POR_DN_VMF12_CXRA			0x0d98	/* rw */
237e3572eb6SAleksandr Rybalko #define	POR_DN_VMF13_CTRL			0x0da0	/* rw */
238e3572eb6SAleksandr Rybalko #define	POR_DN_VMF13_RNF0			0x0da8	/* rw */
239e3572eb6SAleksandr Rybalko #define	POR_DN_VMF13_RND			0x0db0	/* rw */
240e3572eb6SAleksandr Rybalko #define	POR_DN_VMF13_CXRA			0x0db8	/* rw */
241e3572eb6SAleksandr Rybalko #define	POR_DN_VMF14_CTRL			0x0dc0	/* rw */
242e3572eb6SAleksandr Rybalko #define	POR_DN_VMF14_RNF0			0x0dc8	/* rw */
243e3572eb6SAleksandr Rybalko #define	POR_DN_VMF14_RND			0x0dd0	/* rw */
244e3572eb6SAleksandr Rybalko #define	POR_DN_VMF14_CXRA			0x0dd8	/* rw */
245e3572eb6SAleksandr Rybalko #define	POR_DN_VMF15_CTRL			0x0de0	/* rw */
246e3572eb6SAleksandr Rybalko #define	POR_DN_VMF15_RNF0			0x0de8	/* rw */
247e3572eb6SAleksandr Rybalko #define	POR_DN_VMF15_RND			0x0df0	/* rw */
248e3572eb6SAleksandr Rybalko #define	POR_DN_VMF15_CXRA			0x0df8	/* rw */
249e3572eb6SAleksandr Rybalko #define	POR_DN_PMU_EVENT_SEL			0x2000	/* rw */
250e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_OCCUP1_ID_SHIFT	32
251e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_OCCUP1_ID_MASK	(0xf << 32)
252e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_OCCUP1_ID_ALL		0
253e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_OCCUP1_ID_DVM_OPS		1
254e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_OCCUP1_ID_DVM_SYNCS	2
255e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_EVENT_ID3_SHIFT	24
256e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_EVENT_ID3_MASK	(0x3f << 24)
257e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_EVENT_ID2_SHIFT	16
258e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_EVENT_ID2_MASK	(0x3f << 16)
259e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_EVENT_ID1_SHIFT	8
260e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_EVENT_ID1_MASK	(0x3f << 8)
261e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_EVENT_ID0_SHIFT	0
262e3572eb6SAleksandr Rybalko #define		POR_DN_PMU_EVENT_SEL_EVENT_ID0_MASK	0x3f
263e3572eb6SAleksandr Rybalko 
264e3572eb6SAleksandr Rybalko /* Debug and trace register */
265e3572eb6SAleksandr Rybalko #define	POR_DT_NODE_INFO			0x0000	/* ro */
266e3572eb6SAleksandr Rybalko #define	POR_DT_CHILD_INFO			0x0080	/* ro */
267e3572eb6SAleksandr Rybalko #define	POR_DT_SECURE_ACCESS			0x0980	/* rw */
268e3572eb6SAleksandr Rybalko #define	POR_DT_DTC_CTL				0x0a00	/* rw */
269e3572eb6SAleksandr Rybalko #define		POR_DT_DTC_CTL_DT_EN			(1 << 0)
270e3572eb6SAleksandr Rybalko #define	POR_DT_TRIGGER_STATUS			0x0a10	/* ro */
271e3572eb6SAleksandr Rybalko #define	POR_DT_TRIGGER_STATUS_CLR		0x0a20	/* wo */
272e3572eb6SAleksandr Rybalko #define	POR_DT_TRACE_CONTROL			0x0a30	/* rw */
273e3572eb6SAleksandr Rybalko #define	POR_DT_TRACEID				0x0a48	/* rw */
274e3572eb6SAleksandr Rybalko #define	POR_DT_PMEVCNTAB			0x2000	/* rw */
275e3572eb6SAleksandr Rybalko #define	POR_DT_PMEVCNTCD			0x2010	/* rw */
276e3572eb6SAleksandr Rybalko #define	POR_DT_PMEVCNTEF			0x2020	/* rw */
277e3572eb6SAleksandr Rybalko #define	POR_DT_PMEVCNTGH			0x2030	/* rw */
278e3572eb6SAleksandr Rybalko #define	POR_DT_PMEVCNT(x)			(0x2000 + ((x) * 0x10))
27959191f35SAleksandr Rybalko #define		POR_DT_PMEVCNT_EVENCNT_SHIFT	0
28059191f35SAleksandr Rybalko #define		POR_DT_PMEVCNT_ODDCNT_SHIFT	32
281e3572eb6SAleksandr Rybalko #define	POR_DT_PMCCNTR				0x2040	/* rw */
282e3572eb6SAleksandr Rybalko #define	POR_DT_PMEVCNTSRAB			0x2050	/* rw */
283e3572eb6SAleksandr Rybalko #define	POR_DT_PMEVCNTSRCD			0x2060	/* rw */
284e3572eb6SAleksandr Rybalko #define	POR_DT_PMEVCNTSREF			0x2070	/* rw */
285e3572eb6SAleksandr Rybalko #define	POR_DT_PMEVCNTSRGH			0x2080	/* rw */
286e3572eb6SAleksandr Rybalko #define	POR_DT_PMCCNTRSR			0x2090	/* rw */
287e3572eb6SAleksandr Rybalko #define	POR_DT_PMCR				0x2100	/* rw */
288e3572eb6SAleksandr Rybalko #define		POR_DT_PMCR_OVFL_INTR_EN		(1 << 6)
289e3572eb6SAleksandr Rybalko #define		POR_DT_PMCR_CNTR_RST			(1 << 5)
290e3572eb6SAleksandr Rybalko #define		POR_DT_PMCR_CNTCFG_SHIFT		1
291e3572eb6SAleksandr Rybalko #define		POR_DT_PMCR_CNTCFG_MASK			(0xf << POR_DT_PMCR_CNTCFG_SHIFT)
292e3572eb6SAleksandr Rybalko #define		POR_DT_PMCR_PMU_EN			(1 << 0)
293e3572eb6SAleksandr Rybalko #define	POR_DT_PMOVSR				0x2118	/* ro */
294e3572eb6SAleksandr Rybalko #define	POR_DT_PMOVSR_CLR			0x2120	/* wo */
295e3572eb6SAleksandr Rybalko #define		POR_DT_PMOVSR_EVENT_COUNTERS	0xffUL
296e3572eb6SAleksandr Rybalko #define		POR_DT_PMOVSR_CYCLE_COUNTER		0x100UL
297e3572eb6SAleksandr Rybalko #define		POR_DT_PMOVSR_ALL			\
298e3572eb6SAleksandr Rybalko     (POR_DT_PMOVSR_EVENT_COUNTERS | POR_DT_PMOVSR_CYCLE_COUNTER)
299e3572eb6SAleksandr Rybalko #define	POR_DT_PMSSR				0x2128	/* ro */
300e3572eb6SAleksandr Rybalko #define	POR_DT_PMSRR				0x2130	/* wo */
301e3572eb6SAleksandr Rybalko #define	POR_DT_CLAIM				0x2da0	/* rw */
302e3572eb6SAleksandr Rybalko #define	POR_DT_DEVAFF				0x2da8	/* ro */
303e3572eb6SAleksandr Rybalko #define	POR_DT_LSR				0x2db0	/* ro */
304e3572eb6SAleksandr Rybalko #define	POR_DT_AUTHSTATUS_DEVARCH		0x2db8	/* ro */
305e3572eb6SAleksandr Rybalko #define	POR_DT_DEVID				0x2dc0	/* ro */
306e3572eb6SAleksandr Rybalko #define	POR_DT_DEVTYPE				0x2dc8	/* ro */
307e3572eb6SAleksandr Rybalko #define	POR_DT_PIDR45				0x2dd0	/* ro */
308e3572eb6SAleksandr Rybalko #define	POR_DT_PIDR67				0x2dd8	/* ro */
309e3572eb6SAleksandr Rybalko #define	POR_DT_PIDR01				0x2de0	/* ro */
310e3572eb6SAleksandr Rybalko #define	POR_DT_PIDR23				0x2de8	/* ro */
311e3572eb6SAleksandr Rybalko #define	POR_DT_CIDR01				0x2df0	/* ro */
312e3572eb6SAleksandr Rybalko #define	POR_DT_CIDR23				0x2df8	/* ro */
313e3572eb6SAleksandr Rybalko 
314e3572eb6SAleksandr Rybalko /* HN-F registers */
315e3572eb6SAleksandr Rybalko #define	POR_HNF_NODE_INFO			0x0000	/* ro */
316e3572eb6SAleksandr Rybalko #define	POR_HNF_CHILD_INFO			0x0080	/* ro */
317e3572eb6SAleksandr Rybalko #define	POR_HNF_SECURE_REGISTER_GROUPS_OVERRIDE	0x0980	/* rw */
318e3572eb6SAleksandr Rybalko #define	POR_HNF_UNIT_INFO			0x0900	/* ro */
319e3572eb6SAleksandr Rybalko #define	POR_HNF_CFG_CTL				0x0a00	/* rw */
320e3572eb6SAleksandr Rybalko #define	POR_HNF_AUX_CTL				0x0a08	/* rw */
321e3572eb6SAleksandr Rybalko #define	POR_HNF_R2_AUX_CTL			0x0a10	/* rw */
322e3572eb6SAleksandr Rybalko #define	POR_HNF_PPU_PWPR			0x1000	/* rw */
323e3572eb6SAleksandr Rybalko #define	POR_HNF_PPU_PWSR			0x1008	/* ro */
324e3572eb6SAleksandr Rybalko #define	POR_HNF_PPU_MISR			0x1014	/* ro */
325e3572eb6SAleksandr Rybalko #define	POR_HNF_PPU_IDR0			0x1fb0	/* ro */
326e3572eb6SAleksandr Rybalko #define	POR_HNF_PPU_IDR1			0x1fb4	/* ro */
327e3572eb6SAleksandr Rybalko #define	POR_HNF_PPU_IIDR			0x1fc8	/* ro */
328e3572eb6SAleksandr Rybalko #define	POR_HNF_PPU_AIDR			0x1fcc	/* ro */
329e3572eb6SAleksandr Rybalko #define	POR_HNF_PPU_DYN_RET_THRESHOLD		0x1100	/* rw */
330e3572eb6SAleksandr Rybalko #define	POR_HNF_QOS_BAND			0x0a80	/* ro */
331e3572eb6SAleksandr Rybalko #define	POR_HNF_QOS_RESERVATION			0x0a88	/* rw */
332e3572eb6SAleksandr Rybalko #define	POR_HNF_RN_STARVATION			0x0a90	/* rw */
333e3572eb6SAleksandr Rybalko #define	POR_HNF_ERRFR				0x3000	/* ro */
334e3572eb6SAleksandr Rybalko #define	POR_HNF_ERRCTLR				0x3008	/* rw */
335e3572eb6SAleksandr Rybalko #define	POR_HNF_ERRSTATUS			0x3010	/* w1c */
336e3572eb6SAleksandr Rybalko #define	POR_HNF_ERRADDR				0x3018	/* rw */
337e3572eb6SAleksandr Rybalko #define	POR_HNF_ERRMISC				0x3020	/* rw */
338e3572eb6SAleksandr Rybalko #define	POR_HNF_ERR_INJ				0x3030	/* rw */
339e3572eb6SAleksandr Rybalko #define	POR_HNF_BYTE_PAR_ERR_INJ		0x3038	/* wo */
340e3572eb6SAleksandr Rybalko #define	POR_HNF_ERRFR_NS			0x3100	/* ro */
341e3572eb6SAleksandr Rybalko #define	POR_HNF_ERRCTLR_NS			0x3108	/* rw */
342e3572eb6SAleksandr Rybalko #define	POR_HNF_ERRSTATUS_NS			0x3110	/* w1c */
343e3572eb6SAleksandr Rybalko #define	POR_HNF_ERRADDR_NS			0x3118	/* rw */
344e3572eb6SAleksandr Rybalko #define	POR_HNF_ERRMISC_NS			0x3120	/* rw */
345e3572eb6SAleksandr Rybalko #define	POR_HNF_SLC_LOCK_WAYS			0x0c00	/* rw */
346e3572eb6SAleksandr Rybalko #define	POR_HNF_SLC_LOCK_BASE0			0x0c08	/* rw */
347e3572eb6SAleksandr Rybalko #define	POR_HNF_SLC_LOCK_BASE1			0x0c10	/* rw */
348e3572eb6SAleksandr Rybalko #define	POR_HNF_SLC_LOCK_BASE2			0x0c18	/* rw */
349e3572eb6SAleksandr Rybalko #define	POR_HNF_SLC_LOCK_BASE3			0x0c20	/* rw */
350e3572eb6SAleksandr Rybalko #define	POR_HNF_RNF_REGION_VEC1			0x0c28	/* rw */
351e3572eb6SAleksandr Rybalko #define	POR_HNF_RNI_REGION_VEC			0x0c30	/* rw */
352e3572eb6SAleksandr Rybalko #define	POR_HNF_RNF_REGION_VEC			0x0c38	/* rw */
353e3572eb6SAleksandr Rybalko #define	POR_HNF_RND_REGION_VEC			0x0c40	/* rw */
354e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION0_RNF_VEC	0x0c48	/* rw */
355e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION1_RNF_VEC	0x0c50	/* rw */
356e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION2_RNF_VEC	0x0c58	/* rw */
357e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION3_RNF_VEC	0x0c60	/* rw */
358e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION0_RNF_VEC1	0x0cb0	/* rw */
359e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION1_RNF_VEC1	0x0cb8	/* rw */
360e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION2_RNF_VEC1	0x0cc0	/* rw */
361e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION3_RNF_VEC1	0x0cc8	/* rw */
362e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION0_RNI_VEC	0x0c68	/* rw */
363e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION1_RNI_VEC	0x0c70	/* rw */
364e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION2_RNI_VEC	0x0c78	/* rw */
365e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION3_RNI_VEC	0x0c80	/* rw */
366e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION0_RND_VEC	0x0c88	/* rw */
367e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION1_RND_VEC	0x0c90	/* rw */
368e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION2_RND_VEC	0x0c98	/* rw */
369e3572eb6SAleksandr Rybalko #define	POR_HNF_SLCWAY_PARTITION3_RND_VEC	0x0ca0	/* rw */
370e3572eb6SAleksandr Rybalko #define	POR_HNF_RN_REGION_LOCK			0x0ca8	/* rw */
371e3572eb6SAleksandr Rybalko #define	POR_HNF_SAM_CONTROL			0x0d00	/* rw */
372e3572eb6SAleksandr Rybalko #define	POR_HNF_SAM_MEMREGION0			0x0d08	/* rw */
373e3572eb6SAleksandr Rybalko #define	POR_HNF_SAM_MEMREGION1			0x0d10	/* rw */
374e3572eb6SAleksandr Rybalko #define	POR_HNF_SAM_SN_PROPERTIES		0x0d18	/* rw */
375e3572eb6SAleksandr Rybalko #define	POR_HNF_SAM_6SN_NODEID			0x0d20	/* rw */
376e3572eb6SAleksandr Rybalko #define	POR_HNF_RN_PHYS_ID(x)			(0x0d28 + 8 * (x)) /* rw */
377e3572eb6SAleksandr Rybalko #define	POR_HNF_RN_PHYS_ID63			0x0f90	/* rw */
378e3572eb6SAleksandr Rybalko #define	POR_HNF_SF_CXG_BLOCKED_WAYS		0x0f00	/* rw */
379e3572eb6SAleksandr Rybalko #define	POR_HNF_CML_PORT_AGGR_GRP0_ADD_MASK	0x0f10	/* rw */
380e3572eb6SAleksandr Rybalko #define	POR_HNF_CML_PORT_AGGR_GRP1_ADD_MASK	0x0f18	/* rw */
381e3572eb6SAleksandr Rybalko #define	POR_HNF_CML_PORT_AGGR_GRP0_REG		0x0f28	/* rw */
382e3572eb6SAleksandr Rybalko #define	POR_HNF_CML_PORT_AGGR_GRP1_REG		0x0f30	/* rw */
383e3572eb6SAleksandr Rybalko #define	HN_SAM_HASH_ADDR_MASK_REG		0x0f40	/* rw */
384e3572eb6SAleksandr Rybalko #define	HN_SAM_REGION_CMP_ADDR_MASK_REG		0x0f48	/* rw */
385e3572eb6SAleksandr Rybalko #define	POR_HNF_ABF_LO_ADDR			0x0f50	/* rw */
386e3572eb6SAleksandr Rybalko #define	POR_HNF_ABF_HI_ADDR			0x0f58	/* rw */
387e3572eb6SAleksandr Rybalko #define	POR_HNF_ABF_PR				0x0f60	/* rw */
388e3572eb6SAleksandr Rybalko #define	POR_HNF_ABF_SR				0x0f68	/* ro */
389e3572eb6SAleksandr Rybalko #define	POR_HNF_LDID_MAP_TABLE_REG0		0x0f98	/* rw */
390e3572eb6SAleksandr Rybalko #define	POR_HNF_LDID_MAP_TABLE_REG1		0x0fa0	/* rw */
391e3572eb6SAleksandr Rybalko #define	POR_HNF_LDID_MAP_TABLE_REG2		0x0fa8	/* rw */
392e3572eb6SAleksandr Rybalko #define	POR_HNF_LDID_MAP_TABLE_REG3		0x0fb0	/* rw */
393e3572eb6SAleksandr Rybalko #define	POR_HNF_CFG_SLCSF_DBGRD			0x0b80	/* wo */
394e3572eb6SAleksandr Rybalko #define	POR_HNF_SLC_CACHE_ACCESS_SLC_TAG	0x0b88	/* ro */
395e3572eb6SAleksandr Rybalko #define	POR_HNF_SLC_CACHE_ACCESS_SLC_DATA	0x0b90	/* ro */
396e3572eb6SAleksandr Rybalko #define	POR_HNF_SLC_CACHE_ACCESS_SF_TAG		0x0b98	/* ro */
397e3572eb6SAleksandr Rybalko #define	POR_HNF_SLC_CACHE_ACCESS_SF_TAG1	0x0ba0	/* ro */
398e3572eb6SAleksandr Rybalko #define	POR_HNF_SLC_CACHE_ACCESS_SF_TAG2	0x0ba8	/* ro */
399e3572eb6SAleksandr Rybalko #define	POR_HNF_PMU_EVENT_SEL			0x2000	/* rw */
400e3572eb6SAleksandr Rybalko 
401e3572eb6SAleksandr Rybalko /* HN-I registers */
402e3572eb6SAleksandr Rybalko #define	POR_HNI_NODE_INFO			0x0000	/* ro */
403e3572eb6SAleksandr Rybalko #define	POR_HNI_CHILD_INFO			0x0080	/* ro */
404e3572eb6SAleksandr Rybalko #define	POR_HNI_SECURE_REGISTER_GROUPS_OVERRIDE	0x0980	/* rw */
405e3572eb6SAleksandr Rybalko #define	POR_HNI_UNIT_INFO			0x0900	/* ro */
406e3572eb6SAleksandr Rybalko #define	POR_HNI_SAM_ADDRREGION0_CFG		0x0c00	/* rw */
407e3572eb6SAleksandr Rybalko #define	POR_HNI_SAM_ADDRREGION1_CFG		0x0c08	/* rw */
408e3572eb6SAleksandr Rybalko #define	POR_HNI_SAM_ADDRREGION2_CFG		0x0c10	/* rw */
409e3572eb6SAleksandr Rybalko #define	POR_HNI_SAM_ADDRREGION3_CFG		0x0c18	/* rw */
410e3572eb6SAleksandr Rybalko #define	POR_HNI_CFG_CTL				0x0a00	/* rw */
411e3572eb6SAleksandr Rybalko #define	POR_HNI_AUX_CTL				0x0a08	/* rw */
412e3572eb6SAleksandr Rybalko #define	POR_HNI_ERRFR				0x3000	/* ro */
413e3572eb6SAleksandr Rybalko #define	POR_HNI_ERRCTLR				0x3008	/* rw */
414e3572eb6SAleksandr Rybalko #define	POR_HNI_ERRSTATUS			0x3010	/* w1c */
415e3572eb6SAleksandr Rybalko #define	POR_HNI_ERRADDR				0x3018	/* rw */
416e3572eb6SAleksandr Rybalko #define	POR_HNI_ERRMISC				0x3020	/* rw */
417e3572eb6SAleksandr Rybalko #define	POR_HNI_ERRFR_NS			0x3100	/* ro */
418e3572eb6SAleksandr Rybalko #define	POR_HNI_ERRCTLR_NS			0x3108	/* rw */
419e3572eb6SAleksandr Rybalko #define	POR_HNI_ERRSTATUS_NS			0x3110	/* w1c */
420e3572eb6SAleksandr Rybalko #define	POR_HNI_ERRADDR_NS			0x3118	/* rw */
421e3572eb6SAleksandr Rybalko #define	POR_HNI_ERRMISC_NS			0x3120	/* rw */
422e3572eb6SAleksandr Rybalko #define	POR_HNI_PMU_EVENT_SEL			0x2000	/* rw */
423e3572eb6SAleksandr Rybalko 
424e3572eb6SAleksandr Rybalko /* XP registers */
425e3572eb6SAleksandr Rybalko #define	POR_MXP_NODE_INFO			0x0000	/* ro */
426e3572eb6SAleksandr Rybalko #define	POR_MXP_DEVICE_PORT_CONNECT_INFO_P0	0x0008	/* ro */
427e3572eb6SAleksandr Rybalko #define	POR_MXP_DEVICE_PORT_CONNECT_INFO_P1	0x0010	/* ro */
428e3572eb6SAleksandr Rybalko #define	POR_MXP_MESH_PORT_CONNECT_INFO_EAST	0x0018	/* ro */
429e3572eb6SAleksandr Rybalko #define	POR_MXP_MESH_PORT_CONNECT_INFO_NORTH	0x0020	/* ro */
430e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_INFO			0x0080	/* ro */
431e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_0			0x0100	/* ro */
432e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_1			0x0108	/* ro */
433e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_2			0x0110	/* ro */
434e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_3			0x0118	/* ro */
435e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_4			0x0120	/* ro */
436e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_5			0x0128	/* ro */
437e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_6			0x0130	/* ro */
438e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_7			0x0138	/* ro */
439e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_8			0x0140	/* ro */
440e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_9			0x0148	/* ro */
441e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_10		0x0150	/* ro */
442e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_11		0x0158	/* ro */
443e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_12		0x0160	/* ro */
444e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_13		0x0168	/* ro */
445e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_14		0x0170	/* ro */
446e3572eb6SAleksandr Rybalko #define	POR_MXP_CHILD_POINTER_15		0x0178	/* ro */
447e3572eb6SAleksandr Rybalko #define	POR_MXP_P0_INFO				0x0900	/* ro */
448e3572eb6SAleksandr Rybalko #define	POR_MXP_P1_INFO				0x0908	/* ro */
449e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_RN_I			0x01
450e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_RN_D			0x02
451e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_RN_F_CHIB		0x04
452e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_RN_F_CHIB_ESAM		0x05
453e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_RN_F_CHIA		0x06
454e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_RN_F_CHIA_ESAM		0x07
455e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_HN_T			0x08
456e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_HN_I			0x09
457e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_HN_D			0x0a
458e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_SN_F			0x0c
459e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_SBSX			0x0d
460e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_HN_F			0x0e
461e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_CXHA			0x11
462e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_CXRA			0x12
463e3572eb6SAleksandr Rybalko #define		POR_MXP_PX_INFO_DEV_TYPE_CXRH			0x13
464e3572eb6SAleksandr Rybalko 
465e3572eb6SAleksandr Rybalko #define	POR_MXP_SECURE_REGISTER_GROUPS_OVERRIDE	0x0980	/* rw */
466e3572eb6SAleksandr Rybalko #define	POR_MXP_AUX_CTL				0x0a00	/* rw */
467e3572eb6SAleksandr Rybalko #define	POR_MXP_P0_QOS_CONTROL			0x0a80	/* rw */
468e3572eb6SAleksandr Rybalko #define	POR_MXP_P0_QOS_LAT_TGT			0x0a88	/* rw */
469e3572eb6SAleksandr Rybalko #define	POR_MXP_P0_QOS_LAT_SCALE		0x0a90	/* rw */
470e3572eb6SAleksandr Rybalko #define	POR_MXP_P0_QOS_LAT_RANGE		0x0a98	/* rw */
471e3572eb6SAleksandr Rybalko #define	POR_MXP_P1_QOS_CONTROL			0x0aa0	/* rw */
472e3572eb6SAleksandr Rybalko #define	POR_MXP_P1_QOS_LAT_TGT			0x0aa8	/* rw */
473e3572eb6SAleksandr Rybalko #define	POR_MXP_P1_QOS_LAT_SCALE		0x0ab0	/* rw */
474e3572eb6SAleksandr Rybalko #define	POR_MXP_P1_QOS_LAT_RANGE		0x0ab8	/* rw */
475e3572eb6SAleksandr Rybalko #define	POR_MXP_PMU_EVENT_SEL			0x2000	/* rw */
476e3572eb6SAleksandr Rybalko 
477e3572eb6SAleksandr Rybalko #define	POR_MXP_ERRFR				0x3000	/* ro */
478e3572eb6SAleksandr Rybalko #define	POR_MXP_ERRCTLR				0x3008	/* rw */
479e3572eb6SAleksandr Rybalko #define	POR_MXP_ERRSTATUS			0x3010	/* w1c */
480e3572eb6SAleksandr Rybalko #define	POR_MXP_ERRMISC				0x3028	/* rw */
481e3572eb6SAleksandr Rybalko #define	POR_MXP_P0_BYTE_PAR_ERR_INJ		0x3030	/* wo */
482e3572eb6SAleksandr Rybalko #define	POR_MXP_P1_BYTE_PAR_ERR_INJ		0x3038	/* wo */
483e3572eb6SAleksandr Rybalko #define	POR_MXP_ERRFR_NS			0x3100	/* ro */
484e3572eb6SAleksandr Rybalko #define	POR_MXP_ERRCTLR_NS			0x3108	/* rw */
485e3572eb6SAleksandr Rybalko #define	POR_MXP_ERRSTATUS_NS			0x3110	/* w1c */
486e3572eb6SAleksandr Rybalko #define	POR_MXP_ERRMISC_NS			0x3128	/* rw */
487e3572eb6SAleksandr Rybalko #define	POR_MXP_P0_SYSCOREQ_CTL			0x1000	/* rw */
488e3572eb6SAleksandr Rybalko #define	POR_MXP_P1_SYSCOREQ_CTL			0x1008	/* rw */
489e3572eb6SAleksandr Rybalko #define	POR_MXP_P0_SYSCOACK_STATUS		0x1010	/* ro */
490e3572eb6SAleksandr Rybalko #define	POR_MXP_P1_SYSCOACK_STATUS		0x1018	/* ro */
491e3572eb6SAleksandr Rybalko #define	POR_DTM_CONTROL				0x2100	/* rw */
492e3572eb6SAleksandr Rybalko #define		POR_DTM_CONTROL_TRACE_NO_ATB		(1 << 3)
493e3572eb6SAleksandr Rybalko #define		POR_DTM_CONTROL_SAMPLE_PROFILE_ENABLE	(1 << 2)
494e3572eb6SAleksandr Rybalko #define		POR_DTM_CONTROL_TRACE_TAG_ENABLE	(1 << 1)
495e3572eb6SAleksandr Rybalko #define		POR_DTM_CONTROL_DTM_ENABLE		(1 << 0)
496e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY_READY		0x2118	/* w1c */
497e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY0_0			0x2120	/* ro */
498e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY0_1			0x2128	/* ro */
499e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY0_2			0x2130	/* ro */
500e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY1_0			0x2138	/* ro */
501e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY1_1			0x2140	/* ro */
502e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY1_2			0x2148	/* ro */
503e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY2_0			0x2150	/* ro */
504e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY2_1			0x2158	/* ro */
505e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY2_2			0x2160	/* ro */
506e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY3_0			0x2168	/* ro */
507e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY3_1			0x2170	/* ro */
508e3572eb6SAleksandr Rybalko #define	POR_DTM_FIFO_ENTRY3_2			0x2178	/* ro */
509e3572eb6SAleksandr Rybalko #define	POR_DTM_WP0_CONFIG			0x21a0	/* rw */
510e3572eb6SAleksandr Rybalko #define	POR_DTM_WP0_VAL				0x21a8	/* rw */
511e3572eb6SAleksandr Rybalko #define	POR_DTM_WP0_MASK			0x21b0	/* rw */
512e3572eb6SAleksandr Rybalko #define	POR_DTM_WP1_CONFIG			0x21b8	/* rw */
513e3572eb6SAleksandr Rybalko #define	POR_DTM_WP1_VAL				0x21c0	/* rw */
514e3572eb6SAleksandr Rybalko #define	POR_DTM_WP1_MASK			0x21c8	/* rw */
515e3572eb6SAleksandr Rybalko #define	POR_DTM_WP2_CONFIG			0x21d0	/* rw */
516e3572eb6SAleksandr Rybalko #define	POR_DTM_WP2_VAL				0x21d8	/* rw */
517e3572eb6SAleksandr Rybalko #define	POR_DTM_WP2_MASK			0x21e0	/* rw */
518e3572eb6SAleksandr Rybalko #define	POR_DTM_WP3_CONFIG			0x21e8	/* rw */
519e3572eb6SAleksandr Rybalko #define	POR_DTM_WP3_VAL				0x21f0	/* rw */
520e3572eb6SAleksandr Rybalko #define	POR_DTM_WP3_MASK			0x21f8	/* rw */
521e3572eb6SAleksandr Rybalko #define	POR_DTM_PMSICR				0x2200	/* rw */
522e3572eb6SAleksandr Rybalko #define	POR_DTM_PMSIRR				0x2208	/* rw */
523e3572eb6SAleksandr Rybalko #define	POR_DTM_PMU_CONFIG			0x2210	/* rw */
524e3572eb6SAleksandr Rybalko #define		POR_DTM_PMU_CONFIG_PMU_EN		(1 << 0)
525e3572eb6SAleksandr Rybalko #define		POR_DTM_PMU_CONFIG_VCNT_INPUT_SEL_SHIFT	32
526e3572eb6SAleksandr Rybalko #define		POR_DTM_PMU_CONFIG_VCNT_INPUT_SEL_WIDTH	8
527e3572eb6SAleksandr Rybalko #define	POR_DTM_PMEVCNT				0x2220	/* rw */
52859191f35SAleksandr Rybalko #define		POR_DTM_PMEVCNT_CNTR_WIDTH	16
529e3572eb6SAleksandr Rybalko #define	POR_DTM_PMEVCNTSR			0x2240	/* rw */
530e3572eb6SAleksandr Rybalko 
531e3572eb6SAleksandr Rybalko /* RN-D registers */
532e3572eb6SAleksandr Rybalko #define	POR_RND_NODE_INFO			0x0000	/* ro */
533e3572eb6SAleksandr Rybalko #define	POR_RND_CHILD_INFO			0x0080	/* ro */
534e3572eb6SAleksandr Rybalko #define	POR_RND_SECURE_REGISTER_GROUPS_OVERRIDE	0x0980	/* rw */
535e3572eb6SAleksandr Rybalko #define	POR_RND_UNIT_INFO			0x0900	/* ro */
536e3572eb6SAleksandr Rybalko #define	POR_RND_CFG_CTL				0x0a00	/* rw */
537e3572eb6SAleksandr Rybalko #define	POR_RND_AUX_CTL				0x0a08	/* rw */
538e3572eb6SAleksandr Rybalko #define	POR_RND_S0_PORT_CONTROL			0x0a10	/* rw */
539e3572eb6SAleksandr Rybalko #define	POR_RND_S1_PORT_CONTROL			0x0a18	/* rw */
540e3572eb6SAleksandr Rybalko #define	POR_RND_S2_PORT_CONTROL			0x0a20	/* rw */
541e3572eb6SAleksandr Rybalko #define	POR_RND_S0_QOS_CONTROL			0x0a80	/* rw */
542e3572eb6SAleksandr Rybalko #define	POR_RND_S0_QOS_LAT_TGT			0x0a88	/* rw */
543e3572eb6SAleksandr Rybalko #define	POR_RND_S0_QOS_LAT_SCALE		0x0a90	/* rw */
544e3572eb6SAleksandr Rybalko #define	POR_RND_S0_QOS_LAT_RANGE		0x0a98	/* rw */
545e3572eb6SAleksandr Rybalko #define	POR_RND_S1_QOS_CONTROL			0x0aa0	/* rw */
546e3572eb6SAleksandr Rybalko #define	POR_RND_S1_QOS_LAT_TGT			0x0aa8	/* rw */
547e3572eb6SAleksandr Rybalko #define	POR_RND_S1_QOS_LAT_SCALE		0x0ab0	/* rw */
548e3572eb6SAleksandr Rybalko #define	POR_RND_S1_QOS_LAT_RANGE		0x0ab8	/* rw */
549e3572eb6SAleksandr Rybalko #define	POR_RND_S2_QOS_CONTROL			0x0ac0	/* rw */
550e3572eb6SAleksandr Rybalko #define	POR_RND_S2_QOS_LAT_TGT			0x0ac8	/* rw */
551e3572eb6SAleksandr Rybalko #define	POR_RND_S2_QOS_LAT_SCALE		0x0ad0	/* rw */
552e3572eb6SAleksandr Rybalko #define	POR_RND_S2_QOS_LAT_RANGE		0x0ad8	/* rw */
553e3572eb6SAleksandr Rybalko #define	POR_RND_PMU_EVENT_SEL			0x2000	/* rw */
554e3572eb6SAleksandr Rybalko #define	POR_RND_SYSCOREQ_CTL			0x1000	/* rw */
555e3572eb6SAleksandr Rybalko #define	POR_RND_SYSCOACK_STATUS			0x1008	/* ro */
556e3572eb6SAleksandr Rybalko 
557e3572eb6SAleksandr Rybalko /* RN-I registers */
558e3572eb6SAleksandr Rybalko #define	POR_RNI_NODE_INFO			0x0000	/* ro */
559e3572eb6SAleksandr Rybalko #define	POR_RNI_CHILD_INFO			0x0080	/* ro */
560e3572eb6SAleksandr Rybalko #define	POR_RNI_SECURE_REGISTER_GROUPS_OVERRIDE	0x0980	/* rw */
561e3572eb6SAleksandr Rybalko #define	POR_RNI_UNIT_INFO			0x0900	/* ro */
562e3572eb6SAleksandr Rybalko #define	POR_RNI_CFG_CTL				0x0a00	/* rw */
563e3572eb6SAleksandr Rybalko #define	POR_RNI_AUX_CTL				0x0a08	/* rw */
564e3572eb6SAleksandr Rybalko #define	POR_RNI_S0_PORT_CONTROL			0x0a10	/* rw */
565e3572eb6SAleksandr Rybalko #define	POR_RNI_S1_PORT_CONTROL			0x0a18	/* rw */
566e3572eb6SAleksandr Rybalko #define	POR_RNI_S2_PORT_CONTROL			0x0a20	/* rw */
567e3572eb6SAleksandr Rybalko #define	POR_RNI_S0_QOS_CONTROL			0x0a80	/* rw */
568e3572eb6SAleksandr Rybalko #define	POR_RNI_S0_QOS_LAT_TGT			0x0a88	/* rw */
569e3572eb6SAleksandr Rybalko #define	POR_RNI_S0_QOS_LAT_SCALE		0x0a90	/* rw */
570e3572eb6SAleksandr Rybalko #define	POR_RNI_S0_QOS_LAT_RANGE		0x0a98	/* rw */
571e3572eb6SAleksandr Rybalko #define	POR_RNI_S1_QOS_CONTROL			0x0aa0	/* rw */
572e3572eb6SAleksandr Rybalko #define	POR_RNI_S1_QOS_LAT_TGT			0x0aa8	/* rw */
573e3572eb6SAleksandr Rybalko #define	POR_RNI_S1_QOS_LAT_SCALE		0x0ab0	/* rw */
574e3572eb6SAleksandr Rybalko #define	POR_RNI_S1_QOS_LAT_RANGE		0x0ab8	/* rw */
575e3572eb6SAleksandr Rybalko #define	POR_RNI_S2_QOS_CONTROL			0x0ac0	/* rw */
576e3572eb6SAleksandr Rybalko #define	POR_RNI_S2_QOS_LAT_TGT			0x0ac8	/* rw */
577e3572eb6SAleksandr Rybalko #define	POR_RNI_S2_QOS_LAT_SCALE		0x0ad0	/* rw */
578e3572eb6SAleksandr Rybalko #define	POR_RNI_S2_QOS_LAT_RANGE		0x0ad8	/* rw */
579e3572eb6SAleksandr Rybalko #define	POR_RNI_PMU_EVENT_SEL			0x2000	/* rw */
580e3572eb6SAleksandr Rybalko 
581e3572eb6SAleksandr Rybalko /* RN SAM registers */
582e3572eb6SAleksandr Rybalko #define	POR_RNSAM_NODE_INFO			0x0000	/* ro */
583e3572eb6SAleksandr Rybalko #define	POR_RNSAM_CHILD_INFO			0x0080	/* ro */
584e3572eb6SAleksandr Rybalko #define	POR_RNSAM_SECURE_REGISTER_GROUPS_OVERRIDE 0x0980 /* rw */
585e3572eb6SAleksandr Rybalko #define	POR_RNSAM_UNIT_INFO			0x0900	/* ro */
586e3572eb6SAleksandr Rybalko #define	RNSAM_STATUS				0x0c00	/* rw */
587e3572eb6SAleksandr Rybalko #define	NON_HASH_MEM_REGION_REG0		0x0c08	/* rw */
588e3572eb6SAleksandr Rybalko #define	NON_HASH_MEM_REGION_REG1		0x0c10	/* rw */
589e3572eb6SAleksandr Rybalko #define	NON_HASH_MEM_REGION_REG2		0x0c18	/* rw */
590e3572eb6SAleksandr Rybalko #define	NON_HASH_MEM_REGION_REG3		0x0c20	/* rw */
591e3572eb6SAleksandr Rybalko #define	NON_HASH_TGT_NODEID0			0x0c30	/* rw */
592e3572eb6SAleksandr Rybalko #define	NON_HASH_TGT_NODEID1			0x0c38	/* rw */
593e3572eb6SAleksandr Rybalko #define	NON_HASH_TGT_NODEID2			0x0c40	/* rw */
594e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_REGION0			0x0c48	/* rw */
595e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_REGION1			0x0c50	/* rw */
596e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG0		0x0c58	/* rw */
597e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG1		0x0c60	/* rw */
598e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG2		0x0c68	/* rw */
599e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG3		0x0c70	/* rw */
600e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG4		0x0c78	/* rw */
601e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG5		0x0c80	/* rw */
602e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG6		0x0c88	/* rw */
603e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG7		0x0c90	/* rw */
604e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_NONHASH_NODEID		0x0c98	/* rw */
605e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GROUP_HN_COUNT		0x0d00	/* rw */
606e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG0		0x0d08	/* rw */
607e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG1		0x0d10	/* rw */
608e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG2		0x0d18	/* rw */
609e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG3		0x0d20	/* rw */
610e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG4		0x0d28	/* rw */
611e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG5		0x0d30	/* rw */
612e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG6		0x0d38	/* rw */
613e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG7		0x0d40	/* rw */
614e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_SAM_CFG0		0x0d48	/* rw */
615e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_SAM_CFG1		0x0d50	/* rw */
616e3572eb6SAleksandr Rybalko #define	GIC_MEM_REGION_REG			0x0d58	/* rw */
617e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_ATTR			0x0d60	/* rw */
618e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_CPA_EN_REG		0x0d68	/* rw */
619e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_CPA_GRP_REG		0x0d70	/* rw */
620e3572eb6SAleksandr Rybalko #define	CML_PORT_AGGR_MODE_CTRL_REG		0x0e00	/* rw */
621e3572eb6SAleksandr Rybalko #define	CML_PORT_AGGR_GRP0_ADD_MASK		0x0e08	/* rw */
622e3572eb6SAleksandr Rybalko #define	CML_PORT_AGGR_GRP1_ADD_MASK		0x0e10	/* rw */
623e3572eb6SAleksandr Rybalko #define	CML_PORT_AGGR_GRP0_REG			0x0e40	/* rw */
624e3572eb6SAleksandr Rybalko #define	CML_PORT_AGGR_GRP1_REG			0x0e48	/* rw */
625e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SECONDARY_REG0		0x0f00	/* rw */
626e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SECONDARY_REG1		0x0f08	/* rw */
627e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_CAL_MODE_REG		0x0f10	/* rw */
628e3572eb6SAleksandr Rybalko #define	RNSAM_HASH_ADDR_MASK_REG		0x0f18	/* rw */
629e3572eb6SAleksandr Rybalko #define	RNSAM_REGION_CMP_ADDR_MASK_REG		0x0f20	/* rw */
630e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG8		0x0f58	/* rw */
631e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG9		0x0f60	/* rw */
632e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG10		0x0f68	/* rw */
633e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG11		0x0f70	/* rw */
634e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG12		0x0f78	/* rw */
635e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG13		0x0f80	/* rw */
636e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG14		0x0f88	/* rw */
637e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_HN_NODEID_REG15		0x0f90	/* rw */
638e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG8		0x1008	/* rw */
639e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG9		0x1010	/* rw */
640e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG10		0x1018	/* rw */
641e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG11		0x1020	/* rw */
642e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG12		0x1028	/* rw */
643e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG13		0x1030	/* rw */
644e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG14		0x1038	/* rw */
645e3572eb6SAleksandr Rybalko #define	SYS_CACHE_GRP_SN_NODEID_REG15		0x1040	/* rw */
646e3572eb6SAleksandr Rybalko 
647e3572eb6SAleksandr Rybalko /* SBSX registers */
648e3572eb6SAleksandr Rybalko #define	POR_SBSX_NODE_INFO			0x0000	/* ro */
649e3572eb6SAleksandr Rybalko #define	POR_SBSX_CHILD_INFO			0x0080	/* ro */
650e3572eb6SAleksandr Rybalko #define	POR_SBSX_UNIT_INFO			0x0900	/* ro */
651e3572eb6SAleksandr Rybalko #define	POR_SBSX_AUX_CTL			0x0a08	/* rw */
652e3572eb6SAleksandr Rybalko #define	POR_SBSX_ERRFR				0x3000	/* ro */
653e3572eb6SAleksandr Rybalko #define	POR_SBSX_ERRCTLR			0x3008	/* rw */
654e3572eb6SAleksandr Rybalko #define	POR_SBSX_ERRSTATUS			0x3010	/* w1c */
655e3572eb6SAleksandr Rybalko #define	POR_SBSX_ERRADDR			0x3018	/* rw */
656e3572eb6SAleksandr Rybalko #define	POR_SBSX_ERRMISC			0x3020	/* rw */
657e3572eb6SAleksandr Rybalko #define	POR_SBSX_ERRFR_NS			0x3100	/* ro */
658e3572eb6SAleksandr Rybalko #define	POR_SBSX_ERRCTLR_NS			0x3108	/* rw */
659e3572eb6SAleksandr Rybalko #define	POR_SBSX_ERRSTATUS_NS			0x3110	/* w1c */
660e3572eb6SAleksandr Rybalko #define	POR_SBSX_ERRADDR_NS			0x3118	/* rw */
661e3572eb6SAleksandr Rybalko #define	POR_SBSX_ERRMISC_NS			0x3120	/* rw */
662e3572eb6SAleksandr Rybalko #define	POR_SBSX_PMU_EVENT_SEL			0x2000	/* rw */
663e3572eb6SAleksandr Rybalko 
664e3572eb6SAleksandr Rybalko /* CXHA registers */
665e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_NODE_INFO			0x0000	/* ro */
666e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_ID				0x0008	/* rw */
667e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_CHILD_INFO			0x0080	/* ro */
668e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_AUX_CTL			0x0a08	/* rw */
669e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_SECURE_REGISTER_GROUPS_OVERRIDE 0x0980 /* rw */
670e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_UNIT_INFO			0x0900	/* ro */
671e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_RNF_RAID_TO_LDID_REG0	0x0c00	/* rw */
672e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_RNF_RAID_TO_LDID_REG1	0x0c08	/* rw */
673e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_RNF_RAID_TO_LDID_REG2	0x0c10	/* rw */
674e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_RNF_RAID_TO_LDID_REG3	0x0c18	/* rw */
675e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_RNF_RAID_TO_LDID_REG4	0x0c20	/* rw */
676e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_RNF_RAID_TO_LDID_REG5	0x0c28	/* rw */
677e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_RNF_RAID_TO_LDID_REG6	0x0c30	/* rw */
678e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_RNF_RAID_TO_LDID_REG7	0x0c38	/* rw */
679e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_AGENTID_TO_LINKID_REG0	0x0c40	/* rw */
680e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_AGENTID_TO_LINKID_REG1	0x0c48	/* rw */
681e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_AGENTID_TO_LINKID_REG2	0x0c50	/* rw */
682e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_AGENTID_TO_LINKID_REG3	0x0c58	/* rw */
683e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_AGENTID_TO_LINKID_REG4	0x0c60	/* rw */
684e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_AGENTID_TO_LINKID_REG5	0x0c68	/* rw */
685e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_AGENTID_TO_LINKID_REG6	0x0c70	/* rw */
686e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_AGENTID_TO_LINKID_REG7	0x0c78	/* rw */
687e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_AGENTID_TO_LINKID_VAL	0x0d00	/* rw */
688e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_RNF_RAID_TO_LDID_VAL		0x0d08	/* rw */
689e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_PMU_EVENT_SEL		0x2000	/* rw */
690e3572eb6SAleksandr Rybalko #define		POR_CXG_HA_PMU_EVENT_SEL_EVENT_ID3_SHIFT	24
691e3572eb6SAleksandr Rybalko #define		POR_CXG_HA_PMU_EVENT_SEL_EVENT_ID3_MASK		(0x3f << 24)
692e3572eb6SAleksandr Rybalko #define		POR_CXG_HA_PMU_EVENT_SEL_EVENT_ID2_SHIFT	16
693e3572eb6SAleksandr Rybalko #define		POR_CXG_HA_PMU_EVENT_SEL_EVENT_ID2_MASK		(0x3f << 16)
694e3572eb6SAleksandr Rybalko #define		POR_CXG_HA_PMU_EVENT_SEL_EVENT_ID1_SHIFT	8
695e3572eb6SAleksandr Rybalko #define		POR_CXG_HA_PMU_EVENT_SEL_EVENT_ID1_MASK		(0x3f << 8)
696e3572eb6SAleksandr Rybalko #define		POR_CXG_HA_PMU_EVENT_SEL_EVENT_ID0_SHIFT	0
697e3572eb6SAleksandr Rybalko #define		POR_CXG_HA_PMU_EVENT_SEL_EVENT_ID0_MASK		0x3f
698e3572eb6SAleksandr Rybalko 
699e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_CXPRTCL_LINK0_CTL		0x1000	/* rw */
700e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_CXPRTCL_LINK0_STATUS		0x1008	/* ro */
701e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_CXPRTCL_LINK1_CTL		0x1010	/* rw */
702e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_CXPRTCL_LINK1_STATUS		0x1018	/* ro */
703e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_CXPRTCL_LINK2_CTL		0x1020	/* rw */
704e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_CXPRTCL_LINK2_STATUS		0x1028	/* ro */
705e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_ERRFR			0x3000	/* ro */
706e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_ERRCTLR			0x3008	/* rw */
707e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_ERRSTATUS			0x3010	/* w1c */
708e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_ERRADDR			0x3018	/* rw */
709e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_ERRMISC			0x3020	/* rw */
710e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_ERRFR_NS			0x3100	/* ro */
711e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_ERRCTLR_NS			0x3108	/* rw */
712e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_ERRSTATUS_NS			0x3110	/* w1c */
713e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_ERRADDR_NS			0x3118	/* rw */
714e3572eb6SAleksandr Rybalko #define	POR_CXG_HA_ERRMISC_NS			0x3120	/* rw */
715e3572eb6SAleksandr Rybalko 
716e3572eb6SAleksandr Rybalko /* CXRA registers */
717e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_NODE_INFO			0x0000	/* ro */
718e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_CHILD_INFO			0x0080	/* ro */
719e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SECURE_REGISTER_GROUPS_OVERRIDE 0x0980 /* rw */
720e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_UNIT_INFO			0x0900	/* ro */
721e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_CFG_CTL			0x0a00	/* rw */
722e3572eb6SAleksandr Rybalko #define		EN_CXLA_PMUCMD_PROP			(1 << 8)
723e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_AUX_CTL			0x0a08	/* rw */
724e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_ADDR_REGION_REG0		0x0da8	/* rw */
725e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_ADDR_REGION_REG1		0x0db0	/* rw */
726e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_ADDR_REGION_REG2		0x0db8	/* rw */
727e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_ADDR_REGION_REG3		0x0dc0	/* rw */
728e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_ADDR_REGION_REG4		0x0dc8	/* rw */
729e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_ADDR_REGION_REG5		0x0dd0	/* rw */
730e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_ADDR_REGION_REG6		0x0dd8	/* rw */
731e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_ADDR_REGION_REG7		0x0de0	/* rw */
732e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_MEM_REGION0_LIMIT_REG	0x0e00	/* rw */
733e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_MEM_REGION1_LIMIT_REG	0x0e08	/* rw */
734e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_MEM_REGION2_LIMIT_REG	0x0e10	/* rw */
735e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_MEM_REGION3_LIMIT_REG	0x0e18	/* rw */
736e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_MEM_REGION4_LIMIT_REG	0x0e20	/* rw */
737e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_MEM_REGION5_LIMIT_REG	0x0e28	/* rw */
738e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_MEM_REGION6_LIMIT_REG	0x0e30	/* rw */
739e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_SAM_MEM_REGION7_LIMIT_REG	0x0e38	/* rw */
740e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_AGENTID_TO_LINKID_REG0	0x0e60	/* rw */
741e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_AGENTID_TO_LINKID_REG1	0x0e68	/* rw */
742e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_AGENTID_TO_LINKID_REG2	0x0e70	/* rw */
743e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_AGENTID_TO_LINKID_REG3	0x0e78	/* rw */
744e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_AGENTID_TO_LINKID_REG4	0x0e80	/* rw */
745e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_AGENTID_TO_LINKID_REG5	0x0e88	/* rw */
746e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_AGENTID_TO_LINKID_REG6	0x0e90	/* rw */
747e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_AGENTID_TO_LINKID_REG7	0x0e98	/* rw */
748e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNF_LDID_TO_RAID_REG0	0x0ea0	/* rw */
749e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNF_LDID_TO_RAID_REG1	0x0ea8	/* rw */
750e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNF_LDID_TO_RAID_REG2	0x0eb0	/* rw */
751e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNF_LDID_TO_RAID_REG3	0x0eb8	/* rw */
752e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNF_LDID_TO_RAID_REG4	0x0ec0	/* rw */
753e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNF_LDID_TO_RAID_REG5	0x0ec8	/* rw */
754e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNF_LDID_TO_RAID_REG6	0x0ed0	/* rw */
755e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNF_LDID_TO_RAID_REG7	0x0ed8	/* rw */
756e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNI_LDID_TO_RAID_REG0	0x0ee0	/* rw */
757e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNI_LDID_TO_RAID_REG1	0x0ee8	/* rw */
758e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNI_LDID_TO_RAID_REG2	0x0ef0	/* rw */
759e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNI_LDID_TO_RAID_REG3	0x0ef8	/* rw */
760e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RND_LDID_TO_RAID_REG0	0x0f00	/* rw */
761e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RND_LDID_TO_RAID_REG1	0x0f08	/* rw */
762e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RND_LDID_TO_RAID_REG2	0x0f10	/* rw */
763e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RND_LDID_TO_RAID_REG3	0x0f18	/* rw */
764e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_AGENTID_TO_LINKID_VAL	0x0f20	/* rw */
765e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNF_LDID_TO_RAID_VAL		0x0f28	/* rw */
766e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RNI_LDID_TO_RAID_VAL		0x0f30	/* rw */
767e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_RND_LDID_TO_RAID_VAL		0x0f38	/* rw */
768e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_PMU_EVENT_SEL		0x2000	/* rw */
769e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_CXPRTCL_LINK0_CTL		0x1000	/* rw */
770e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_CXPRTCL_LINK0_STATUS		0x1008	/* ro */
771e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_CXPRTCL_LINK1_CTL		0x1010	/* rw */
772e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_CXPRTCL_LINK1_STATUS		0x1018	/* ro */
773e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_CXPRTCL_LINK2_CTL		0x1020	/* rw */
774e3572eb6SAleksandr Rybalko #define	POR_CXG_RA_CXPRTCL_LINK2_STATUS		0x1028	/* ro */
775e3572eb6SAleksandr Rybalko 
776e3572eb6SAleksandr Rybalko /* CXLA registers */
777e3572eb6SAleksandr Rybalko #define	POR_CXLA_NODE_INFO			0x0000	/* ro */
778e3572eb6SAleksandr Rybalko #define	POR_CXLA_CHILD_INFO			0x0080	/* ro */
779e3572eb6SAleksandr Rybalko #define	POR_CXLA_SECURE_REGISTER_GROUPS_OVERRIDE 0x0980	/* rw */
780e3572eb6SAleksandr Rybalko #define	POR_CXLA_UNIT_INFO			0x0900	/* ro */
781e3572eb6SAleksandr Rybalko #define	POR_CXLA_AUX_CTL			0x0a08	/* rw */
782e3572eb6SAleksandr Rybalko #define	POR_CXLA_CCIX_PROP_CAPABILITIES		0x0c00	/* ro */
783e3572eb6SAleksandr Rybalko #define	POR_CXLA_CCIX_PROP_CONFIGURED		0x0c08	/* rw */
784e3572eb6SAleksandr Rybalko #define	POR_CXLA_TX_CXS_ATTR_CAPABILITIES	0x0c10	/* ro */
785e3572eb6SAleksandr Rybalko #define	POR_CXLA_RX_CXS_ATTR_CAPABILITIES	0x0c18	/* ro */
786e3572eb6SAleksandr Rybalko #define	POR_CXLA_AGENTID_TO_LINKID_REG0		0x0c30	/* rw */
787e3572eb6SAleksandr Rybalko #define	POR_CXLA_AGENTID_TO_LINKID_REG1		0x0c38	/* rw */
788e3572eb6SAleksandr Rybalko #define	POR_CXLA_AGENTID_TO_LINKID_REG2		0x0c40	/* rw */
789e3572eb6SAleksandr Rybalko #define	POR_CXLA_AGENTID_TO_LINKID_REG3		0x0c48	/* rw */
790e3572eb6SAleksandr Rybalko #define	POR_CXLA_AGENTID_TO_LINKID_REG4		0x0c50	/* rw */
791e3572eb6SAleksandr Rybalko #define	POR_CXLA_AGENTID_TO_LINKID_REG5		0x0c58	/* rw */
792e3572eb6SAleksandr Rybalko #define	POR_CXLA_AGENTID_TO_LINKID_REG6		0x0c60	/* rw */
793e3572eb6SAleksandr Rybalko #define	POR_CXLA_AGENTID_TO_LINKID_REG7		0x0c68	/* rw */
794e3572eb6SAleksandr Rybalko #define	POR_CXLA_AGENTID_TO_LINKID_VAL		0x0c70	/* rw */
795e3572eb6SAleksandr Rybalko #define	POR_CXLA_LINKID_TO_PCIE_BUS_NUM		0x0c78	/* rw */
796e3572eb6SAleksandr Rybalko #define	POR_CXLA_PERMSG_PYLD_0_63		0x0d00	/* rw */
797e3572eb6SAleksandr Rybalko #define	POR_CXLA_PERMSG_PYLD_64_127		0x0d08	/* rw */
798e3572eb6SAleksandr Rybalko #define	POR_CXLA_PERMSG_PYLD_128_191		0x0d10	/* rw */
799e3572eb6SAleksandr Rybalko #define	POR_CXLA_PERMSG_PYLD_192_255		0x0d18	/* rw */
800e3572eb6SAleksandr Rybalko #define	POR_CXLA_PERMSG_CTL			0x0d20	/* rw */
801e3572eb6SAleksandr Rybalko #define	POR_CXLA_ERR_AGENT_ID			0x0d28	/* rw */
802e3572eb6SAleksandr Rybalko #define	POR_CXLA_PMU_EVENT_SEL			0x2000	/* rw */
803e3572eb6SAleksandr Rybalko #define	POR_CXLA_PMU_CONFIG			0x2210	/* rw */
804e3572eb6SAleksandr Rybalko #define	POR_CXLA_PMEVCNT			0x2220	/* rw */
805e3572eb6SAleksandr Rybalko #define	POR_CXLA_PMEVCNTSR			0x2240	/* rw */
806e3572eb6SAleksandr Rybalko 
807e3572eb6SAleksandr Rybalko #endif	/* _MACHINE_CMN600_REG_H_ */
808