1*4b8b8d74SJaiprakash Singh #ifndef __ODY_CSRS_TAD_CMN_H__
2*4b8b8d74SJaiprakash Singh #define __ODY_CSRS_TAD_CMN_H__
3*4b8b8d74SJaiprakash Singh /* This file is auto-generated. Do not edit */
4*4b8b8d74SJaiprakash Singh
5*4b8b8d74SJaiprakash Singh /***********************license start***********************************
6*4b8b8d74SJaiprakash Singh * Copyright (C) 2021-2026 Marvell.
7*4b8b8d74SJaiprakash Singh * SPDX-License-Identifier: BSD-3-Clause
8*4b8b8d74SJaiprakash Singh * https://spdx.org/licenses
9*4b8b8d74SJaiprakash Singh ***********************license end**************************************/
10*4b8b8d74SJaiprakash Singh
11*4b8b8d74SJaiprakash Singh
12*4b8b8d74SJaiprakash Singh /**
13*4b8b8d74SJaiprakash Singh * @file
14*4b8b8d74SJaiprakash Singh *
15*4b8b8d74SJaiprakash Singh * Configuration and status register (CSR) address and type definitions for
16*4b8b8d74SJaiprakash Singh * TAD_CMN.
17*4b8b8d74SJaiprakash Singh *
18*4b8b8d74SJaiprakash Singh * This file is auto generated. Do not edit.
19*4b8b8d74SJaiprakash Singh *
20*4b8b8d74SJaiprakash Singh */
21*4b8b8d74SJaiprakash Singh
22*4b8b8d74SJaiprakash Singh /**
23*4b8b8d74SJaiprakash Singh * Enumeration tad_cmn_bar_e
24*4b8b8d74SJaiprakash Singh *
25*4b8b8d74SJaiprakash Singh * TAD Common Base Address Register Enumeration
26*4b8b8d74SJaiprakash Singh * Enumerates the base address registers.
27*4b8b8d74SJaiprakash Singh */
28*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_BAR_E_TAD_CMN_PF_BAR0 (0x87e053000000ll)
29*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_BAR_E_TAD_CMN_PF_BAR0_SIZE 0x100000ull
30*4b8b8d74SJaiprakash Singh
31*4b8b8d74SJaiprakash Singh /**
32*4b8b8d74SJaiprakash Singh * Enumeration tad_cmn_mpam_err_e
33*4b8b8d74SJaiprakash Singh *
34*4b8b8d74SJaiprakash Singh * MPAM Error Code Enumeration
35*4b8b8d74SJaiprakash Singh * Error codes to be reported in MPAMF_ESR (if TAD_CMN_MPAMF_IDR_NS/S[HAS_ESR]==1)
36*4b8b8d74SJaiprakash Singh */
37*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_INTPARTID_RANGE (6)
38*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_MONITOR_RANGE (5)
39*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_MSMONCFG_ID_RANGE (3)
40*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_NO_ERROR (0)
41*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_PARTID_SEL_RANGE (1)
42*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_REQ_PARTID_RANGE (2)
43*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_REQ_PMG_RANGE (4)
44*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_RESERVED_ERRCODE_12 (0xc)
45*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_RESERVED_ERRCODE_13 (0xd)
46*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_RESERVED_ERRCODE_14 (0xe)
47*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_RESERVED_ERRCODE_15 (0xf)
48*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_RIS_NO_CONTROL (9)
49*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_RIS_NO_MONITOR (0xb)
50*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_UNDEFINED_RIS_MON_SEL (0xa)
51*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_UNDEFINED_RIS_PART_SEL (8)
52*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_ERR_E_UNEXPECTED_INTERNAL (7)
53*4b8b8d74SJaiprakash Singh
54*4b8b8d74SJaiprakash Singh /**
55*4b8b8d74SJaiprakash Singh * Enumeration tad_cmn_mpam_ris_e
56*4b8b8d74SJaiprakash Singh *
57*4b8b8d74SJaiprakash Singh * MPAM Resource Instance Enumeration
58*4b8b8d74SJaiprakash Singh * Resource instances
59*4b8b8d74SJaiprakash Singh */
60*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_RIS_E_DTG (2)
61*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_RIS_E_LTG (1)
62*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAM_RIS_E_MSC (0)
63*4b8b8d74SJaiprakash Singh
64*4b8b8d74SJaiprakash Singh /**
65*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_cache_flush
66*4b8b8d74SJaiprakash Singh *
67*4b8b8d74SJaiprakash Singh * TAD Common Cache Flush Register
68*4b8b8d74SJaiprakash Singh * Controls TAD cache flush behavior.
69*4b8b8d74SJaiprakash Singh */
70*4b8b8d74SJaiprakash Singh union ody_tad_cmn_cache_flush {
71*4b8b8d74SJaiprakash Singh uint64_t u;
72*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_cache_flush_s {
73*4b8b8d74SJaiprakash Singh uint64_t start : 1;
74*4b8b8d74SJaiprakash Singh uint64_t flush_type : 2;
75*4b8b8d74SJaiprakash Singh uint64_t reserved_3_20 : 18;
76*4b8b8d74SJaiprakash Singh uint64_t noltg : 1;
77*4b8b8d74SJaiprakash Singh uint64_t nodtg : 1;
78*4b8b8d74SJaiprakash Singh uint64_t reserved_23_63 : 41;
79*4b8b8d74SJaiprakash Singh } s;
80*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_cache_flush_s cn; */
81*4b8b8d74SJaiprakash Singh };
82*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_cache_flush ody_tad_cmn_cache_flush_t;
83*4b8b8d74SJaiprakash Singh
84*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_CACHE_FLUSH ODY_TAD_CMN_CACHE_FLUSH_FUNC()
85*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_CACHE_FLUSH_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_CACHE_FLUSH_FUNC(void)86*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_CACHE_FLUSH_FUNC(void)
87*4b8b8d74SJaiprakash Singh {
88*4b8b8d74SJaiprakash Singh return 0x87e053000010ll;
89*4b8b8d74SJaiprakash Singh }
90*4b8b8d74SJaiprakash Singh
91*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_CACHE_FLUSH ody_tad_cmn_cache_flush_t
92*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_CACHE_FLUSH CSR_TYPE_RSL
93*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_CACHE_FLUSH "TAD_CMN_CACHE_FLUSH"
94*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_CACHE_FLUSH 0x0 /* PF_BAR0 */
95*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_CACHE_FLUSH 0
96*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_CACHE_FLUSH -1, -1, -1, -1
97*4b8b8d74SJaiprakash Singh
98*4b8b8d74SJaiprakash Singh /**
99*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_cbusy
100*4b8b8d74SJaiprakash Singh *
101*4b8b8d74SJaiprakash Singh * TAD Common CBUSY Control Register
102*4b8b8d74SJaiprakash Singh * Controls CBUSY behavior.
103*4b8b8d74SJaiprakash Singh */
104*4b8b8d74SJaiprakash Singh union ody_tad_cmn_cbusy {
105*4b8b8d74SJaiprakash Singh uint64_t u;
106*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_cbusy_s {
107*4b8b8d74SJaiprakash Singh uint64_t tad_cbusy_en : 2;
108*4b8b8d74SJaiprakash Singh uint64_t ddr_cbusy_en : 2;
109*4b8b8d74SJaiprakash Singh uint64_t tad_cbusy0_free_trsh : 7;
110*4b8b8d74SJaiprakash Singh uint64_t tad_cbusy0_busy_trsh : 7;
111*4b8b8d74SJaiprakash Singh uint64_t tad_cbusy1_free_trsh : 7;
112*4b8b8d74SJaiprakash Singh uint64_t tad_cbusy1_busy_trsh : 7;
113*4b8b8d74SJaiprakash Singh uint64_t ddr_timeout : 32;
114*4b8b8d74SJaiprakash Singh } s;
115*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_cbusy_s cn; */
116*4b8b8d74SJaiprakash Singh };
117*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_cbusy ody_tad_cmn_cbusy_t;
118*4b8b8d74SJaiprakash Singh
119*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_CBUSY ODY_TAD_CMN_CBUSY_FUNC()
120*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_CBUSY_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_CBUSY_FUNC(void)121*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_CBUSY_FUNC(void)
122*4b8b8d74SJaiprakash Singh {
123*4b8b8d74SJaiprakash Singh return 0x87e053000020ll;
124*4b8b8d74SJaiprakash Singh }
125*4b8b8d74SJaiprakash Singh
126*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_CBUSY ody_tad_cmn_cbusy_t
127*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_CBUSY CSR_TYPE_RSL
128*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_CBUSY "TAD_CMN_CBUSY"
129*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_CBUSY 0x0 /* PF_BAR0 */
130*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_CBUSY 0
131*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_CBUSY -1, -1, -1, -1
132*4b8b8d74SJaiprakash Singh
133*4b8b8d74SJaiprakash Singh /**
134*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_const
135*4b8b8d74SJaiprakash Singh *
136*4b8b8d74SJaiprakash Singh * TAD Constants Register
137*4b8b8d74SJaiprakash Singh * This register contains TAD constants for software discovery.
138*4b8b8d74SJaiprakash Singh */
139*4b8b8d74SJaiprakash Singh union ody_tad_cmn_const {
140*4b8b8d74SJaiprakash Singh uint64_t u;
141*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_const_s {
142*4b8b8d74SJaiprakash Singh uint64_t num_cols : 4;
143*4b8b8d74SJaiprakash Singh uint64_t num_rows : 4;
144*4b8b8d74SJaiprakash Singh uint64_t num_tads : 8;
145*4b8b8d74SJaiprakash Singh uint64_t ltgsets : 12;
146*4b8b8d74SJaiprakash Singh uint64_t ltgways : 8;
147*4b8b8d74SJaiprakash Singh uint64_t dtgsets : 12;
148*4b8b8d74SJaiprakash Singh uint64_t dtgways : 8;
149*4b8b8d74SJaiprakash Singh uint64_t reserved_56_63 : 8;
150*4b8b8d74SJaiprakash Singh } s;
151*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_const_s cn; */
152*4b8b8d74SJaiprakash Singh };
153*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_const ody_tad_cmn_const_t;
154*4b8b8d74SJaiprakash Singh
155*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_CONST ODY_TAD_CMN_CONST_FUNC()
156*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_CONST_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_CONST_FUNC(void)157*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_CONST_FUNC(void)
158*4b8b8d74SJaiprakash Singh {
159*4b8b8d74SJaiprakash Singh return 0x87e053000028ll;
160*4b8b8d74SJaiprakash Singh }
161*4b8b8d74SJaiprakash Singh
162*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_CONST ody_tad_cmn_const_t
163*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_CONST CSR_TYPE_RSL
164*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_CONST "TAD_CMN_CONST"
165*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_CONST 0x0 /* PF_BAR0 */
166*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_CONST 0
167*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_CONST -1, -1, -1, -1
168*4b8b8d74SJaiprakash Singh
169*4b8b8d74SJaiprakash Singh /**
170*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_ctl
171*4b8b8d74SJaiprakash Singh *
172*4b8b8d74SJaiprakash Singh * TAD Common Control Register
173*4b8b8d74SJaiprakash Singh * Controls TAD behavior.
174*4b8b8d74SJaiprakash Singh */
175*4b8b8d74SJaiprakash Singh union ody_tad_cmn_ctl {
176*4b8b8d74SJaiprakash Singh uint64_t u;
177*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_ctl_s {
178*4b8b8d74SJaiprakash Singh uint64_t frcnalc : 1;
179*4b8b8d74SJaiprakash Singh uint64_t disdwt : 1;
180*4b8b8d74SJaiprakash Singh uint64_t disdct : 1;
181*4b8b8d74SJaiprakash Singh uint64_t disdmt : 1;
182*4b8b8d74SJaiprakash Singh uint64_t dispsn : 1;
183*4b8b8d74SJaiprakash Singh uint64_t discor : 1;
184*4b8b8d74SJaiprakash Singh uint64_t reserved_6_7 : 2;
185*4b8b8d74SJaiprakash Singh uint64_t maxifb : 5;
186*4b8b8d74SJaiprakash Singh uint64_t dismultmpam : 1;
187*4b8b8d74SJaiprakash Singh uint64_t disearlydq : 1;
188*4b8b8d74SJaiprakash Singh uint64_t iobchiso : 1;
189*4b8b8d74SJaiprakash Singh uint64_t distagscrub : 1;
190*4b8b8d74SJaiprakash Singh uint64_t disexmsysevent : 1;
191*4b8b8d74SJaiprakash Singh uint64_t enaexmpocevent : 1;
192*4b8b8d74SJaiprakash Singh uint64_t row_bcst_thresh : 4;
193*4b8b8d74SJaiprakash Singh uint64_t mpam_upd_wr : 1;
194*4b8b8d74SJaiprakash Singh uint64_t reserved_24_44 : 21;
195*4b8b8d74SJaiprakash Singh uint64_t omon_cclk_dis : 1;
196*4b8b8d74SJaiprakash Singh uint64_t chn_cclk_dis : 1;
197*4b8b8d74SJaiprakash Singh uint64_t mn_cclk_dis : 1;
198*4b8b8d74SJaiprakash Singh uint64_t req_cclk_dis : 1;
199*4b8b8d74SJaiprakash Singh uint64_t sam_cclk_dis : 1;
200*4b8b8d74SJaiprakash Singh uint64_t lnk_rx_cclk_dis : 1;
201*4b8b8d74SJaiprakash Singh uint64_t lnk_tx_cclk_dis : 1;
202*4b8b8d74SJaiprakash Singh uint64_t csr_cclk_dis : 1;
203*4b8b8d74SJaiprakash Singh uint64_t rxtbl_cclk_dis : 1;
204*4b8b8d74SJaiprakash Singh uint64_t txreq_cclk_dis : 1;
205*4b8b8d74SJaiprakash Singh uint64_t txsnp_cclk_dis : 1;
206*4b8b8d74SJaiprakash Singh uint64_t snp_cclk_dis : 1;
207*4b8b8d74SJaiprakash Singh uint64_t rsp_cclk_dis : 1;
208*4b8b8d74SJaiprakash Singh uint64_t dat_cclk_dis : 1;
209*4b8b8d74SJaiprakash Singh uint64_t ctldat_cclk_dis : 1;
210*4b8b8d74SJaiprakash Singh uint64_t dtg_cclk_dis : 1;
211*4b8b8d74SJaiprakash Singh uint64_t ltg_cclk_dis : 1;
212*4b8b8d74SJaiprakash Singh uint64_t tag_cclk_dis : 1;
213*4b8b8d74SJaiprakash Singh uint64_t cclk_dis : 1;
214*4b8b8d74SJaiprakash Singh } s;
215*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_ctl_cn {
216*4b8b8d74SJaiprakash Singh uint64_t frcnalc : 1;
217*4b8b8d74SJaiprakash Singh uint64_t disdwt : 1;
218*4b8b8d74SJaiprakash Singh uint64_t disdct : 1;
219*4b8b8d74SJaiprakash Singh uint64_t disdmt : 1;
220*4b8b8d74SJaiprakash Singh uint64_t dispsn : 1;
221*4b8b8d74SJaiprakash Singh uint64_t discor : 1;
222*4b8b8d74SJaiprakash Singh uint64_t reserved_6 : 1;
223*4b8b8d74SJaiprakash Singh uint64_t reserved_7 : 1;
224*4b8b8d74SJaiprakash Singh uint64_t maxifb : 5;
225*4b8b8d74SJaiprakash Singh uint64_t dismultmpam : 1;
226*4b8b8d74SJaiprakash Singh uint64_t disearlydq : 1;
227*4b8b8d74SJaiprakash Singh uint64_t iobchiso : 1;
228*4b8b8d74SJaiprakash Singh uint64_t distagscrub : 1;
229*4b8b8d74SJaiprakash Singh uint64_t disexmsysevent : 1;
230*4b8b8d74SJaiprakash Singh uint64_t enaexmpocevent : 1;
231*4b8b8d74SJaiprakash Singh uint64_t row_bcst_thresh : 4;
232*4b8b8d74SJaiprakash Singh uint64_t mpam_upd_wr : 1;
233*4b8b8d74SJaiprakash Singh uint64_t reserved_24_44 : 21;
234*4b8b8d74SJaiprakash Singh uint64_t omon_cclk_dis : 1;
235*4b8b8d74SJaiprakash Singh uint64_t chn_cclk_dis : 1;
236*4b8b8d74SJaiprakash Singh uint64_t mn_cclk_dis : 1;
237*4b8b8d74SJaiprakash Singh uint64_t req_cclk_dis : 1;
238*4b8b8d74SJaiprakash Singh uint64_t sam_cclk_dis : 1;
239*4b8b8d74SJaiprakash Singh uint64_t lnk_rx_cclk_dis : 1;
240*4b8b8d74SJaiprakash Singh uint64_t lnk_tx_cclk_dis : 1;
241*4b8b8d74SJaiprakash Singh uint64_t csr_cclk_dis : 1;
242*4b8b8d74SJaiprakash Singh uint64_t rxtbl_cclk_dis : 1;
243*4b8b8d74SJaiprakash Singh uint64_t txreq_cclk_dis : 1;
244*4b8b8d74SJaiprakash Singh uint64_t txsnp_cclk_dis : 1;
245*4b8b8d74SJaiprakash Singh uint64_t snp_cclk_dis : 1;
246*4b8b8d74SJaiprakash Singh uint64_t rsp_cclk_dis : 1;
247*4b8b8d74SJaiprakash Singh uint64_t dat_cclk_dis : 1;
248*4b8b8d74SJaiprakash Singh uint64_t ctldat_cclk_dis : 1;
249*4b8b8d74SJaiprakash Singh uint64_t dtg_cclk_dis : 1;
250*4b8b8d74SJaiprakash Singh uint64_t ltg_cclk_dis : 1;
251*4b8b8d74SJaiprakash Singh uint64_t tag_cclk_dis : 1;
252*4b8b8d74SJaiprakash Singh uint64_t cclk_dis : 1;
253*4b8b8d74SJaiprakash Singh } cn;
254*4b8b8d74SJaiprakash Singh };
255*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_ctl ody_tad_cmn_ctl_t;
256*4b8b8d74SJaiprakash Singh
257*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_CTL ODY_TAD_CMN_CTL_FUNC()
258*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_CTL_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_CTL_FUNC(void)259*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_CTL_FUNC(void)
260*4b8b8d74SJaiprakash Singh {
261*4b8b8d74SJaiprakash Singh return 0x87e053000008ll;
262*4b8b8d74SJaiprakash Singh }
263*4b8b8d74SJaiprakash Singh
264*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_CTL ody_tad_cmn_ctl_t
265*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_CTL CSR_TYPE_RSL
266*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_CTL "TAD_CMN_CTL"
267*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_CTL 0x0 /* PF_BAR0 */
268*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_CTL 0
269*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_CTL -1, -1, -1, -1
270*4b8b8d74SJaiprakash Singh
271*4b8b8d74SJaiprakash Singh /**
272*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mn_ctl
273*4b8b8d74SJaiprakash Singh *
274*4b8b8d74SJaiprakash Singh * TAD Common Miscellaneous Node Control Register
275*4b8b8d74SJaiprakash Singh * Controls TAD MN (DVMOps) settings.
276*4b8b8d74SJaiprakash Singh */
277*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mn_ctl {
278*4b8b8d74SJaiprakash Singh uint64_t u;
279*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mn_ctl_s {
280*4b8b8d74SJaiprakash Singh uint64_t reserved_0_2 : 3;
281*4b8b8d74SJaiprakash Singh uint64_t dev_ncb : 3;
282*4b8b8d74SJaiprakash Singh uint64_t comp_qos : 4;
283*4b8b8d74SJaiprakash Singh uint64_t snp_qos : 4;
284*4b8b8d74SJaiprakash Singh uint64_t iob_has_smmu : 8;
285*4b8b8d74SJaiprakash Singh uint64_t reserved_22_63 : 42;
286*4b8b8d74SJaiprakash Singh } s;
287*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mn_ctl_s cn; */
288*4b8b8d74SJaiprakash Singh };
289*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mn_ctl ody_tad_cmn_mn_ctl_t;
290*4b8b8d74SJaiprakash Singh
291*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MN_CTL ODY_TAD_CMN_MN_CTL_FUNC()
292*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MN_CTL_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MN_CTL_FUNC(void)293*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MN_CTL_FUNC(void)
294*4b8b8d74SJaiprakash Singh {
295*4b8b8d74SJaiprakash Singh return 0x87e053000030ll;
296*4b8b8d74SJaiprakash Singh }
297*4b8b8d74SJaiprakash Singh
298*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MN_CTL ody_tad_cmn_mn_ctl_t
299*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MN_CTL CSR_TYPE_RSL
300*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MN_CTL "TAD_CMN_MN_CTL"
301*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MN_CTL 0x0 /* PF_BAR0 */
302*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MN_CTL 0
303*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MN_CTL -1, -1, -1, -1
304*4b8b8d74SJaiprakash Singh
305*4b8b8d74SJaiprakash Singh /**
306*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamcfg_cpbm_ns
307*4b8b8d74SJaiprakash Singh *
308*4b8b8d74SJaiprakash Singh * MPAM Cache Portion Bitmap Partition Configuration Register
309*4b8b8d74SJaiprakash Singh * The TAD_CMN_MPAMCFG_CPBM register is a read-write register that configures the cache
310*4b8b8d74SJaiprakash Singh * portions that a
311*4b8b8d74SJaiprakash Singh * PARTID is allowed to allocate. After setting TAD_CMN_MPAMCFG_PART_SEL with a PARTID, software
312*4b8b8d74SJaiprakash Singh * (usually a hypervisor) writes to the TAD_CMN_MPAMCFG_CPBM register to configure
313*4b8b8d74SJaiprakash Singh * which cache portions
314*4b8b8d74SJaiprakash Singh * the PARTID is allowed to allocate.
315*4b8b8d74SJaiprakash Singh * TAD_CMN_MPAMCFG_CPBM_NS controls the cache portions for the
316*4b8b8d74SJaiprakash Singh * Non-secure PARTID selected by the Non-secure instance of TAD_CMN_MPAMCFG_PART_SEL.
317*4b8b8d74SJaiprakash Singh */
318*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamcfg_cpbm_ns {
319*4b8b8d74SJaiprakash Singh uint64_t u;
320*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamcfg_cpbm_ns_s {
321*4b8b8d74SJaiprakash Singh uint64_t cpbm : 18;
322*4b8b8d74SJaiprakash Singh uint64_t reserved_18_63 : 46;
323*4b8b8d74SJaiprakash Singh } s;
324*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamcfg_cpbm_ns_s cn; */
325*4b8b8d74SJaiprakash Singh };
326*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamcfg_cpbm_ns ody_tad_cmn_mpamcfg_cpbm_ns_t;
327*4b8b8d74SJaiprakash Singh
328*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMCFG_CPBM_NS ODY_TAD_CMN_MPAMCFG_CPBM_NS_FUNC()
329*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_CPBM_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMCFG_CPBM_NS_FUNC(void)330*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_CPBM_NS_FUNC(void)
331*4b8b8d74SJaiprakash Singh {
332*4b8b8d74SJaiprakash Singh return 0x87e053011000ll;
333*4b8b8d74SJaiprakash Singh }
334*4b8b8d74SJaiprakash Singh
335*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMCFG_CPBM_NS ody_tad_cmn_mpamcfg_cpbm_ns_t
336*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMCFG_CPBM_NS CSR_TYPE_RSL
337*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMCFG_CPBM_NS "TAD_CMN_MPAMCFG_CPBM_NS"
338*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMCFG_CPBM_NS 0x0 /* PF_BAR0 */
339*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMCFG_CPBM_NS 0
340*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMCFG_CPBM_NS -1, -1, -1, -1
341*4b8b8d74SJaiprakash Singh
342*4b8b8d74SJaiprakash Singh /**
343*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamcfg_cpbm_s
344*4b8b8d74SJaiprakash Singh *
345*4b8b8d74SJaiprakash Singh * Secure MPAM Cache Portion Bitmap Partition Configuration Register
346*4b8b8d74SJaiprakash Singh * The TAD_CMN_MPAMCFG_CPBM register is a read-write register that configures the cache
347*4b8b8d74SJaiprakash Singh * portions that a
348*4b8b8d74SJaiprakash Singh * PARTID is allowed to allocate. After setting TAD_CMN_MPAMCFG_PART_SEL with a PARTID, software
349*4b8b8d74SJaiprakash Singh * (usually a hypervisor) writes to the TAD_CMN_MPAMCFG_CPBM register to configure
350*4b8b8d74SJaiprakash Singh * which cache portions
351*4b8b8d74SJaiprakash Singh * the PARTID is allowed to allocate.
352*4b8b8d74SJaiprakash Singh * TAD_CMN_MPAMCFG_CPBM_S controls cache portions for the Secure PARTID selected by the Secure
353*4b8b8d74SJaiprakash Singh * instance of TAD_CMN_MPAMCFG_PART_SEL.
354*4b8b8d74SJaiprakash Singh */
355*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamcfg_cpbm_s {
356*4b8b8d74SJaiprakash Singh uint64_t u;
357*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamcfg_cpbm_s_s {
358*4b8b8d74SJaiprakash Singh uint64_t cpbm : 18;
359*4b8b8d74SJaiprakash Singh uint64_t reserved_18_63 : 46;
360*4b8b8d74SJaiprakash Singh } s;
361*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamcfg_cpbm_s_s cn; */
362*4b8b8d74SJaiprakash Singh };
363*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamcfg_cpbm_s ody_tad_cmn_mpamcfg_cpbm_s_t;
364*4b8b8d74SJaiprakash Singh
365*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMCFG_CPBM_S ODY_TAD_CMN_MPAMCFG_CPBM_S_FUNC()
366*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_CPBM_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMCFG_CPBM_S_FUNC(void)367*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_CPBM_S_FUNC(void)
368*4b8b8d74SJaiprakash Singh {
369*4b8b8d74SJaiprakash Singh return 0x87e053021000ll;
370*4b8b8d74SJaiprakash Singh }
371*4b8b8d74SJaiprakash Singh
372*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMCFG_CPBM_S ody_tad_cmn_mpamcfg_cpbm_s_t
373*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMCFG_CPBM_S CSR_TYPE_RSL
374*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMCFG_CPBM_S "TAD_CMN_MPAMCFG_CPBM_S"
375*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMCFG_CPBM_S 0x0 /* PF_BAR0 */
376*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMCFG_CPBM_S 0
377*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMCFG_CPBM_S -1, -1, -1, -1
378*4b8b8d74SJaiprakash Singh
379*4b8b8d74SJaiprakash Singh /**
380*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamcfg_impl_pri_ns
381*4b8b8d74SJaiprakash Singh *
382*4b8b8d74SJaiprakash Singh * MPAM Implementation-Specific Optional Priority Partitioning Configuration Register
383*4b8b8d74SJaiprakash Singh * Controls the MPAM priority partitioning features of this MSC.
384*4b8b8d74SJaiprakash Singh */
385*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamcfg_impl_pri_ns {
386*4b8b8d74SJaiprakash Singh uint64_t u;
387*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamcfg_impl_pri_ns_s {
388*4b8b8d74SJaiprakash Singh uint64_t mpam_qos : 1;
389*4b8b8d74SJaiprakash Singh uint64_t reserved_1_63 : 63;
390*4b8b8d74SJaiprakash Singh } s;
391*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamcfg_impl_pri_ns_s cn; */
392*4b8b8d74SJaiprakash Singh };
393*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamcfg_impl_pri_ns ody_tad_cmn_mpamcfg_impl_pri_ns_t;
394*4b8b8d74SJaiprakash Singh
395*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMCFG_IMPL_PRI_NS ODY_TAD_CMN_MPAMCFG_IMPL_PRI_NS_FUNC()
396*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_IMPL_PRI_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMCFG_IMPL_PRI_NS_FUNC(void)397*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_IMPL_PRI_NS_FUNC(void)
398*4b8b8d74SJaiprakash Singh {
399*4b8b8d74SJaiprakash Singh return 0x87e053013000ll;
400*4b8b8d74SJaiprakash Singh }
401*4b8b8d74SJaiprakash Singh
402*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_NS ody_tad_cmn_mpamcfg_impl_pri_ns_t
403*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_NS CSR_TYPE_RSL
404*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_NS "TAD_CMN_MPAMCFG_IMPL_PRI_NS"
405*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_NS 0x0 /* PF_BAR0 */
406*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_NS 0
407*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_NS -1, -1, -1, -1
408*4b8b8d74SJaiprakash Singh
409*4b8b8d74SJaiprakash Singh /**
410*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamcfg_impl_pri_s
411*4b8b8d74SJaiprakash Singh *
412*4b8b8d74SJaiprakash Singh * MPAM Implementation-Specific Optional Priority Partitioning Configuration Register
413*4b8b8d74SJaiprakash Singh * Controls the MPAM priority partitioning features of this MSC.
414*4b8b8d74SJaiprakash Singh */
415*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamcfg_impl_pri_s {
416*4b8b8d74SJaiprakash Singh uint64_t u;
417*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamcfg_impl_pri_s_s {
418*4b8b8d74SJaiprakash Singh uint64_t mpam_qos : 1;
419*4b8b8d74SJaiprakash Singh uint64_t reserved_1_63 : 63;
420*4b8b8d74SJaiprakash Singh } s;
421*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamcfg_impl_pri_s_s cn; */
422*4b8b8d74SJaiprakash Singh };
423*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamcfg_impl_pri_s ody_tad_cmn_mpamcfg_impl_pri_s_t;
424*4b8b8d74SJaiprakash Singh
425*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMCFG_IMPL_PRI_S ODY_TAD_CMN_MPAMCFG_IMPL_PRI_S_FUNC()
426*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_IMPL_PRI_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMCFG_IMPL_PRI_S_FUNC(void)427*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_IMPL_PRI_S_FUNC(void)
428*4b8b8d74SJaiprakash Singh {
429*4b8b8d74SJaiprakash Singh return 0x87e053023000ll;
430*4b8b8d74SJaiprakash Singh }
431*4b8b8d74SJaiprakash Singh
432*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_S ody_tad_cmn_mpamcfg_impl_pri_s_t
433*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_S CSR_TYPE_RSL
434*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_S "TAD_CMN_MPAMCFG_IMPL_PRI_S"
435*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_S 0x0 /* PF_BAR0 */
436*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_S 0
437*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMCFG_IMPL_PRI_S -1, -1, -1, -1
438*4b8b8d74SJaiprakash Singh
439*4b8b8d74SJaiprakash Singh /**
440*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamcfg_part_sel_ns
441*4b8b8d74SJaiprakash Singh *
442*4b8b8d74SJaiprakash Singh * MPAM Partition Configuration Selection Register
443*4b8b8d74SJaiprakash Singh * Selects a partition ID to configure. TAD_CMN_MPAMCFG_PART_SEL_NS selects a Non-
444*4b8b8d74SJaiprakash Singh * secure PARTID to configure.
445*4b8b8d74SJaiprakash Singh * After setting this register with a PARTID, software (usually a hypervisor) can perform a series of
446*4b8b8d74SJaiprakash Singh * accesses to TAD_CMN_MPAMCFG registers to configure parameters for MPAM resource
447*4b8b8d74SJaiprakash Singh * controls to use when
448*4b8b8d74SJaiprakash Singh * requests have that PARTID.
449*4b8b8d74SJaiprakash Singh */
450*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamcfg_part_sel_ns {
451*4b8b8d74SJaiprakash Singh uint64_t u;
452*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamcfg_part_sel_ns_s {
453*4b8b8d74SJaiprakash Singh uint64_t partid_sel : 16;
454*4b8b8d74SJaiprakash Singh uint64_t internal : 1;
455*4b8b8d74SJaiprakash Singh uint64_t reserved_17_23 : 7;
456*4b8b8d74SJaiprakash Singh uint64_t ris : 4;
457*4b8b8d74SJaiprakash Singh uint64_t reserved_28_63 : 36;
458*4b8b8d74SJaiprakash Singh } s;
459*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamcfg_part_sel_ns_s cn; */
460*4b8b8d74SJaiprakash Singh };
461*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamcfg_part_sel_ns ody_tad_cmn_mpamcfg_part_sel_ns_t;
462*4b8b8d74SJaiprakash Singh
463*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMCFG_PART_SEL_NS ODY_TAD_CMN_MPAMCFG_PART_SEL_NS_FUNC()
464*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_PART_SEL_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMCFG_PART_SEL_NS_FUNC(void)465*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_PART_SEL_NS_FUNC(void)
466*4b8b8d74SJaiprakash Singh {
467*4b8b8d74SJaiprakash Singh return 0x87e053010100ll;
468*4b8b8d74SJaiprakash Singh }
469*4b8b8d74SJaiprakash Singh
470*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMCFG_PART_SEL_NS ody_tad_cmn_mpamcfg_part_sel_ns_t
471*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMCFG_PART_SEL_NS CSR_TYPE_RSL
472*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMCFG_PART_SEL_NS "TAD_CMN_MPAMCFG_PART_SEL_NS"
473*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMCFG_PART_SEL_NS 0x0 /* PF_BAR0 */
474*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMCFG_PART_SEL_NS 0
475*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMCFG_PART_SEL_NS -1, -1, -1, -1
476*4b8b8d74SJaiprakash Singh
477*4b8b8d74SJaiprakash Singh /**
478*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamcfg_part_sel_s
479*4b8b8d74SJaiprakash Singh *
480*4b8b8d74SJaiprakash Singh * Secure MPAM Partition Configuration Selection Register
481*4b8b8d74SJaiprakash Singh * Selects a partition ID to configure. TAD_CMN_MPAMCFG_PART_SEL_S selects a Secure PARTID to
482*4b8b8d74SJaiprakash Singh * configure.
483*4b8b8d74SJaiprakash Singh * After setting this register with a PARTID, software (usually a hypervisor) can perform a series of
484*4b8b8d74SJaiprakash Singh * accesses to TAD_CMN_MPAMCFG registers to configure parameters for MPAM resource
485*4b8b8d74SJaiprakash Singh * controls to use when
486*4b8b8d74SJaiprakash Singh * requests have that PARTID.
487*4b8b8d74SJaiprakash Singh */
488*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamcfg_part_sel_s {
489*4b8b8d74SJaiprakash Singh uint64_t u;
490*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamcfg_part_sel_s_s {
491*4b8b8d74SJaiprakash Singh uint64_t partid_sel : 16;
492*4b8b8d74SJaiprakash Singh uint64_t internal : 1;
493*4b8b8d74SJaiprakash Singh uint64_t reserved_17_23 : 7;
494*4b8b8d74SJaiprakash Singh uint64_t ris : 4;
495*4b8b8d74SJaiprakash Singh uint64_t reserved_28_63 : 36;
496*4b8b8d74SJaiprakash Singh } s;
497*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamcfg_part_sel_s_s cn; */
498*4b8b8d74SJaiprakash Singh };
499*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamcfg_part_sel_s ody_tad_cmn_mpamcfg_part_sel_s_t;
500*4b8b8d74SJaiprakash Singh
501*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMCFG_PART_SEL_S ODY_TAD_CMN_MPAMCFG_PART_SEL_S_FUNC()
502*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_PART_SEL_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMCFG_PART_SEL_S_FUNC(void)503*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_PART_SEL_S_FUNC(void)
504*4b8b8d74SJaiprakash Singh {
505*4b8b8d74SJaiprakash Singh return 0x87e053020100ll;
506*4b8b8d74SJaiprakash Singh }
507*4b8b8d74SJaiprakash Singh
508*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMCFG_PART_SEL_S ody_tad_cmn_mpamcfg_part_sel_s_t
509*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMCFG_PART_SEL_S CSR_TYPE_RSL
510*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMCFG_PART_SEL_S "TAD_CMN_MPAMCFG_PART_SEL_S"
511*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMCFG_PART_SEL_S 0x0 /* PF_BAR0 */
512*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMCFG_PART_SEL_S 0
513*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMCFG_PART_SEL_S -1, -1, -1, -1
514*4b8b8d74SJaiprakash Singh
515*4b8b8d74SJaiprakash Singh /**
516*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamcfg_pri_ns
517*4b8b8d74SJaiprakash Singh *
518*4b8b8d74SJaiprakash Singh * MPAM Priority Partition Configuration Register
519*4b8b8d74SJaiprakash Singh * Controls the internal and downstream priority of requests attributed to the PARTID
520*4b8b8d74SJaiprakash Singh * selected by TAD_CMN_MPAMCFG_PART_SEL_NS.
521*4b8b8d74SJaiprakash Singh */
522*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamcfg_pri_ns {
523*4b8b8d74SJaiprakash Singh uint64_t u;
524*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamcfg_pri_ns_s {
525*4b8b8d74SJaiprakash Singh uint64_t intpri : 16;
526*4b8b8d74SJaiprakash Singh uint64_t dspri : 16;
527*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
528*4b8b8d74SJaiprakash Singh } s;
529*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamcfg_pri_ns_s cn; */
530*4b8b8d74SJaiprakash Singh };
531*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamcfg_pri_ns ody_tad_cmn_mpamcfg_pri_ns_t;
532*4b8b8d74SJaiprakash Singh
533*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMCFG_PRI_NS ODY_TAD_CMN_MPAMCFG_PRI_NS_FUNC()
534*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_PRI_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMCFG_PRI_NS_FUNC(void)535*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_PRI_NS_FUNC(void)
536*4b8b8d74SJaiprakash Singh {
537*4b8b8d74SJaiprakash Singh return 0x87e053010400ll;
538*4b8b8d74SJaiprakash Singh }
539*4b8b8d74SJaiprakash Singh
540*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMCFG_PRI_NS ody_tad_cmn_mpamcfg_pri_ns_t
541*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMCFG_PRI_NS CSR_TYPE_RSL
542*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMCFG_PRI_NS "TAD_CMN_MPAMCFG_PRI_NS"
543*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMCFG_PRI_NS 0x0 /* PF_BAR0 */
544*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMCFG_PRI_NS 0
545*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMCFG_PRI_NS -1, -1, -1, -1
546*4b8b8d74SJaiprakash Singh
547*4b8b8d74SJaiprakash Singh /**
548*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamcfg_pri_s
549*4b8b8d74SJaiprakash Singh *
550*4b8b8d74SJaiprakash Singh * MPAM Priority Partition Configuration Register
551*4b8b8d74SJaiprakash Singh * Controls the internal and downstream priority of requests attributed to the PARTID
552*4b8b8d74SJaiprakash Singh * selected by TAD_CMN_MPAMCFG_PART_SEL_S.
553*4b8b8d74SJaiprakash Singh */
554*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamcfg_pri_s {
555*4b8b8d74SJaiprakash Singh uint64_t u;
556*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamcfg_pri_s_s {
557*4b8b8d74SJaiprakash Singh uint64_t intpri : 16;
558*4b8b8d74SJaiprakash Singh uint64_t dspri : 16;
559*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
560*4b8b8d74SJaiprakash Singh } s;
561*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamcfg_pri_s_s cn; */
562*4b8b8d74SJaiprakash Singh };
563*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamcfg_pri_s ody_tad_cmn_mpamcfg_pri_s_t;
564*4b8b8d74SJaiprakash Singh
565*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMCFG_PRI_S ODY_TAD_CMN_MPAMCFG_PRI_S_FUNC()
566*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_PRI_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMCFG_PRI_S_FUNC(void)567*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMCFG_PRI_S_FUNC(void)
568*4b8b8d74SJaiprakash Singh {
569*4b8b8d74SJaiprakash Singh return 0x87e053020400ll;
570*4b8b8d74SJaiprakash Singh }
571*4b8b8d74SJaiprakash Singh
572*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMCFG_PRI_S ody_tad_cmn_mpamcfg_pri_s_t
573*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMCFG_PRI_S CSR_TYPE_RSL
574*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMCFG_PRI_S "TAD_CMN_MPAMCFG_PRI_S"
575*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMCFG_PRI_S 0x0 /* PF_BAR0 */
576*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMCFG_PRI_S 0
577*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMCFG_PRI_S -1, -1, -1, -1
578*4b8b8d74SJaiprakash Singh
579*4b8b8d74SJaiprakash Singh /**
580*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_aidr_ns
581*4b8b8d74SJaiprakash Singh *
582*4b8b8d74SJaiprakash Singh * MPAM Architecture Identification Register
583*4b8b8d74SJaiprakash Singh * Identifies the version of the MPAM architecture that this MSC implements.
584*4b8b8d74SJaiprakash Singh * This MSC implements MPAM architecture v1.1
585*4b8b8d74SJaiprakash Singh */
586*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_aidr_ns {
587*4b8b8d74SJaiprakash Singh uint64_t u;
588*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_aidr_ns_s {
589*4b8b8d74SJaiprakash Singh uint64_t archminorrev : 4;
590*4b8b8d74SJaiprakash Singh uint64_t archmajorrev : 4;
591*4b8b8d74SJaiprakash Singh uint64_t reserved_8_63 : 56;
592*4b8b8d74SJaiprakash Singh } s;
593*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_aidr_ns_s cn; */
594*4b8b8d74SJaiprakash Singh };
595*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_aidr_ns ody_tad_cmn_mpamf_aidr_ns_t;
596*4b8b8d74SJaiprakash Singh
597*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_AIDR_NS ODY_TAD_CMN_MPAMF_AIDR_NS_FUNC()
598*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_AIDR_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_AIDR_NS_FUNC(void)599*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_AIDR_NS_FUNC(void)
600*4b8b8d74SJaiprakash Singh {
601*4b8b8d74SJaiprakash Singh return 0x87e053010020ll;
602*4b8b8d74SJaiprakash Singh }
603*4b8b8d74SJaiprakash Singh
604*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_AIDR_NS ody_tad_cmn_mpamf_aidr_ns_t
605*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_AIDR_NS CSR_TYPE_RSL
606*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_AIDR_NS "TAD_CMN_MPAMF_AIDR_NS"
607*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_AIDR_NS 0x0 /* PF_BAR0 */
608*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_AIDR_NS 0
609*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_AIDR_NS -1, -1, -1, -1
610*4b8b8d74SJaiprakash Singh
611*4b8b8d74SJaiprakash Singh /**
612*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_aidr_s
613*4b8b8d74SJaiprakash Singh *
614*4b8b8d74SJaiprakash Singh * MPAM Architecture Identification Register
615*4b8b8d74SJaiprakash Singh * Identifies the version of the MPAM architecture that this MSC implements.
616*4b8b8d74SJaiprakash Singh * This MSC implements MPAM architecture v1.1
617*4b8b8d74SJaiprakash Singh */
618*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_aidr_s {
619*4b8b8d74SJaiprakash Singh uint64_t u;
620*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_aidr_s_s {
621*4b8b8d74SJaiprakash Singh uint64_t archminorrev : 4;
622*4b8b8d74SJaiprakash Singh uint64_t archmajorrev : 4;
623*4b8b8d74SJaiprakash Singh uint64_t reserved_8_63 : 56;
624*4b8b8d74SJaiprakash Singh } s;
625*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_aidr_s_s cn; */
626*4b8b8d74SJaiprakash Singh };
627*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_aidr_s ody_tad_cmn_mpamf_aidr_s_t;
628*4b8b8d74SJaiprakash Singh
629*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_AIDR_S ODY_TAD_CMN_MPAMF_AIDR_S_FUNC()
630*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_AIDR_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_AIDR_S_FUNC(void)631*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_AIDR_S_FUNC(void)
632*4b8b8d74SJaiprakash Singh {
633*4b8b8d74SJaiprakash Singh return 0x87e053020020ll;
634*4b8b8d74SJaiprakash Singh }
635*4b8b8d74SJaiprakash Singh
636*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_AIDR_S ody_tad_cmn_mpamf_aidr_s_t
637*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_AIDR_S CSR_TYPE_RSL
638*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_AIDR_S "TAD_CMN_MPAMF_AIDR_S"
639*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_AIDR_S 0x0 /* PF_BAR0 */
640*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_AIDR_S 0
641*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_AIDR_S -1, -1, -1, -1
642*4b8b8d74SJaiprakash Singh
643*4b8b8d74SJaiprakash Singh /**
644*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_cpor_idr_ns
645*4b8b8d74SJaiprakash Singh *
646*4b8b8d74SJaiprakash Singh * MPAM Features Cache Portion Partitioning ID Register
647*4b8b8d74SJaiprakash Singh * Indicates the number of bits in TAD_CMN_MPAMCFG_CPBM for this MSC.
648*4b8b8d74SJaiprakash Singh * TAD_CMN_MPAMF_CPOR_IDR_NS indicates the number of bits in the Non-secure instance of
649*4b8b8d74SJaiprakash Singh * TAD_CMN_MPAMCFG_CPBM.
650*4b8b8d74SJaiprakash Singh */
651*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_cpor_idr_ns {
652*4b8b8d74SJaiprakash Singh uint64_t u;
653*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_cpor_idr_ns_s {
654*4b8b8d74SJaiprakash Singh uint64_t cpbm_wd : 16;
655*4b8b8d74SJaiprakash Singh uint64_t reserved_16_63 : 48;
656*4b8b8d74SJaiprakash Singh } s;
657*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_cpor_idr_ns_s cn; */
658*4b8b8d74SJaiprakash Singh };
659*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_cpor_idr_ns ody_tad_cmn_mpamf_cpor_idr_ns_t;
660*4b8b8d74SJaiprakash Singh
661*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_CPOR_IDR_NS ODY_TAD_CMN_MPAMF_CPOR_IDR_NS_FUNC()
662*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_CPOR_IDR_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_CPOR_IDR_NS_FUNC(void)663*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_CPOR_IDR_NS_FUNC(void)
664*4b8b8d74SJaiprakash Singh {
665*4b8b8d74SJaiprakash Singh return 0x87e053010030ll;
666*4b8b8d74SJaiprakash Singh }
667*4b8b8d74SJaiprakash Singh
668*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_CPOR_IDR_NS ody_tad_cmn_mpamf_cpor_idr_ns_t
669*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_CPOR_IDR_NS CSR_TYPE_RSL
670*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_CPOR_IDR_NS "TAD_CMN_MPAMF_CPOR_IDR_NS"
671*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_CPOR_IDR_NS 0x0 /* PF_BAR0 */
672*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_CPOR_IDR_NS 0
673*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_CPOR_IDR_NS -1, -1, -1, -1
674*4b8b8d74SJaiprakash Singh
675*4b8b8d74SJaiprakash Singh /**
676*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_cpor_idr_s
677*4b8b8d74SJaiprakash Singh *
678*4b8b8d74SJaiprakash Singh * Secure MPAM Features Cache Portion Partitioning ID Register
679*4b8b8d74SJaiprakash Singh * Indicates the number of bits in TAD_CMN_MPAMCFG_CPBM for this MSC. TAD_CMN_MPAMF_CPOR_IDR_S
680*4b8b8d74SJaiprakash Singh * indicates the number of bits in the Secure instance of TAD_CMN_MPAMCFG_CPBM.
681*4b8b8d74SJaiprakash Singh */
682*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_cpor_idr_s {
683*4b8b8d74SJaiprakash Singh uint64_t u;
684*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_cpor_idr_s_s {
685*4b8b8d74SJaiprakash Singh uint64_t cpbm_wd : 16;
686*4b8b8d74SJaiprakash Singh uint64_t reserved_16_63 : 48;
687*4b8b8d74SJaiprakash Singh } s;
688*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_cpor_idr_s_s cn; */
689*4b8b8d74SJaiprakash Singh };
690*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_cpor_idr_s ody_tad_cmn_mpamf_cpor_idr_s_t;
691*4b8b8d74SJaiprakash Singh
692*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_CPOR_IDR_S ODY_TAD_CMN_MPAMF_CPOR_IDR_S_FUNC()
693*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_CPOR_IDR_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_CPOR_IDR_S_FUNC(void)694*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_CPOR_IDR_S_FUNC(void)
695*4b8b8d74SJaiprakash Singh {
696*4b8b8d74SJaiprakash Singh return 0x87e053020030ll;
697*4b8b8d74SJaiprakash Singh }
698*4b8b8d74SJaiprakash Singh
699*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_CPOR_IDR_S ody_tad_cmn_mpamf_cpor_idr_s_t
700*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_CPOR_IDR_S CSR_TYPE_RSL
701*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_CPOR_IDR_S "TAD_CMN_MPAMF_CPOR_IDR_S"
702*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_CPOR_IDR_S 0x0 /* PF_BAR0 */
703*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_CPOR_IDR_S 0
704*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_CPOR_IDR_S -1, -1, -1, -1
705*4b8b8d74SJaiprakash Singh
706*4b8b8d74SJaiprakash Singh /**
707*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_csumon_idr_ns
708*4b8b8d74SJaiprakash Singh *
709*4b8b8d74SJaiprakash Singh * MPAM Features Cache Storage Usage Monitoring ID Register
710*4b8b8d74SJaiprakash Singh * Indicates the number of cache storage usage monitors for this MSC.
711*4b8b8d74SJaiprakash Singh * TAD_CMN_MPAMF_CSUMON_IDR_NS indicates the number of Non-secure cache storage usage monitors.
712*4b8b8d74SJaiprakash Singh */
713*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_csumon_idr_ns {
714*4b8b8d74SJaiprakash Singh uint64_t u;
715*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_csumon_idr_ns_s {
716*4b8b8d74SJaiprakash Singh uint64_t num_mon : 16;
717*4b8b8d74SJaiprakash Singh uint64_t reserved_16_30 : 15;
718*4b8b8d74SJaiprakash Singh uint64_t has_capture : 1;
719*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
720*4b8b8d74SJaiprakash Singh } s;
721*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_csumon_idr_ns_s cn; */
722*4b8b8d74SJaiprakash Singh };
723*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_csumon_idr_ns ody_tad_cmn_mpamf_csumon_idr_ns_t;
724*4b8b8d74SJaiprakash Singh
725*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_CSUMON_IDR_NS ODY_TAD_CMN_MPAMF_CSUMON_IDR_NS_FUNC()
726*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_CSUMON_IDR_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_CSUMON_IDR_NS_FUNC(void)727*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_CSUMON_IDR_NS_FUNC(void)
728*4b8b8d74SJaiprakash Singh {
729*4b8b8d74SJaiprakash Singh return 0x87e053010088ll;
730*4b8b8d74SJaiprakash Singh }
731*4b8b8d74SJaiprakash Singh
732*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_CSUMON_IDR_NS ody_tad_cmn_mpamf_csumon_idr_ns_t
733*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_CSUMON_IDR_NS CSR_TYPE_RSL
734*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_CSUMON_IDR_NS "TAD_CMN_MPAMF_CSUMON_IDR_NS"
735*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_CSUMON_IDR_NS 0x0 /* PF_BAR0 */
736*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_CSUMON_IDR_NS 0
737*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_CSUMON_IDR_NS -1, -1, -1, -1
738*4b8b8d74SJaiprakash Singh
739*4b8b8d74SJaiprakash Singh /**
740*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_csumon_idr_s
741*4b8b8d74SJaiprakash Singh *
742*4b8b8d74SJaiprakash Singh * MPAM Features Cache Storage Usage Monitoring ID Register
743*4b8b8d74SJaiprakash Singh * Indicates the number of cache storage usage monitors for this MSC.
744*4b8b8d74SJaiprakash Singh * TAD_CMN_MPAMF_CSUMON_IDR_S indicates the number of secure cache storage usage monitors.
745*4b8b8d74SJaiprakash Singh */
746*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_csumon_idr_s {
747*4b8b8d74SJaiprakash Singh uint64_t u;
748*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_csumon_idr_s_s {
749*4b8b8d74SJaiprakash Singh uint64_t num_mon : 16;
750*4b8b8d74SJaiprakash Singh uint64_t reserved_16_30 : 15;
751*4b8b8d74SJaiprakash Singh uint64_t has_capture : 1;
752*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
753*4b8b8d74SJaiprakash Singh } s;
754*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_csumon_idr_s_s cn; */
755*4b8b8d74SJaiprakash Singh };
756*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_csumon_idr_s ody_tad_cmn_mpamf_csumon_idr_s_t;
757*4b8b8d74SJaiprakash Singh
758*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_CSUMON_IDR_S ODY_TAD_CMN_MPAMF_CSUMON_IDR_S_FUNC()
759*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_CSUMON_IDR_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_CSUMON_IDR_S_FUNC(void)760*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_CSUMON_IDR_S_FUNC(void)
761*4b8b8d74SJaiprakash Singh {
762*4b8b8d74SJaiprakash Singh return 0x87e053020088ll;
763*4b8b8d74SJaiprakash Singh }
764*4b8b8d74SJaiprakash Singh
765*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_CSUMON_IDR_S ody_tad_cmn_mpamf_csumon_idr_s_t
766*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_CSUMON_IDR_S CSR_TYPE_RSL
767*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_CSUMON_IDR_S "TAD_CMN_MPAMF_CSUMON_IDR_S"
768*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_CSUMON_IDR_S 0x0 /* PF_BAR0 */
769*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_CSUMON_IDR_S 0
770*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_CSUMON_IDR_S -1, -1, -1, -1
771*4b8b8d74SJaiprakash Singh
772*4b8b8d74SJaiprakash Singh /**
773*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_idr_ns
774*4b8b8d74SJaiprakash Singh *
775*4b8b8d74SJaiprakash Singh * MPAM Features Identification Register
776*4b8b8d74SJaiprakash Singh * Indicates which memory partitioning and monitoring features are present on this MSC.
777*4b8b8d74SJaiprakash Singh * TAD_CMN_MPAMF_IDR_NS indicates the MPAM features accessed from the Non-secure MPAM feature page.
778*4b8b8d74SJaiprakash Singh */
779*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_idr_ns {
780*4b8b8d74SJaiprakash Singh uint64_t u;
781*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_idr_ns_s {
782*4b8b8d74SJaiprakash Singh uint64_t partid_max : 16;
783*4b8b8d74SJaiprakash Singh uint64_t pmg_max : 8;
784*4b8b8d74SJaiprakash Singh uint64_t has_ccap_part : 1;
785*4b8b8d74SJaiprakash Singh uint64_t has_cpor_part : 1;
786*4b8b8d74SJaiprakash Singh uint64_t has_mbw_part : 1;
787*4b8b8d74SJaiprakash Singh uint64_t has_pri_part : 1;
788*4b8b8d74SJaiprakash Singh uint64_t ext : 1;
789*4b8b8d74SJaiprakash Singh uint64_t has_impl_idr : 1;
790*4b8b8d74SJaiprakash Singh uint64_t has_msmon : 1;
791*4b8b8d74SJaiprakash Singh uint64_t has_partid_nrw : 1;
792*4b8b8d74SJaiprakash Singh uint64_t has_ris : 1;
793*4b8b8d74SJaiprakash Singh uint64_t reserved_33_35 : 3;
794*4b8b8d74SJaiprakash Singh uint64_t no_impl_part : 1;
795*4b8b8d74SJaiprakash Singh uint64_t no_impl_msmon : 1;
796*4b8b8d74SJaiprakash Singh uint64_t has_extd_esr : 1;
797*4b8b8d74SJaiprakash Singh uint64_t has_esr : 1;
798*4b8b8d74SJaiprakash Singh uint64_t reserved_40_55 : 16;
799*4b8b8d74SJaiprakash Singh uint64_t ris_max : 4;
800*4b8b8d74SJaiprakash Singh uint64_t reserved_60_63 : 4;
801*4b8b8d74SJaiprakash Singh } s;
802*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_idr_ns_s cn; */
803*4b8b8d74SJaiprakash Singh };
804*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_idr_ns ody_tad_cmn_mpamf_idr_ns_t;
805*4b8b8d74SJaiprakash Singh
806*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_IDR_NS ODY_TAD_CMN_MPAMF_IDR_NS_FUNC()
807*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IDR_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_IDR_NS_FUNC(void)808*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IDR_NS_FUNC(void)
809*4b8b8d74SJaiprakash Singh {
810*4b8b8d74SJaiprakash Singh return 0x87e053010000ll;
811*4b8b8d74SJaiprakash Singh }
812*4b8b8d74SJaiprakash Singh
813*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_IDR_NS ody_tad_cmn_mpamf_idr_ns_t
814*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_IDR_NS CSR_TYPE_RSL
815*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_IDR_NS "TAD_CMN_MPAMF_IDR_NS"
816*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_IDR_NS 0x0 /* PF_BAR0 */
817*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_IDR_NS 0
818*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_IDR_NS -1, -1, -1, -1
819*4b8b8d74SJaiprakash Singh
820*4b8b8d74SJaiprakash Singh /**
821*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_idr_s
822*4b8b8d74SJaiprakash Singh *
823*4b8b8d74SJaiprakash Singh * MPAM Features Identification Register
824*4b8b8d74SJaiprakash Singh * Indicates which memory partitioning and monitoring features are present on this MSC.
825*4b8b8d74SJaiprakash Singh * TAD_CMN_MPAMF_IDR_S indicates the MPAM features accessed from the Secure MPAM feature page.
826*4b8b8d74SJaiprakash Singh */
827*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_idr_s {
828*4b8b8d74SJaiprakash Singh uint64_t u;
829*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_idr_s_s {
830*4b8b8d74SJaiprakash Singh uint64_t partid_max : 16;
831*4b8b8d74SJaiprakash Singh uint64_t pmg_max : 8;
832*4b8b8d74SJaiprakash Singh uint64_t has_ccap_part : 1;
833*4b8b8d74SJaiprakash Singh uint64_t has_cpor_part : 1;
834*4b8b8d74SJaiprakash Singh uint64_t has_mbw_part : 1;
835*4b8b8d74SJaiprakash Singh uint64_t has_pri_part : 1;
836*4b8b8d74SJaiprakash Singh uint64_t ext : 1;
837*4b8b8d74SJaiprakash Singh uint64_t has_impl_idr : 1;
838*4b8b8d74SJaiprakash Singh uint64_t has_msmon : 1;
839*4b8b8d74SJaiprakash Singh uint64_t has_partid_nrw : 1;
840*4b8b8d74SJaiprakash Singh uint64_t has_ris : 1;
841*4b8b8d74SJaiprakash Singh uint64_t reserved_33_35 : 3;
842*4b8b8d74SJaiprakash Singh uint64_t no_impl_part : 1;
843*4b8b8d74SJaiprakash Singh uint64_t no_impl_msmon : 1;
844*4b8b8d74SJaiprakash Singh uint64_t has_extd_esr : 1;
845*4b8b8d74SJaiprakash Singh uint64_t has_esr : 1;
846*4b8b8d74SJaiprakash Singh uint64_t reserved_40_55 : 16;
847*4b8b8d74SJaiprakash Singh uint64_t ris_max : 4;
848*4b8b8d74SJaiprakash Singh uint64_t reserved_60_63 : 4;
849*4b8b8d74SJaiprakash Singh } s;
850*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_idr_s_s cn; */
851*4b8b8d74SJaiprakash Singh };
852*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_idr_s ody_tad_cmn_mpamf_idr_s_t;
853*4b8b8d74SJaiprakash Singh
854*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_IDR_S ODY_TAD_CMN_MPAMF_IDR_S_FUNC()
855*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IDR_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_IDR_S_FUNC(void)856*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IDR_S_FUNC(void)
857*4b8b8d74SJaiprakash Singh {
858*4b8b8d74SJaiprakash Singh return 0x87e053020000ll;
859*4b8b8d74SJaiprakash Singh }
860*4b8b8d74SJaiprakash Singh
861*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_IDR_S ody_tad_cmn_mpamf_idr_s_t
862*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_IDR_S CSR_TYPE_RSL
863*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_IDR_S "TAD_CMN_MPAMF_IDR_S"
864*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_IDR_S 0x0 /* PF_BAR0 */
865*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_IDR_S 0
866*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_IDR_S -1, -1, -1, -1
867*4b8b8d74SJaiprakash Singh
868*4b8b8d74SJaiprakash Singh /**
869*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_iidr_ns
870*4b8b8d74SJaiprakash Singh *
871*4b8b8d74SJaiprakash Singh * MPAM Implementation Identification Register
872*4b8b8d74SJaiprakash Singh * Uniquely identifies the MSC implementation by the combination of implementer, product ID,
873*4b8b8d74SJaiprakash Singh * variant and revision.
874*4b8b8d74SJaiprakash Singh */
875*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_iidr_ns {
876*4b8b8d74SJaiprakash Singh uint64_t u;
877*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_iidr_ns_s {
878*4b8b8d74SJaiprakash Singh uint64_t implementer : 12;
879*4b8b8d74SJaiprakash Singh uint64_t revision : 4;
880*4b8b8d74SJaiprakash Singh uint64_t variant : 4;
881*4b8b8d74SJaiprakash Singh uint64_t productid : 12;
882*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
883*4b8b8d74SJaiprakash Singh } s;
884*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_iidr_ns_s cn; */
885*4b8b8d74SJaiprakash Singh };
886*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_iidr_ns ody_tad_cmn_mpamf_iidr_ns_t;
887*4b8b8d74SJaiprakash Singh
888*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_IIDR_NS ODY_TAD_CMN_MPAMF_IIDR_NS_FUNC()
889*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IIDR_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_IIDR_NS_FUNC(void)890*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IIDR_NS_FUNC(void)
891*4b8b8d74SJaiprakash Singh {
892*4b8b8d74SJaiprakash Singh return 0x87e053010018ll;
893*4b8b8d74SJaiprakash Singh }
894*4b8b8d74SJaiprakash Singh
895*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_IIDR_NS ody_tad_cmn_mpamf_iidr_ns_t
896*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_IIDR_NS CSR_TYPE_RSL
897*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_IIDR_NS "TAD_CMN_MPAMF_IIDR_NS"
898*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_IIDR_NS 0x0 /* PF_BAR0 */
899*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_IIDR_NS 0
900*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_IIDR_NS -1, -1, -1, -1
901*4b8b8d74SJaiprakash Singh
902*4b8b8d74SJaiprakash Singh /**
903*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_iidr_s
904*4b8b8d74SJaiprakash Singh *
905*4b8b8d74SJaiprakash Singh * MPAM Implementation Identification Register
906*4b8b8d74SJaiprakash Singh * Uniquely identifies the MSC implementation by the combination of implementer, product ID,
907*4b8b8d74SJaiprakash Singh * variant and revision.
908*4b8b8d74SJaiprakash Singh */
909*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_iidr_s {
910*4b8b8d74SJaiprakash Singh uint64_t u;
911*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_iidr_s_s {
912*4b8b8d74SJaiprakash Singh uint64_t implementer : 12;
913*4b8b8d74SJaiprakash Singh uint64_t revision : 4;
914*4b8b8d74SJaiprakash Singh uint64_t variant : 4;
915*4b8b8d74SJaiprakash Singh uint64_t productid : 12;
916*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
917*4b8b8d74SJaiprakash Singh } s;
918*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_iidr_s_s cn; */
919*4b8b8d74SJaiprakash Singh };
920*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_iidr_s ody_tad_cmn_mpamf_iidr_s_t;
921*4b8b8d74SJaiprakash Singh
922*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_IIDR_S ODY_TAD_CMN_MPAMF_IIDR_S_FUNC()
923*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IIDR_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_IIDR_S_FUNC(void)924*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IIDR_S_FUNC(void)
925*4b8b8d74SJaiprakash Singh {
926*4b8b8d74SJaiprakash Singh return 0x87e053020018ll;
927*4b8b8d74SJaiprakash Singh }
928*4b8b8d74SJaiprakash Singh
929*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_IIDR_S ody_tad_cmn_mpamf_iidr_s_t
930*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_IIDR_S CSR_TYPE_RSL
931*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_IIDR_S "TAD_CMN_MPAMF_IIDR_S"
932*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_IIDR_S 0x0 /* PF_BAR0 */
933*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_IIDR_S 0
934*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_IIDR_S -1, -1, -1, -1
935*4b8b8d74SJaiprakash Singh
936*4b8b8d74SJaiprakash Singh /**
937*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_impl_idr_ns
938*4b8b8d74SJaiprakash Singh *
939*4b8b8d74SJaiprakash Singh * MPAM Implementation-Specific Partitioning Feature Identification Register
940*4b8b8d74SJaiprakash Singh * Indicates the implementation-defined partitioning and monitoring features and
941*4b8b8d74SJaiprakash Singh * parameters of this MSC.
942*4b8b8d74SJaiprakash Singh */
943*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_impl_idr_ns {
944*4b8b8d74SJaiprakash Singh uint64_t u;
945*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_impl_idr_ns_s {
946*4b8b8d74SJaiprakash Singh uint64_t has_pri : 1;
947*4b8b8d74SJaiprakash Singh uint64_t reserved_1_63 : 63;
948*4b8b8d74SJaiprakash Singh } s;
949*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_impl_idr_ns_s cn; */
950*4b8b8d74SJaiprakash Singh };
951*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_impl_idr_ns ody_tad_cmn_mpamf_impl_idr_ns_t;
952*4b8b8d74SJaiprakash Singh
953*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_IMPL_IDR_NS ODY_TAD_CMN_MPAMF_IMPL_IDR_NS_FUNC()
954*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IMPL_IDR_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_IMPL_IDR_NS_FUNC(void)955*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IMPL_IDR_NS_FUNC(void)
956*4b8b8d74SJaiprakash Singh {
957*4b8b8d74SJaiprakash Singh return 0x87e053010028ll;
958*4b8b8d74SJaiprakash Singh }
959*4b8b8d74SJaiprakash Singh
960*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_IMPL_IDR_NS ody_tad_cmn_mpamf_impl_idr_ns_t
961*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_IMPL_IDR_NS CSR_TYPE_RSL
962*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_IMPL_IDR_NS "TAD_CMN_MPAMF_IMPL_IDR_NS"
963*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_IMPL_IDR_NS 0x0 /* PF_BAR0 */
964*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_IMPL_IDR_NS 0
965*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_IMPL_IDR_NS -1, -1, -1, -1
966*4b8b8d74SJaiprakash Singh
967*4b8b8d74SJaiprakash Singh /**
968*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_impl_idr_s
969*4b8b8d74SJaiprakash Singh *
970*4b8b8d74SJaiprakash Singh * MPAM Implementation-Specific Partitioning Feature Identification Register
971*4b8b8d74SJaiprakash Singh * Indicates the implementation-defined partitioning and monitoring features and
972*4b8b8d74SJaiprakash Singh * parameters of this MSC.
973*4b8b8d74SJaiprakash Singh */
974*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_impl_idr_s {
975*4b8b8d74SJaiprakash Singh uint64_t u;
976*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_impl_idr_s_s {
977*4b8b8d74SJaiprakash Singh uint64_t has_pri : 1;
978*4b8b8d74SJaiprakash Singh uint64_t reserved_1_63 : 63;
979*4b8b8d74SJaiprakash Singh } s;
980*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_impl_idr_s_s cn; */
981*4b8b8d74SJaiprakash Singh };
982*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_impl_idr_s ody_tad_cmn_mpamf_impl_idr_s_t;
983*4b8b8d74SJaiprakash Singh
984*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_IMPL_IDR_S ODY_TAD_CMN_MPAMF_IMPL_IDR_S_FUNC()
985*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IMPL_IDR_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_IMPL_IDR_S_FUNC(void)986*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_IMPL_IDR_S_FUNC(void)
987*4b8b8d74SJaiprakash Singh {
988*4b8b8d74SJaiprakash Singh return 0x87e053020028ll;
989*4b8b8d74SJaiprakash Singh }
990*4b8b8d74SJaiprakash Singh
991*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_IMPL_IDR_S ody_tad_cmn_mpamf_impl_idr_s_t
992*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_IMPL_IDR_S CSR_TYPE_RSL
993*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_IMPL_IDR_S "TAD_CMN_MPAMF_IMPL_IDR_S"
994*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_IMPL_IDR_S 0x0 /* PF_BAR0 */
995*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_IMPL_IDR_S 0
996*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_IMPL_IDR_S -1, -1, -1, -1
997*4b8b8d74SJaiprakash Singh
998*4b8b8d74SJaiprakash Singh /**
999*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_msmon_idr_ns
1000*4b8b8d74SJaiprakash Singh *
1001*4b8b8d74SJaiprakash Singh * MPAM Resource Monitoring Identification Register
1002*4b8b8d74SJaiprakash Singh * Indicates which MPAM monitoring features are present on this MSC.
1003*4b8b8d74SJaiprakash Singh * TAD_CMN_MPAMF_MSMON_IDR_NS indicates Non-secure monitoring features.
1004*4b8b8d74SJaiprakash Singh */
1005*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_msmon_idr_ns {
1006*4b8b8d74SJaiprakash Singh uint64_t u;
1007*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_msmon_idr_ns_s {
1008*4b8b8d74SJaiprakash Singh uint64_t reserved_0_15 : 16;
1009*4b8b8d74SJaiprakash Singh uint64_t msmon_csu : 1;
1010*4b8b8d74SJaiprakash Singh uint64_t msmon_mbwu : 1;
1011*4b8b8d74SJaiprakash Singh uint64_t reserved_18_30 : 13;
1012*4b8b8d74SJaiprakash Singh uint64_t has_local_capt_evnt : 1;
1013*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
1014*4b8b8d74SJaiprakash Singh } s;
1015*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_msmon_idr_ns_s cn; */
1016*4b8b8d74SJaiprakash Singh };
1017*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_msmon_idr_ns ody_tad_cmn_mpamf_msmon_idr_ns_t;
1018*4b8b8d74SJaiprakash Singh
1019*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_MSMON_IDR_NS ODY_TAD_CMN_MPAMF_MSMON_IDR_NS_FUNC()
1020*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_MSMON_IDR_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_MSMON_IDR_NS_FUNC(void)1021*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_MSMON_IDR_NS_FUNC(void)
1022*4b8b8d74SJaiprakash Singh {
1023*4b8b8d74SJaiprakash Singh return 0x87e053010080ll;
1024*4b8b8d74SJaiprakash Singh }
1025*4b8b8d74SJaiprakash Singh
1026*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_MSMON_IDR_NS ody_tad_cmn_mpamf_msmon_idr_ns_t
1027*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_MSMON_IDR_NS CSR_TYPE_RSL
1028*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_MSMON_IDR_NS "TAD_CMN_MPAMF_MSMON_IDR_NS"
1029*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_MSMON_IDR_NS 0x0 /* PF_BAR0 */
1030*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_MSMON_IDR_NS 0
1031*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_MSMON_IDR_NS -1, -1, -1, -1
1032*4b8b8d74SJaiprakash Singh
1033*4b8b8d74SJaiprakash Singh /**
1034*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_msmon_idr_s
1035*4b8b8d74SJaiprakash Singh *
1036*4b8b8d74SJaiprakash Singh * MPAM Resource Monitoring Identification Register
1037*4b8b8d74SJaiprakash Singh * Indicates which MPAM monitoring features are present on this MSC.
1038*4b8b8d74SJaiprakash Singh * TAD_CMN_MPAMF_MSMON_IDR_S indicates secure monitoring features.
1039*4b8b8d74SJaiprakash Singh */
1040*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_msmon_idr_s {
1041*4b8b8d74SJaiprakash Singh uint64_t u;
1042*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_msmon_idr_s_s {
1043*4b8b8d74SJaiprakash Singh uint64_t reserved_0_15 : 16;
1044*4b8b8d74SJaiprakash Singh uint64_t msmon_csu : 1;
1045*4b8b8d74SJaiprakash Singh uint64_t msmon_mbwu : 1;
1046*4b8b8d74SJaiprakash Singh uint64_t reserved_18_30 : 13;
1047*4b8b8d74SJaiprakash Singh uint64_t has_local_capt_evnt : 1;
1048*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
1049*4b8b8d74SJaiprakash Singh } s;
1050*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_msmon_idr_s_s cn; */
1051*4b8b8d74SJaiprakash Singh };
1052*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_msmon_idr_s ody_tad_cmn_mpamf_msmon_idr_s_t;
1053*4b8b8d74SJaiprakash Singh
1054*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_MSMON_IDR_S ODY_TAD_CMN_MPAMF_MSMON_IDR_S_FUNC()
1055*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_MSMON_IDR_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_MSMON_IDR_S_FUNC(void)1056*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_MSMON_IDR_S_FUNC(void)
1057*4b8b8d74SJaiprakash Singh {
1058*4b8b8d74SJaiprakash Singh return 0x87e053020080ll;
1059*4b8b8d74SJaiprakash Singh }
1060*4b8b8d74SJaiprakash Singh
1061*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_MSMON_IDR_S ody_tad_cmn_mpamf_msmon_idr_s_t
1062*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_MSMON_IDR_S CSR_TYPE_RSL
1063*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_MSMON_IDR_S "TAD_CMN_MPAMF_MSMON_IDR_S"
1064*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_MSMON_IDR_S 0x0 /* PF_BAR0 */
1065*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_MSMON_IDR_S 0
1066*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_MSMON_IDR_S -1, -1, -1, -1
1067*4b8b8d74SJaiprakash Singh
1068*4b8b8d74SJaiprakash Singh /**
1069*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_pri_idr_ns
1070*4b8b8d74SJaiprakash Singh *
1071*4b8b8d74SJaiprakash Singh * MPAM Priority Partitioning Identification Register
1072*4b8b8d74SJaiprakash Singh * Indicates which MPAM priority partitioning features are present on this MSC.
1073*4b8b8d74SJaiprakash Singh */
1074*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_pri_idr_ns {
1075*4b8b8d74SJaiprakash Singh uint64_t u;
1076*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_pri_idr_ns_s {
1077*4b8b8d74SJaiprakash Singh uint64_t has_intpri : 1;
1078*4b8b8d74SJaiprakash Singh uint64_t intpri_0_is_low : 1;
1079*4b8b8d74SJaiprakash Singh uint64_t reserved_2_3 : 2;
1080*4b8b8d74SJaiprakash Singh uint64_t intpri_wd : 6;
1081*4b8b8d74SJaiprakash Singh uint64_t reserved_10_15 : 6;
1082*4b8b8d74SJaiprakash Singh uint64_t has_dspri : 1;
1083*4b8b8d74SJaiprakash Singh uint64_t dspri_0_is_low : 1;
1084*4b8b8d74SJaiprakash Singh uint64_t reserved_18_19 : 2;
1085*4b8b8d74SJaiprakash Singh uint64_t dspri_wd : 6;
1086*4b8b8d74SJaiprakash Singh uint64_t reserved_26_63 : 38;
1087*4b8b8d74SJaiprakash Singh } s;
1088*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_pri_idr_ns_s cn; */
1089*4b8b8d74SJaiprakash Singh };
1090*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_pri_idr_ns ody_tad_cmn_mpamf_pri_idr_ns_t;
1091*4b8b8d74SJaiprakash Singh
1092*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_PRI_IDR_NS ODY_TAD_CMN_MPAMF_PRI_IDR_NS_FUNC()
1093*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_PRI_IDR_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_PRI_IDR_NS_FUNC(void)1094*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_PRI_IDR_NS_FUNC(void)
1095*4b8b8d74SJaiprakash Singh {
1096*4b8b8d74SJaiprakash Singh return 0x87e053010048ll;
1097*4b8b8d74SJaiprakash Singh }
1098*4b8b8d74SJaiprakash Singh
1099*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_PRI_IDR_NS ody_tad_cmn_mpamf_pri_idr_ns_t
1100*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_PRI_IDR_NS CSR_TYPE_RSL
1101*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_PRI_IDR_NS "TAD_CMN_MPAMF_PRI_IDR_NS"
1102*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_PRI_IDR_NS 0x0 /* PF_BAR0 */
1103*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_PRI_IDR_NS 0
1104*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_PRI_IDR_NS -1, -1, -1, -1
1105*4b8b8d74SJaiprakash Singh
1106*4b8b8d74SJaiprakash Singh /**
1107*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_pri_idr_s
1108*4b8b8d74SJaiprakash Singh *
1109*4b8b8d74SJaiprakash Singh * MPAM Priority Partitioning Identification Register
1110*4b8b8d74SJaiprakash Singh * Indicates which MPAM priority partitioning features are present on this MSC.
1111*4b8b8d74SJaiprakash Singh */
1112*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_pri_idr_s {
1113*4b8b8d74SJaiprakash Singh uint64_t u;
1114*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_pri_idr_s_s {
1115*4b8b8d74SJaiprakash Singh uint64_t has_intpri : 1;
1116*4b8b8d74SJaiprakash Singh uint64_t intpri_0_is_low : 1;
1117*4b8b8d74SJaiprakash Singh uint64_t reserved_2_3 : 2;
1118*4b8b8d74SJaiprakash Singh uint64_t intpri_wd : 6;
1119*4b8b8d74SJaiprakash Singh uint64_t reserved_10_15 : 6;
1120*4b8b8d74SJaiprakash Singh uint64_t has_dspri : 1;
1121*4b8b8d74SJaiprakash Singh uint64_t dspri_0_is_low : 1;
1122*4b8b8d74SJaiprakash Singh uint64_t reserved_18_19 : 2;
1123*4b8b8d74SJaiprakash Singh uint64_t dspri_wd : 6;
1124*4b8b8d74SJaiprakash Singh uint64_t reserved_26_63 : 38;
1125*4b8b8d74SJaiprakash Singh } s;
1126*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_pri_idr_s_s cn; */
1127*4b8b8d74SJaiprakash Singh };
1128*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_pri_idr_s ody_tad_cmn_mpamf_pri_idr_s_t;
1129*4b8b8d74SJaiprakash Singh
1130*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_PRI_IDR_S ODY_TAD_CMN_MPAMF_PRI_IDR_S_FUNC()
1131*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_PRI_IDR_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_PRI_IDR_S_FUNC(void)1132*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_PRI_IDR_S_FUNC(void)
1133*4b8b8d74SJaiprakash Singh {
1134*4b8b8d74SJaiprakash Singh return 0x87e053020048ll;
1135*4b8b8d74SJaiprakash Singh }
1136*4b8b8d74SJaiprakash Singh
1137*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_PRI_IDR_S ody_tad_cmn_mpamf_pri_idr_s_t
1138*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_PRI_IDR_S CSR_TYPE_RSL
1139*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_PRI_IDR_S "TAD_CMN_MPAMF_PRI_IDR_S"
1140*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_PRI_IDR_S 0x0 /* PF_BAR0 */
1141*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_PRI_IDR_S 0
1142*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_PRI_IDR_S -1, -1, -1, -1
1143*4b8b8d74SJaiprakash Singh
1144*4b8b8d74SJaiprakash Singh /**
1145*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_mpamf_sidr
1146*4b8b8d74SJaiprakash Singh *
1147*4b8b8d74SJaiprakash Singh * MPAM Features Secure Identification Register
1148*4b8b8d74SJaiprakash Singh * The TAD_CMN_MPAMF_SIDR is a 32-bit read-only register that indicates the maximum Secure PARTID and
1149*4b8b8d74SJaiprakash Singh * Secure PMG on this MSC.
1150*4b8b8d74SJaiprakash Singh */
1151*4b8b8d74SJaiprakash Singh union ody_tad_cmn_mpamf_sidr {
1152*4b8b8d74SJaiprakash Singh uint64_t u;
1153*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_mpamf_sidr_s {
1154*4b8b8d74SJaiprakash Singh uint64_t s_partid_max : 16;
1155*4b8b8d74SJaiprakash Singh uint64_t s_pmg_max : 8;
1156*4b8b8d74SJaiprakash Singh uint64_t reserved_24_63 : 40;
1157*4b8b8d74SJaiprakash Singh } s;
1158*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_mpamf_sidr_s cn; */
1159*4b8b8d74SJaiprakash Singh };
1160*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_mpamf_sidr ody_tad_cmn_mpamf_sidr_t;
1161*4b8b8d74SJaiprakash Singh
1162*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MPAMF_SIDR ODY_TAD_CMN_MPAMF_SIDR_FUNC()
1163*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_SIDR_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MPAMF_SIDR_FUNC(void)1164*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MPAMF_SIDR_FUNC(void)
1165*4b8b8d74SJaiprakash Singh {
1166*4b8b8d74SJaiprakash Singh return 0x87e053020008ll;
1167*4b8b8d74SJaiprakash Singh }
1168*4b8b8d74SJaiprakash Singh
1169*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MPAMF_SIDR ody_tad_cmn_mpamf_sidr_t
1170*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MPAMF_SIDR CSR_TYPE_RSL
1171*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MPAMF_SIDR "TAD_CMN_MPAMF_SIDR"
1172*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MPAMF_SIDR 0x0 /* PF_BAR0 */
1173*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MPAMF_SIDR 0
1174*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MPAMF_SIDR -1, -1, -1, -1
1175*4b8b8d74SJaiprakash Singh
1176*4b8b8d74SJaiprakash Singh /**
1177*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_msmon_cfg_csu_ctl_ns
1178*4b8b8d74SJaiprakash Singh *
1179*4b8b8d74SJaiprakash Singh * MPAM Memory System Monitor Configure Cache Storage Usage Monitor Control Register
1180*4b8b8d74SJaiprakash Singh * Controls the CSU monitor selected by TAD_CMN_MSMON_CFG_MON_SEL_NS.
1181*4b8b8d74SJaiprakash Singh * TAD_CMN_MSMON_CFG_CSU_CTL_NS controls Non-secure cache storage usage monitor instance
1182*4b8b8d74SJaiprakash Singh * selected by the Non-secure instance of TAD_CMN_MSMON_CFG_MON_SEL_NS.
1183*4b8b8d74SJaiprakash Singh */
1184*4b8b8d74SJaiprakash Singh union ody_tad_cmn_msmon_cfg_csu_ctl_ns {
1185*4b8b8d74SJaiprakash Singh uint64_t u;
1186*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_msmon_cfg_csu_ctl_ns_s {
1187*4b8b8d74SJaiprakash Singh uint64_t monitor_type : 8;
1188*4b8b8d74SJaiprakash Singh uint64_t reserved_8_15 : 8;
1189*4b8b8d74SJaiprakash Singh uint64_t match_partid : 1;
1190*4b8b8d74SJaiprakash Singh uint64_t match_pmg : 1;
1191*4b8b8d74SJaiprakash Singh uint64_t reserved_18_19 : 2;
1192*4b8b8d74SJaiprakash Singh uint64_t subtype : 4;
1193*4b8b8d74SJaiprakash Singh uint64_t oflow_frz : 1;
1194*4b8b8d74SJaiprakash Singh uint64_t oflow_intr : 1;
1195*4b8b8d74SJaiprakash Singh uint64_t oflow_status : 1;
1196*4b8b8d74SJaiprakash Singh uint64_t capt_reset : 1;
1197*4b8b8d74SJaiprakash Singh uint64_t capt_evnt : 3;
1198*4b8b8d74SJaiprakash Singh uint64_t en : 1;
1199*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
1200*4b8b8d74SJaiprakash Singh } s;
1201*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_msmon_cfg_csu_ctl_ns_s cn; */
1202*4b8b8d74SJaiprakash Singh };
1203*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_msmon_cfg_csu_ctl_ns ody_tad_cmn_msmon_cfg_csu_ctl_ns_t;
1204*4b8b8d74SJaiprakash Singh
1205*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MSMON_CFG_CSU_CTL_NS ODY_TAD_CMN_MSMON_CFG_CSU_CTL_NS_FUNC()
1206*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_CSU_CTL_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MSMON_CFG_CSU_CTL_NS_FUNC(void)1207*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_CSU_CTL_NS_FUNC(void)
1208*4b8b8d74SJaiprakash Singh {
1209*4b8b8d74SJaiprakash Singh return 0x87e053010818ll;
1210*4b8b8d74SJaiprakash Singh }
1211*4b8b8d74SJaiprakash Singh
1212*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_NS ody_tad_cmn_msmon_cfg_csu_ctl_ns_t
1213*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_NS CSR_TYPE_RSL
1214*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_NS "TAD_CMN_MSMON_CFG_CSU_CTL_NS"
1215*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_NS 0x0 /* PF_BAR0 */
1216*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_NS 0
1217*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_NS -1, -1, -1, -1
1218*4b8b8d74SJaiprakash Singh
1219*4b8b8d74SJaiprakash Singh /**
1220*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_msmon_cfg_csu_ctl_s
1221*4b8b8d74SJaiprakash Singh *
1222*4b8b8d74SJaiprakash Singh * MPAM Memory System Monitor Configure Cache Storage Usage Monitor Control Register
1223*4b8b8d74SJaiprakash Singh * Controls the CSU monitor selected by TAD_CMN_MSMON_CFG_MON_SEL_S.
1224*4b8b8d74SJaiprakash Singh * TAD_CMN_MSMON_CFG_CSU_CTL_S controls secure cache storage usage monitor instance
1225*4b8b8d74SJaiprakash Singh * selected by the secure instance of TAD_CMN_MSMON_CFG_MON_SEL_S.
1226*4b8b8d74SJaiprakash Singh */
1227*4b8b8d74SJaiprakash Singh union ody_tad_cmn_msmon_cfg_csu_ctl_s {
1228*4b8b8d74SJaiprakash Singh uint64_t u;
1229*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_msmon_cfg_csu_ctl_s_s {
1230*4b8b8d74SJaiprakash Singh uint64_t monitor_type : 8;
1231*4b8b8d74SJaiprakash Singh uint64_t reserved_8_15 : 8;
1232*4b8b8d74SJaiprakash Singh uint64_t match_partid : 1;
1233*4b8b8d74SJaiprakash Singh uint64_t match_pmg : 1;
1234*4b8b8d74SJaiprakash Singh uint64_t reserved_18_19 : 2;
1235*4b8b8d74SJaiprakash Singh uint64_t subtype : 4;
1236*4b8b8d74SJaiprakash Singh uint64_t oflow_frz : 1;
1237*4b8b8d74SJaiprakash Singh uint64_t oflow_intr : 1;
1238*4b8b8d74SJaiprakash Singh uint64_t oflow_status : 1;
1239*4b8b8d74SJaiprakash Singh uint64_t capt_reset : 1;
1240*4b8b8d74SJaiprakash Singh uint64_t capt_evnt : 3;
1241*4b8b8d74SJaiprakash Singh uint64_t en : 1;
1242*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
1243*4b8b8d74SJaiprakash Singh } s;
1244*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_msmon_cfg_csu_ctl_s_s cn; */
1245*4b8b8d74SJaiprakash Singh };
1246*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_msmon_cfg_csu_ctl_s ody_tad_cmn_msmon_cfg_csu_ctl_s_t;
1247*4b8b8d74SJaiprakash Singh
1248*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MSMON_CFG_CSU_CTL_S ODY_TAD_CMN_MSMON_CFG_CSU_CTL_S_FUNC()
1249*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_CSU_CTL_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MSMON_CFG_CSU_CTL_S_FUNC(void)1250*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_CSU_CTL_S_FUNC(void)
1251*4b8b8d74SJaiprakash Singh {
1252*4b8b8d74SJaiprakash Singh return 0x87e053020818ll;
1253*4b8b8d74SJaiprakash Singh }
1254*4b8b8d74SJaiprakash Singh
1255*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_S ody_tad_cmn_msmon_cfg_csu_ctl_s_t
1256*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_S CSR_TYPE_RSL
1257*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_S "TAD_CMN_MSMON_CFG_CSU_CTL_S"
1258*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_S 0x0 /* PF_BAR0 */
1259*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_S 0
1260*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MSMON_CFG_CSU_CTL_S -1, -1, -1, -1
1261*4b8b8d74SJaiprakash Singh
1262*4b8b8d74SJaiprakash Singh /**
1263*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_msmon_cfg_csu_flt_ns
1264*4b8b8d74SJaiprakash Singh *
1265*4b8b8d74SJaiprakash Singh * MPAM Memory System Monitor Configure Cache Storage Usage Monitor Filter Register
1266*4b8b8d74SJaiprakash Singh * Configures PARTID and PMG to measure or count in the CSU monitor selected by
1267*4b8b8d74SJaiprakash Singh * TAD_CMN_MSMON_CFG_MON_SEL_NS.
1268*4b8b8d74SJaiprakash Singh * TAD_CMN_MSMON_CFG_CSU_CTL_NS sets filter conditions for the Non-secure cache storage
1269*4b8b8d74SJaiprakash Singh * usage monitor instance
1270*4b8b8d74SJaiprakash Singh * selected by the Non-secure instance of TAD_CMN_MSMON_CFG_MON_SEL_NS.
1271*4b8b8d74SJaiprakash Singh */
1272*4b8b8d74SJaiprakash Singh union ody_tad_cmn_msmon_cfg_csu_flt_ns {
1273*4b8b8d74SJaiprakash Singh uint64_t u;
1274*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_msmon_cfg_csu_flt_ns_s {
1275*4b8b8d74SJaiprakash Singh uint64_t partid : 16;
1276*4b8b8d74SJaiprakash Singh uint64_t pmg : 8;
1277*4b8b8d74SJaiprakash Singh uint64_t reserved_24_63 : 40;
1278*4b8b8d74SJaiprakash Singh } s;
1279*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_msmon_cfg_csu_flt_ns_s cn; */
1280*4b8b8d74SJaiprakash Singh };
1281*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_msmon_cfg_csu_flt_ns ody_tad_cmn_msmon_cfg_csu_flt_ns_t;
1282*4b8b8d74SJaiprakash Singh
1283*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MSMON_CFG_CSU_FLT_NS ODY_TAD_CMN_MSMON_CFG_CSU_FLT_NS_FUNC()
1284*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_CSU_FLT_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MSMON_CFG_CSU_FLT_NS_FUNC(void)1285*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_CSU_FLT_NS_FUNC(void)
1286*4b8b8d74SJaiprakash Singh {
1287*4b8b8d74SJaiprakash Singh return 0x87e053010810ll;
1288*4b8b8d74SJaiprakash Singh }
1289*4b8b8d74SJaiprakash Singh
1290*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_NS ody_tad_cmn_msmon_cfg_csu_flt_ns_t
1291*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_NS CSR_TYPE_RSL
1292*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_NS "TAD_CMN_MSMON_CFG_CSU_FLT_NS"
1293*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_NS 0x0 /* PF_BAR0 */
1294*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_NS 0
1295*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_NS -1, -1, -1, -1
1296*4b8b8d74SJaiprakash Singh
1297*4b8b8d74SJaiprakash Singh /**
1298*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_msmon_cfg_csu_flt_s
1299*4b8b8d74SJaiprakash Singh *
1300*4b8b8d74SJaiprakash Singh * MPAM Memory System Monitor Configure Cache Storage Usage Monitor Filter Register
1301*4b8b8d74SJaiprakash Singh * Configures PARTID and PMG to measure or count in the CSU monitor selected by
1302*4b8b8d74SJaiprakash Singh * TAD_CMN_MSMON_CFG_MON_SEL_S.
1303*4b8b8d74SJaiprakash Singh * TAD_CMN_MSMON_CFG_CSU_CTL_S sets filter conditions for the secure cache storage
1304*4b8b8d74SJaiprakash Singh * usage monitor instance
1305*4b8b8d74SJaiprakash Singh * selected by the secure instance of TAD_CMN_MSMON_CFG_MON_SEL_S.
1306*4b8b8d74SJaiprakash Singh */
1307*4b8b8d74SJaiprakash Singh union ody_tad_cmn_msmon_cfg_csu_flt_s {
1308*4b8b8d74SJaiprakash Singh uint64_t u;
1309*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_msmon_cfg_csu_flt_s_s {
1310*4b8b8d74SJaiprakash Singh uint64_t partid : 16;
1311*4b8b8d74SJaiprakash Singh uint64_t pmg : 8;
1312*4b8b8d74SJaiprakash Singh uint64_t reserved_24_63 : 40;
1313*4b8b8d74SJaiprakash Singh } s;
1314*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_msmon_cfg_csu_flt_s_s cn; */
1315*4b8b8d74SJaiprakash Singh };
1316*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_msmon_cfg_csu_flt_s ody_tad_cmn_msmon_cfg_csu_flt_s_t;
1317*4b8b8d74SJaiprakash Singh
1318*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MSMON_CFG_CSU_FLT_S ODY_TAD_CMN_MSMON_CFG_CSU_FLT_S_FUNC()
1319*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_CSU_FLT_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MSMON_CFG_CSU_FLT_S_FUNC(void)1320*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_CSU_FLT_S_FUNC(void)
1321*4b8b8d74SJaiprakash Singh {
1322*4b8b8d74SJaiprakash Singh return 0x87e053020810ll;
1323*4b8b8d74SJaiprakash Singh }
1324*4b8b8d74SJaiprakash Singh
1325*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_S ody_tad_cmn_msmon_cfg_csu_flt_s_t
1326*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_S CSR_TYPE_RSL
1327*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_S "TAD_CMN_MSMON_CFG_CSU_FLT_S"
1328*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_S 0x0 /* PF_BAR0 */
1329*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_S 0
1330*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MSMON_CFG_CSU_FLT_S -1, -1, -1, -1
1331*4b8b8d74SJaiprakash Singh
1332*4b8b8d74SJaiprakash Singh /**
1333*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_msmon_cfg_mon_sel_ns
1334*4b8b8d74SJaiprakash Singh *
1335*4b8b8d74SJaiprakash Singh * MPAM Monitor Instance Selection Register
1336*4b8b8d74SJaiprakash Singh * Selects a monitor instance to access through the MSMON configuration and counter
1337*4b8b8d74SJaiprakash Singh * registers. TAD_CMN_MSMON_CFG_MON_SEL_NS selects a Non-secure monitor instance
1338*4b8b8d74SJaiprakash Singh * to access via the Non-secure MPAM feature page.
1339*4b8b8d74SJaiprakash Singh *
1340*4b8b8d74SJaiprakash Singh * To configure a monitor, set MON_SEL in this register to the index of the monitor
1341*4b8b8d74SJaiprakash Singh * instance to configure, then write to the MSMON_CFG_x register to set the
1342*4b8b8d74SJaiprakash Singh * configuration of the monitor. At a later time, read the monitor register (for
1343*4b8b8d74SJaiprakash Singh * example TAD_MSMON_CSU_NS) to get the value of the monitor.
1344*4b8b8d74SJaiprakash Singh */
1345*4b8b8d74SJaiprakash Singh union ody_tad_cmn_msmon_cfg_mon_sel_ns {
1346*4b8b8d74SJaiprakash Singh uint64_t u;
1347*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_msmon_cfg_mon_sel_ns_s {
1348*4b8b8d74SJaiprakash Singh uint64_t mon_sel : 16;
1349*4b8b8d74SJaiprakash Singh uint64_t reserved_16_23 : 8;
1350*4b8b8d74SJaiprakash Singh uint64_t ris : 4;
1351*4b8b8d74SJaiprakash Singh uint64_t reserved_28_63 : 36;
1352*4b8b8d74SJaiprakash Singh } s;
1353*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_msmon_cfg_mon_sel_ns_s cn; */
1354*4b8b8d74SJaiprakash Singh };
1355*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_msmon_cfg_mon_sel_ns ody_tad_cmn_msmon_cfg_mon_sel_ns_t;
1356*4b8b8d74SJaiprakash Singh
1357*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MSMON_CFG_MON_SEL_NS ODY_TAD_CMN_MSMON_CFG_MON_SEL_NS_FUNC()
1358*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_MON_SEL_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MSMON_CFG_MON_SEL_NS_FUNC(void)1359*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_MON_SEL_NS_FUNC(void)
1360*4b8b8d74SJaiprakash Singh {
1361*4b8b8d74SJaiprakash Singh return 0x87e053010800ll;
1362*4b8b8d74SJaiprakash Singh }
1363*4b8b8d74SJaiprakash Singh
1364*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MSMON_CFG_MON_SEL_NS ody_tad_cmn_msmon_cfg_mon_sel_ns_t
1365*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MSMON_CFG_MON_SEL_NS CSR_TYPE_RSL
1366*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MSMON_CFG_MON_SEL_NS "TAD_CMN_MSMON_CFG_MON_SEL_NS"
1367*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MSMON_CFG_MON_SEL_NS 0x0 /* PF_BAR0 */
1368*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MSMON_CFG_MON_SEL_NS 0
1369*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MSMON_CFG_MON_SEL_NS -1, -1, -1, -1
1370*4b8b8d74SJaiprakash Singh
1371*4b8b8d74SJaiprakash Singh /**
1372*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_msmon_cfg_mon_sel_s
1373*4b8b8d74SJaiprakash Singh *
1374*4b8b8d74SJaiprakash Singh * MPAM Monitor Instance Selection Register
1375*4b8b8d74SJaiprakash Singh * Selects a monitor instance to access through the MSMON configuration and counter
1376*4b8b8d74SJaiprakash Singh * registers. TAD_CMN_MSMON_CFG_MON_SEL_S selects a secure monitor instance
1377*4b8b8d74SJaiprakash Singh * to access via the secure MPAM feature page.
1378*4b8b8d74SJaiprakash Singh *
1379*4b8b8d74SJaiprakash Singh * To configure a monitor, set MON_SEL in this register to the index of the monitor
1380*4b8b8d74SJaiprakash Singh * instance to configure, then write to the MSMON_CFG_x register to set the
1381*4b8b8d74SJaiprakash Singh * configuration of the monitor. At a later time, read the monitor register (for
1382*4b8b8d74SJaiprakash Singh * example TAD_MSMON_CSU_S) to get the value of the monitor.
1383*4b8b8d74SJaiprakash Singh */
1384*4b8b8d74SJaiprakash Singh union ody_tad_cmn_msmon_cfg_mon_sel_s {
1385*4b8b8d74SJaiprakash Singh uint64_t u;
1386*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_msmon_cfg_mon_sel_s_s {
1387*4b8b8d74SJaiprakash Singh uint64_t mon_sel : 16;
1388*4b8b8d74SJaiprakash Singh uint64_t reserved_16_23 : 8;
1389*4b8b8d74SJaiprakash Singh uint64_t ris : 4;
1390*4b8b8d74SJaiprakash Singh uint64_t reserved_28_63 : 36;
1391*4b8b8d74SJaiprakash Singh } s;
1392*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_msmon_cfg_mon_sel_s_s cn; */
1393*4b8b8d74SJaiprakash Singh };
1394*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_msmon_cfg_mon_sel_s ody_tad_cmn_msmon_cfg_mon_sel_s_t;
1395*4b8b8d74SJaiprakash Singh
1396*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MSMON_CFG_MON_SEL_S ODY_TAD_CMN_MSMON_CFG_MON_SEL_S_FUNC()
1397*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_MON_SEL_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MSMON_CFG_MON_SEL_S_FUNC(void)1398*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CFG_MON_SEL_S_FUNC(void)
1399*4b8b8d74SJaiprakash Singh {
1400*4b8b8d74SJaiprakash Singh return 0x87e053020800ll;
1401*4b8b8d74SJaiprakash Singh }
1402*4b8b8d74SJaiprakash Singh
1403*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MSMON_CFG_MON_SEL_S ody_tad_cmn_msmon_cfg_mon_sel_s_t
1404*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MSMON_CFG_MON_SEL_S CSR_TYPE_RSL
1405*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MSMON_CFG_MON_SEL_S "TAD_CMN_MSMON_CFG_MON_SEL_S"
1406*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MSMON_CFG_MON_SEL_S 0x0 /* PF_BAR0 */
1407*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MSMON_CFG_MON_SEL_S 0
1408*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MSMON_CFG_MON_SEL_S -1, -1, -1, -1
1409*4b8b8d74SJaiprakash Singh
1410*4b8b8d74SJaiprakash Singh /**
1411*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_msmon_csu_ns
1412*4b8b8d74SJaiprakash Singh *
1413*4b8b8d74SJaiprakash Singh * MPAM Cache Storage Usage Monitor Register
1414*4b8b8d74SJaiprakash Singh * Accesses the CSU monitor selected by TAD_CMN_MSMON_CFG_MON_SEL_NS.
1415*4b8b8d74SJaiprakash Singh * TAD_MSMON_CSU_NS is the Non-secure cache storage usage monitor instance selected by the
1416*4b8b8d74SJaiprakash Singh * Non-secure instance of TAD_CMN_MSMON_CFG_MON_SEL_NS.
1417*4b8b8d74SJaiprakash Singh */
1418*4b8b8d74SJaiprakash Singh union ody_tad_cmn_msmon_csu_ns {
1419*4b8b8d74SJaiprakash Singh uint64_t u;
1420*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_msmon_csu_ns_s {
1421*4b8b8d74SJaiprakash Singh uint64_t value : 31;
1422*4b8b8d74SJaiprakash Singh uint64_t nrdy : 1;
1423*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
1424*4b8b8d74SJaiprakash Singh } s;
1425*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_msmon_csu_ns_s cn; */
1426*4b8b8d74SJaiprakash Singh };
1427*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_msmon_csu_ns ody_tad_cmn_msmon_csu_ns_t;
1428*4b8b8d74SJaiprakash Singh
1429*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MSMON_CSU_NS ODY_TAD_CMN_MSMON_CSU_NS_FUNC()
1430*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CSU_NS_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MSMON_CSU_NS_FUNC(void)1431*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CSU_NS_FUNC(void)
1432*4b8b8d74SJaiprakash Singh {
1433*4b8b8d74SJaiprakash Singh return 0x87e053010840ll;
1434*4b8b8d74SJaiprakash Singh }
1435*4b8b8d74SJaiprakash Singh
1436*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MSMON_CSU_NS ody_tad_cmn_msmon_csu_ns_t
1437*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MSMON_CSU_NS CSR_TYPE_RSL
1438*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MSMON_CSU_NS "TAD_CMN_MSMON_CSU_NS"
1439*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MSMON_CSU_NS 0x0 /* PF_BAR0 */
1440*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MSMON_CSU_NS 0
1441*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MSMON_CSU_NS -1, -1, -1, -1
1442*4b8b8d74SJaiprakash Singh
1443*4b8b8d74SJaiprakash Singh /**
1444*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_msmon_csu_s
1445*4b8b8d74SJaiprakash Singh *
1446*4b8b8d74SJaiprakash Singh * MPAM Cache Storage Usage Monitor Register
1447*4b8b8d74SJaiprakash Singh * Accesses the CSU monitor selected by TAD_CMN_MSMON_CFG_MON_SEL_S.
1448*4b8b8d74SJaiprakash Singh * TAD_MSMON_CSU_S is the secure cache storage usage monitor instance selected by the
1449*4b8b8d74SJaiprakash Singh * Non-secure instance of TAD_CMN_MSMON_CFG_MON_SEL_S.
1450*4b8b8d74SJaiprakash Singh */
1451*4b8b8d74SJaiprakash Singh union ody_tad_cmn_msmon_csu_s {
1452*4b8b8d74SJaiprakash Singh uint64_t u;
1453*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_msmon_csu_s_s {
1454*4b8b8d74SJaiprakash Singh uint64_t value : 31;
1455*4b8b8d74SJaiprakash Singh uint64_t nrdy : 1;
1456*4b8b8d74SJaiprakash Singh uint64_t reserved_32_63 : 32;
1457*4b8b8d74SJaiprakash Singh } s;
1458*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_msmon_csu_s_s cn; */
1459*4b8b8d74SJaiprakash Singh };
1460*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_msmon_csu_s ody_tad_cmn_msmon_csu_s_t;
1461*4b8b8d74SJaiprakash Singh
1462*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_MSMON_CSU_S ODY_TAD_CMN_MSMON_CSU_S_FUNC()
1463*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CSU_S_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_MSMON_CSU_S_FUNC(void)1464*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_MSMON_CSU_S_FUNC(void)
1465*4b8b8d74SJaiprakash Singh {
1466*4b8b8d74SJaiprakash Singh return 0x87e053020840ll;
1467*4b8b8d74SJaiprakash Singh }
1468*4b8b8d74SJaiprakash Singh
1469*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_MSMON_CSU_S ody_tad_cmn_msmon_csu_s_t
1470*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_MSMON_CSU_S CSR_TYPE_RSL
1471*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_MSMON_CSU_S "TAD_CMN_MSMON_CSU_S"
1472*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_MSMON_CSU_S 0x0 /* PF_BAR0 */
1473*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_MSMON_CSU_S 0
1474*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_MSMON_CSU_S -1, -1, -1, -1
1475*4b8b8d74SJaiprakash Singh
1476*4b8b8d74SJaiprakash Singh /**
1477*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_req_retry
1478*4b8b8d74SJaiprakash Singh *
1479*4b8b8d74SJaiprakash Singh * TAD Common Request Retry Control Register
1480*4b8b8d74SJaiprakash Singh * Controls TAD Request retry settings.
1481*4b8b8d74SJaiprakash Singh */
1482*4b8b8d74SJaiprakash Singh union ody_tad_cmn_req_retry {
1483*4b8b8d74SJaiprakash Singh uint64_t u;
1484*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_req_retry_s {
1485*4b8b8d74SJaiprakash Singh uint64_t sadr_req_low_wmark : 6;
1486*4b8b8d74SJaiprakash Singh uint64_t sadr_req_high_wmark : 6;
1487*4b8b8d74SJaiprakash Singh uint64_t sadr_pcrdtype_dis : 4;
1488*4b8b8d74SJaiprakash Singh uint64_t max_wait_sbf : 7;
1489*4b8b8d74SJaiprakash Singh uint64_t num_rsvd_sbf : 6;
1490*4b8b8d74SJaiprakash Singh uint64_t reserved_29_63 : 35;
1491*4b8b8d74SJaiprakash Singh } s;
1492*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_req_retry_s cn; */
1493*4b8b8d74SJaiprakash Singh };
1494*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_req_retry ody_tad_cmn_req_retry_t;
1495*4b8b8d74SJaiprakash Singh
1496*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_REQ_RETRY ODY_TAD_CMN_REQ_RETRY_FUNC()
1497*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_REQ_RETRY_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_REQ_RETRY_FUNC(void)1498*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_REQ_RETRY_FUNC(void)
1499*4b8b8d74SJaiprakash Singh {
1500*4b8b8d74SJaiprakash Singh return 0x87e053000018ll;
1501*4b8b8d74SJaiprakash Singh }
1502*4b8b8d74SJaiprakash Singh
1503*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_REQ_RETRY ody_tad_cmn_req_retry_t
1504*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_REQ_RETRY CSR_TYPE_RSL
1505*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_REQ_RETRY "TAD_CMN_REQ_RETRY"
1506*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_REQ_RETRY 0x0 /* PF_BAR0 */
1507*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_REQ_RETRY 0
1508*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_REQ_RETRY -1, -1, -1, -1
1509*4b8b8d74SJaiprakash Singh
1510*4b8b8d74SJaiprakash Singh /**
1511*4b8b8d74SJaiprakash Singh * Register (RSL) tad_cmn_scr_ctl
1512*4b8b8d74SJaiprakash Singh *
1513*4b8b8d74SJaiprakash Singh * TAD Common Scratchpad Control Register
1514*4b8b8d74SJaiprakash Singh * Controls TAD Scratchpad settings.
1515*4b8b8d74SJaiprakash Singh */
1516*4b8b8d74SJaiprakash Singh union ody_tad_cmn_scr_ctl {
1517*4b8b8d74SJaiprakash Singh uint64_t u;
1518*4b8b8d74SJaiprakash Singh struct ody_tad_cmn_scr_ctl_s {
1519*4b8b8d74SJaiprakash Singh uint64_t size : 5;
1520*4b8b8d74SJaiprakash Singh uint64_t disnxm : 1;
1521*4b8b8d74SJaiprakash Singh uint64_t reserved_6_53 : 48;
1522*4b8b8d74SJaiprakash Singh uint64_t chunkways : 5;
1523*4b8b8d74SJaiprakash Singh uint64_t maxsize : 5;
1524*4b8b8d74SJaiprakash Singh } s;
1525*4b8b8d74SJaiprakash Singh /* struct ody_tad_cmn_scr_ctl_s cn; */
1526*4b8b8d74SJaiprakash Singh };
1527*4b8b8d74SJaiprakash Singh typedef union ody_tad_cmn_scr_ctl ody_tad_cmn_scr_ctl_t;
1528*4b8b8d74SJaiprakash Singh
1529*4b8b8d74SJaiprakash Singh #define ODY_TAD_CMN_SCR_CTL ODY_TAD_CMN_SCR_CTL_FUNC()
1530*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_SCR_CTL_FUNC(void) __attribute__ ((pure, always_inline));
ODY_TAD_CMN_SCR_CTL_FUNC(void)1531*4b8b8d74SJaiprakash Singh static inline uint64_t ODY_TAD_CMN_SCR_CTL_FUNC(void)
1532*4b8b8d74SJaiprakash Singh {
1533*4b8b8d74SJaiprakash Singh return 0x87e053000038ll;
1534*4b8b8d74SJaiprakash Singh }
1535*4b8b8d74SJaiprakash Singh
1536*4b8b8d74SJaiprakash Singh #define typedef_ODY_TAD_CMN_SCR_CTL ody_tad_cmn_scr_ctl_t
1537*4b8b8d74SJaiprakash Singh #define bustype_ODY_TAD_CMN_SCR_CTL CSR_TYPE_RSL
1538*4b8b8d74SJaiprakash Singh #define basename_ODY_TAD_CMN_SCR_CTL "TAD_CMN_SCR_CTL"
1539*4b8b8d74SJaiprakash Singh #define device_bar_ODY_TAD_CMN_SCR_CTL 0x0 /* PF_BAR0 */
1540*4b8b8d74SJaiprakash Singh #define busnum_ODY_TAD_CMN_SCR_CTL 0
1541*4b8b8d74SJaiprakash Singh #define arguments_ODY_TAD_CMN_SCR_CTL -1, -1, -1, -1
1542*4b8b8d74SJaiprakash Singh
1543*4b8b8d74SJaiprakash Singh #endif /* __ODY_CSRS_TAD_CMN_H__ */
1544