xref: /rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/include/t18x_ari.h (revision 4bd8c929b4bc6e1731c2892b38d4a8c43e8e89dc)
17808b06bSVarun Wadekar /*
250e91633SAnthony Zhou  * Copyright (c) 2016-2017, ARM Limited and Contributors. All rights reserved.
37808b06bSVarun Wadekar  *
482cb2c1aSdp-arm  * SPDX-License-Identifier: BSD-3-Clause
57808b06bSVarun Wadekar  */
67808b06bSVarun Wadekar 
7c3cf06f1SAntonio Nino Diaz #ifndef T18X_ARI_H
8c3cf06f1SAntonio Nino Diaz #define T18X_ARI_H
97808b06bSVarun Wadekar 
107808b06bSVarun Wadekar /*
117808b06bSVarun Wadekar  * ----------------------------------------------------------------------------
127808b06bSVarun Wadekar  * t18x_ari.h
137808b06bSVarun Wadekar  *
147808b06bSVarun Wadekar  * Global ARI definitions.
157808b06bSVarun Wadekar  * ----------------------------------------------------------------------------
167808b06bSVarun Wadekar  */
177808b06bSVarun Wadekar 
187808b06bSVarun Wadekar enum {
1950e91633SAnthony Zhou 	TEGRA_ARI_VERSION_MAJOR = 3U,
2050e91633SAnthony Zhou 	TEGRA_ARI_VERSION_MINOR = 1U,
217808b06bSVarun Wadekar };
227808b06bSVarun Wadekar 
237808b06bSVarun Wadekar typedef enum {
247808b06bSVarun Wadekar 	/* indexes below get the core lock */
2550e91633SAnthony Zhou 	TEGRA_ARI_MISC = 0U,
267808b06bSVarun Wadekar 	/* index 1 is deprecated */
277808b06bSVarun Wadekar 	/* index 2 is deprecated */
287808b06bSVarun Wadekar 	/* index 3 is deprecated */
2950e91633SAnthony Zhou 	TEGRA_ARI_ONLINE_CORE = 4U,
307808b06bSVarun Wadekar 
317808b06bSVarun Wadekar 	/* indexes below need cluster lock */
3250e91633SAnthony Zhou 	TEGRA_ARI_MISC_CLUSTER = 41U,
3350e91633SAnthony Zhou 	TEGRA_ARI_IS_CCX_ALLOWED = 42U,
3450e91633SAnthony Zhou 	TEGRA_ARI_CC3_CTRL = 43U,
357808b06bSVarun Wadekar 
367808b06bSVarun Wadekar 	/* indexes below need ccplex lock */
3750e91633SAnthony Zhou 	TEGRA_ARI_ENTER_CSTATE = 80U,
3850e91633SAnthony Zhou 	TEGRA_ARI_UPDATE_CSTATE_INFO = 81U,
3950e91633SAnthony Zhou 	TEGRA_ARI_IS_SC7_ALLOWED = 82U,
407808b06bSVarun Wadekar 	/* index 83 is deprecated */
4150e91633SAnthony Zhou 	TEGRA_ARI_PERFMON = 84U,
4250e91633SAnthony Zhou 	TEGRA_ARI_UPDATE_CCPLEX_GSC = 85U,
43*1b491eeaSElyes Haouas 	/* index 86 is deprecated */
447808b06bSVarun Wadekar 	/* index 87 is deprecated */
4550e91633SAnthony Zhou 	TEGRA_ARI_ROC_FLUSH_CACHE_ONLY = 88U,
4650e91633SAnthony Zhou 	TEGRA_ARI_ROC_FLUSH_CACHE_TRBITS = 89U,
4750e91633SAnthony Zhou 	TEGRA_ARI_MISC_CCPLEX = 90U,
4850e91633SAnthony Zhou 	TEGRA_ARI_MCA = 91U,
4950e91633SAnthony Zhou 	TEGRA_ARI_UPDATE_CROSSOVER = 92U,
5050e91633SAnthony Zhou 	TEGRA_ARI_CSTATE_STATS = 93U,
5150e91633SAnthony Zhou 	TEGRA_ARI_WRITE_CSTATE_STATS = 94U,
5250e91633SAnthony Zhou 	TEGRA_ARI_COPY_MISCREG_AA64_RST = 95U,
5350e91633SAnthony Zhou 	TEGRA_ARI_ROC_CLEAN_CACHE_ONLY = 96U,
547808b06bSVarun Wadekar } tegra_ari_req_id_t;
557808b06bSVarun Wadekar 
567808b06bSVarun Wadekar typedef enum {
5750e91633SAnthony Zhou 	TEGRA_ARI_MISC_ECHO = 0U,
5850e91633SAnthony Zhou 	TEGRA_ARI_MISC_VERSION = 1U,
5950e91633SAnthony Zhou 	TEGRA_ARI_MISC_FEATURE_LEAF_0 = 2U,
607808b06bSVarun Wadekar } tegra_ari_misc_index_t;
617808b06bSVarun Wadekar 
627808b06bSVarun Wadekar typedef enum {
6350e91633SAnthony Zhou 	TEGRA_ARI_MISC_CCPLEX_SHUTDOWN_POWER_OFF = 0U,
6450e91633SAnthony Zhou 	TEGRA_ARI_MISC_CCPLEX_SHUTDOWN_REBOOT = 1U,
6550e91633SAnthony Zhou 	TEGRA_ARI_MISC_CCPLEX_CORESIGHT_CG_CTRL = 2U,
6650e91633SAnthony Zhou 	TEGRA_ARI_MISC_CCPLEX_EDBGREQ = 3U,
677808b06bSVarun Wadekar } tegra_ari_misc_ccplex_index_t;
687808b06bSVarun Wadekar 
697808b06bSVarun Wadekar typedef enum {
7050e91633SAnthony Zhou 	TEGRA_ARI_CORE_C0 = 0U,
7150e91633SAnthony Zhou 	TEGRA_ARI_CORE_C1 = 1U,
7250e91633SAnthony Zhou 	TEGRA_ARI_CORE_C6 = 6U,
7350e91633SAnthony Zhou 	TEGRA_ARI_CORE_C7 = 7U,
7450e91633SAnthony Zhou 	TEGRA_ARI_CORE_WARMRSTREQ = 8U,
757808b06bSVarun Wadekar } tegra_ari_core_sleep_state_t;
767808b06bSVarun Wadekar 
777808b06bSVarun Wadekar typedef enum {
7850e91633SAnthony Zhou 	TEGRA_ARI_CLUSTER_CC0 = 0U,
7950e91633SAnthony Zhou 	TEGRA_ARI_CLUSTER_CC1 = 1U,
8050e91633SAnthony Zhou 	TEGRA_ARI_CLUSTER_CC6 = 6U,
8150e91633SAnthony Zhou 	TEGRA_ARI_CLUSTER_CC7 = 7U,
827808b06bSVarun Wadekar } tegra_ari_cluster_sleep_state_t;
837808b06bSVarun Wadekar 
847808b06bSVarun Wadekar typedef enum {
8550e91633SAnthony Zhou 	TEGRA_ARI_CCPLEX_CCP0 = 0U,
8650e91633SAnthony Zhou 	TEGRA_ARI_CCPLEX_CCP1 = 1U,
8750e91633SAnthony Zhou 	TEGRA_ARI_CCPLEX_CCP3 = 3U,  /* obsoleted */
887808b06bSVarun Wadekar } tegra_ari_ccplex_sleep_state_t;
897808b06bSVarun Wadekar 
907808b06bSVarun Wadekar typedef enum {
9150e91633SAnthony Zhou 	TEGRA_ARI_SYSTEM_SC0 = 0U,
9250e91633SAnthony Zhou 	TEGRA_ARI_SYSTEM_SC1 = 1U,  /* obsoleted */
9350e91633SAnthony Zhou 	TEGRA_ARI_SYSTEM_SC2 = 2U,  /* obsoleted */
9450e91633SAnthony Zhou 	TEGRA_ARI_SYSTEM_SC3 = 3U,  /* obsoleted */
9550e91633SAnthony Zhou 	TEGRA_ARI_SYSTEM_SC4 = 4U,  /* obsoleted */
9650e91633SAnthony Zhou 	TEGRA_ARI_SYSTEM_SC7 = 7U,
9750e91633SAnthony Zhou 	TEGRA_ARI_SYSTEM_SC8 = 8U,
987808b06bSVarun Wadekar } tegra_ari_system_sleep_state_t;
997808b06bSVarun Wadekar 
1007808b06bSVarun Wadekar typedef enum {
10150e91633SAnthony Zhou 	TEGRA_ARI_CROSSOVER_C1_C6 = 0U,
10250e91633SAnthony Zhou 	TEGRA_ARI_CROSSOVER_CC1_CC6 = 1U,
10350e91633SAnthony Zhou 	TEGRA_ARI_CROSSOVER_CC1_CC7 = 2U,
10450e91633SAnthony Zhou 	TEGRA_ARI_CROSSOVER_CCP1_CCP3 = 3U,  /* obsoleted */
10550e91633SAnthony Zhou 	TEGRA_ARI_CROSSOVER_CCP3_SC2 = 4U,  /* obsoleted */
10650e91633SAnthony Zhou 	TEGRA_ARI_CROSSOVER_CCP3_SC3 = 5U,  /* obsoleted */
10750e91633SAnthony Zhou 	TEGRA_ARI_CROSSOVER_CCP3_SC4 = 6U,  /* obsoleted */
10850e91633SAnthony Zhou 	TEGRA_ARI_CROSSOVER_CCP3_SC7 = 7U,  /* obsoleted */
10950e91633SAnthony Zhou 	TEGRA_ARI_CROSSOVER_SC0_SC7 = 7U,
11050e91633SAnthony Zhou 	TEGRA_ARI_CROSSOVER_CCP3_SC1 = 8U,  /* obsoleted */
1117808b06bSVarun Wadekar } tegra_ari_crossover_index_t;
1127808b06bSVarun Wadekar 
1137808b06bSVarun Wadekar typedef enum {
11450e91633SAnthony Zhou 	TEGRA_ARI_CSTATE_STATS_CLEAR = 0U,
11550e91633SAnthony Zhou 	TEGRA_ARI_CSTATE_STATS_SC7_ENTRIES = 1U,
116ac26b96bSKrishna Sitaraman 	TEGRA_ARI_CSTATE_STATS_SC4_ENTRIES, /* obsoleted */
117ac26b96bSKrishna Sitaraman 	TEGRA_ARI_CSTATE_STATS_SC3_ENTRIES, /* obsoleted */
118ac26b96bSKrishna Sitaraman 	TEGRA_ARI_CSTATE_STATS_SC2_ENTRIES, /* obsoleted */
119ac26b96bSKrishna Sitaraman 	TEGRA_ARI_CSTATE_STATS_CCP3_ENTRIES, /* obsoleted */
1207808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_A57_CC6_ENTRIES,
1217808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_A57_CC7_ENTRIES,
1227808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_D15_CC6_ENTRIES,
1237808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_D15_CC7_ENTRIES,
1247808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_D15_0_C6_ENTRIES,
1257808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_D15_1_C6_ENTRIES,
12650e91633SAnthony Zhou 	TEGRA_ARI_CSTATE_STATS_D15_0_C7_ENTRIES = 14U,
1277808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_D15_1_C7_ENTRIES,
12850e91633SAnthony Zhou 	TEGRA_ARI_CSTATE_STATS_A57_0_C7_ENTRIES = 18U,
1297808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_A57_1_C7_ENTRIES,
1307808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_A57_2_C7_ENTRIES,
1317808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_A57_3_C7_ENTRIES,
1327808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_LAST_CSTATE_ENTRY_D15_0,
1337808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_LAST_CSTATE_ENTRY_D15_1,
13450e91633SAnthony Zhou 	TEGRA_ARI_CSTATE_STATS_LAST_CSTATE_ENTRY_A57_0 = 26U,
1357808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_LAST_CSTATE_ENTRY_A57_1,
1367808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_LAST_CSTATE_ENTRY_A57_2,
1377808b06bSVarun Wadekar 	TEGRA_ARI_CSTATE_STATS_LAST_CSTATE_ENTRY_A57_3,
1387808b06bSVarun Wadekar } tegra_ari_cstate_stats_index_t;
1397808b06bSVarun Wadekar 
1407808b06bSVarun Wadekar typedef enum {
14150e91633SAnthony Zhou 	TEGRA_ARI_GSC_ALL = 0U,
14250e91633SAnthony Zhou 	TEGRA_ARI_GSC_BPMP = 6U,
14350e91633SAnthony Zhou 	TEGRA_ARI_GSC_APE = 7U,
14450e91633SAnthony Zhou 	TEGRA_ARI_GSC_SPE = 8U,
14550e91633SAnthony Zhou 	TEGRA_ARI_GSC_SCE = 9U,
14650e91633SAnthony Zhou 	TEGRA_ARI_GSC_APR = 10U,
14750e91633SAnthony Zhou 	TEGRA_ARI_GSC_TZRAM = 11U,
14850e91633SAnthony Zhou 	TEGRA_ARI_GSC_SE = 12U,
14950e91633SAnthony Zhou 	TEGRA_ARI_GSC_BPMP_TO_SPE = 16U,
15050e91633SAnthony Zhou 	TEGRA_ARI_GSC_SPE_TO_BPMP = 17U,
15150e91633SAnthony Zhou 	TEGRA_ARI_GSC_CPU_TZ_TO_BPMP = 18U,
15250e91633SAnthony Zhou 	TEGRA_ARI_GSC_BPMP_TO_CPU_TZ = 19U,
15350e91633SAnthony Zhou 	TEGRA_ARI_GSC_CPU_NS_TO_BPMP = 20U,
15450e91633SAnthony Zhou 	TEGRA_ARI_GSC_BPMP_TO_CPU_NS = 21U,
15550e91633SAnthony Zhou 	TEGRA_ARI_GSC_IPC_SE_SPE_SCE_BPMP = 22U,
15650e91633SAnthony Zhou 	TEGRA_ARI_GSC_SC7_RESUME_FW = 23U,
15750e91633SAnthony Zhou 	TEGRA_ARI_GSC_TZ_DRAM_IDX = 34U,
15850e91633SAnthony Zhou 	TEGRA_ARI_GSC_VPR_IDX = 35U,
1597808b06bSVarun Wadekar } tegra_ari_gsc_index_t;
1607808b06bSVarun Wadekar 
1617808b06bSVarun Wadekar /* This macro will produce enums for __name##_LSB, __name##_MSB and __name##_MSK */
1627808b06bSVarun Wadekar #define TEGRA_ARI_ENUM_MASK_LSB_MSB(__name, __lsb, __msb) __name##_LSB = __lsb, __name##_MSB = __msb
1637808b06bSVarun Wadekar 
1647808b06bSVarun Wadekar typedef enum {
16550e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_UPDATE_CSTATE_INFO__CLUSTER_CSTATE, 0U, 2U),
16650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_UPDATE_CSTATE_INFO__CLUSTER_CSTATE_PRESENT, 7U, 7U),
16750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_UPDATE_CSTATE_INFO__CCPLEX_CSTATE, 8U, 9U),
16850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_UPDATE_CSTATE_INFO__CCPLEX_CSTATE_PRESENT, 15U, 15U),
16950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_UPDATE_CSTATE_INFO__SYSTEM_CSTATE, 16U, 19U),
17050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_UPDATE_CSTATE_INFO__IGNORE_CROSSOVERS, 22U, 22U),
17150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_UPDATE_CSTATE_INFO__SYSTEM_CSTATE_PRESENT, 23U, 23U),
17250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_UPDATE_CSTATE_INFO__WAKE_MASK_PRESENT, 31U, 31U),
1737808b06bSVarun Wadekar } tegra_ari_update_cstate_info_bitmasks_t;
1747808b06bSVarun Wadekar 
1757808b06bSVarun Wadekar typedef enum {
17650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MISC_CCPLEX_CORESIGHT_CG_CTRL__EN, 0U, 0U),
1777808b06bSVarun Wadekar } tegra_ari_misc_ccplex_bitmasks_t;
1787808b06bSVarun Wadekar 
1797808b06bSVarun Wadekar typedef enum {
18050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_CC3_CTRL__IDLE_FREQ, 0U, 8U),
18150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_CC3_CTRL__IDLE_VOLT, 16U, 23U),
18250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_CC3_CTRL__ENABLE, 31U, 31U),
1837808b06bSVarun Wadekar } tegra_ari_cc3_ctrl_bitmasks_t;
1847808b06bSVarun Wadekar 
1857808b06bSVarun Wadekar typedef enum {
18650e91633SAnthony Zhou 	TEGRA_ARI_MCA_NOP = 0U,
18750e91633SAnthony Zhou 	TEGRA_ARI_MCA_READ_SERR = 1U,
18850e91633SAnthony Zhou 	TEGRA_ARI_MCA_WRITE_SERR = 2U,
18950e91633SAnthony Zhou 	TEGRA_ARI_MCA_CLEAR_SERR = 4U,
19050e91633SAnthony Zhou 	TEGRA_ARI_MCA_REPORT_SERR = 5U,
19150e91633SAnthony Zhou 	TEGRA_ARI_MCA_READ_INTSTS = 6U,
19250e91633SAnthony Zhou 	TEGRA_ARI_MCA_WRITE_INTSTS = 7U,
19350e91633SAnthony Zhou 	TEGRA_ARI_MCA_READ_PREBOOT_SERR = 8U,
1947808b06bSVarun Wadekar } tegra_ari_mca_commands_t;
1957808b06bSVarun Wadekar 
1967808b06bSVarun Wadekar typedef enum {
19750e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_DPMU = 0U,
19850e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_IOB = 1U,
19950e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_MCB = 2U,
20050e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_CCE = 3U,
20150e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_CQX = 4U,
20250e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_CTU = 5U,
20350e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_JSR_MTS = 7U,
20450e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_BANK_INFO = 0x0fU,
20550e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_BANK_TEMPLATE = 0x10U,
20650e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_SECURE_ACCESS_REGISTER = 0x11U,
20750e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_GLOBAL_CONFIG_REGISTER = 0x12U,
2087808b06bSVarun Wadekar } tegra_ari_mca_rd_wr_indexes_t;
2097808b06bSVarun Wadekar 
2107808b06bSVarun Wadekar typedef enum {
21150e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_ASERRX_CTRL = 0U,
21250e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_ASERRX_STATUS = 1U,
21350e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_ASERRX_ADDR = 2U,
21450e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_ASERRX_MISC1 = 3U,
21550e91633SAnthony Zhou 	TEGRA_ARI_MCA_RD_WR_ASERRX_MISC2 = 4U,
2167808b06bSVarun Wadekar } tegra_ari_mca_read_asserx_subindexes_t;
2177808b06bSVarun Wadekar 
2187808b06bSVarun Wadekar typedef enum {
21950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SECURE_REGISTER_SETTING_ENABLES_NS_PERMITTED, 0U, 0U),
22050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SECURE_REGISTER_READING_STATUS_NS_PERMITTED, 1U, 1U),
22150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SECURE_REGISTER_PENDING_MCA_ERRORS_NS_PERMITTED, 2U, 2U),
22250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SECURE_REGISTER_CLEARING_MCA_INTERRUPTS_NS_PERMITTED, 3U, 3U),
2237808b06bSVarun Wadekar } tegra_ari_mca_secure_register_bitmasks_t;
2247808b06bSVarun Wadekar 
2257808b06bSVarun Wadekar typedef enum {
22650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_SERR_ERR_CODE, 0U, 15U),
22750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_PWM_ERR, 16U, 16U),
22850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_CRAB_ERR, 17U, 17U),
22950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_RD_WR_N, 18U, 18U),
23050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_UCODE_ERR, 19U, 19U),
23150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_PWM, 20U, 23U),
23250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_AV, 58U, 58U),
23350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_MV, 59U, 59U),
23450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_EN, 60U, 60U),
23550e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_UC, 61U, 61U),
23650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_OVF, 62U, 62U),
23750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_STAT_VAL, 63U, 63U),
2387808b06bSVarun Wadekar 
23950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_ADDR_ADDR, 0U, 41U),
24050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_ADDR_UCODE_ERRCD, 42U, 52U),
2417808b06bSVarun Wadekar 
24250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_CTRL_EN_PWM_ERR, 0U, 0U),
24350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_CTRL_EN_CRAB_ERR, 1U, 1U),
24450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR0_CTRL_EN_UCODE_ERR, 3U, 3U),
2457808b06bSVarun Wadekar } tegra_ari_mca_aserr0_bitmasks_t;
2467808b06bSVarun Wadekar 
2477808b06bSVarun Wadekar typedef enum {
24850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_SERR_ERR_CODE, 0U, 15U),
24950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_MSI_ERR, 16U, 16U),
25050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_IHI_ERR, 17U, 17U),
25150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_CRI_ERR, 18U, 18U),
25250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_MMCRAB_ERR, 19U, 19U),
25350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_CSI_ERR, 20U, 20U),
25450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_RD_WR_N, 21U, 21U),
25550e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_REQ_ERRT, 22U, 23U),
25650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_RESP_ERRT, 24U, 25U),
25750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_AV, 58U, 58U),
25850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_MV, 59U, 59U),
25950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_EN, 60U, 60U),
26050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_UC, 61U, 61U),
26150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_OVF, 62U, 62U),
26250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_VAL, 63U, 63U),
2637808b06bSVarun Wadekar 
26450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_AXI_ID, 0U, 7U),
26550e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_CQX_ID, 8U, 27U),
26650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_CQX_CID, 28U, 31U),
26750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_STAT_CQX_CMD, 32U, 35U),
2687808b06bSVarun Wadekar 
26950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_CTRL_EN_MSI_ERR, 0U, 0U),
27050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_CTRL_EN_IHI_ERR, 1U, 1U),
27150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_CTRL_EN_CRI_ERR, 2U, 2U),
27250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_CTRL_EN_MMCRAB_ERR, 3U, 3U),
27350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_CTRL_EN_CSI_ERR, 4U, 4U),
2747808b06bSVarun Wadekar 
27550e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR1_MISC_ADDR, 0U, 41U),
2767808b06bSVarun Wadekar } tegra_ari_mca_aserr1_bitmasks_t;
2777808b06bSVarun Wadekar 
2787808b06bSVarun Wadekar typedef enum {
27950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_STAT_SERR_ERR_CODE, 0U, 15U),
28050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_STAT_MC_ERR, 16U, 16U),
28150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_STAT_SYSRAM_ERR, 17U, 17U),
28250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_STAT_CLIENT_ID, 18U, 19U),
28350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_STAT_AV, 58U, 58U),
28450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_STAT_MV, 59U, 59U),
28550e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_STAT_EN, 60U, 60U),
28650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_STAT_UC, 61U, 61U),
28750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_STAT_OVF, 62U, 62U),
28850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_STAT_VAL, 63U, 63U),
2897808b06bSVarun Wadekar 
29050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_ADDR_ID, 0U, 17U),
29150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_ADDR_CMD, 18U, 21U),
29250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_ADDR_ADDR, 22U, 53U),
2937808b06bSVarun Wadekar 
29450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR2_CTRL_EN_MC_ERR, 0U, 0U),
2957808b06bSVarun Wadekar } tegra_ari_mca_aserr2_bitmasks_t;
2967808b06bSVarun Wadekar 
2977808b06bSVarun Wadekar typedef enum {
29850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_SERR_ERR_CODE, 0U, 15U),
29950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_TO_ERR, 16U, 16U),
30050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_STAT_ERR, 17U, 17U),
30150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_DST_ERR, 18U, 18U),
30250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_UNC_ERR, 19U, 19U),
30350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_MH_ERR, 20U, 20U),
30450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_PERR, 21U, 21U),
30550e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_PSN_ERR, 22U, 22U),
30650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_AV, 58U, 58U),
30750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_MV, 59U, 59U),
30850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_EN, 60U, 60U),
30950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_UC, 61U, 61U),
31050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_OVF, 62U, 62U),
31150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_STAT_VAL, 63U, 63U),
3127808b06bSVarun Wadekar 
31350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_ADDR_CMD, 0U, 5U),
31450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_ADDR_ADDR, 6U, 47U),
3157808b06bSVarun Wadekar 
31650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_MISC1_TO, 0U, 0U),
31750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_MISC1_DIV4, 1U, 1U),
31850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_MISC1_TLIMIT, 2U, 11U),
31950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_MISC1_PSN_ERR_CORR_MSK, 12U, 25U),
3207808b06bSVarun Wadekar 
32150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_MISC2_MORE_INFO, 0U, 17U),
32250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_MISC2_TO_INFO, 18U, 43U),
32350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_MISC2_SRC, 44U, 45U),
32450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_MISC2_TID, 46U, 52U),
3257808b06bSVarun Wadekar 
32650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_CTRL_EN_TO_ERR, 0U, 0U),
32750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_CTRL_EN_STAT_ERR, 1U, 1U),
32850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_CTRL_EN_DST_ERR, 2U, 2U),
32950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_CTRL_EN_UNC_ERR, 3U, 3U),
33050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_CTRL_EN_MH_ERR, 4U, 4U),
33150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_CTRL_EN_PERR, 5U, 5U),
33250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR3_CTRL_EN_PSN_ERR, 6U, 19U),
3337808b06bSVarun Wadekar } tegra_ari_mca_aserr3_bitmasks_t;
3347808b06bSVarun Wadekar 
3357808b06bSVarun Wadekar typedef enum {
33650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_STAT_SERR_ERR_CODE, 0U, 15U),
33750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_STAT_SRC_ERR, 16U, 16U),
33850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_STAT_DST_ERR, 17U, 17U),
33950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_STAT_REQ_ERR, 18U, 18U),
34050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_STAT_RSP_ERR, 19U, 19U),
34150e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_STAT_AV, 58U, 58U),
34250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_STAT_MV, 59U, 59U),
34350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_STAT_EN, 60U, 60U),
34450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_STAT_UC, 61U, 61U),
34550e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_STAT_OVF, 62U, 62U),
34650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_STAT_VAL, 63U, 63U),
3477808b06bSVarun Wadekar 
34850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR4_CTRL_EN_CPE_ERR, 0U, 0U),
3497808b06bSVarun Wadekar } tegra_ari_mca_aserr4_bitmasks_t;
3507808b06bSVarun Wadekar 
3517808b06bSVarun Wadekar typedef enum {
35250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_STAT_SERR_ERR_CODE, 0U, 15U),
35350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_STAT_CTUPAR, 16U, 16U),
35450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_STAT_MULTI, 17U, 17U),
35550e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_STAT_AV, 58U, 58U),
35650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_STAT_MV, 59U, 59U),
35750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_STAT_EN, 60U, 60U),
35850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_STAT_UC, 61U, 61U),
35950e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_STAT_OVF, 62U, 62U),
36050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_STAT_VAL, 63U, 63U),
3617808b06bSVarun Wadekar 
36250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_ADDR_SRC, 0U, 7U),
36350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_ADDR_ID, 8U, 15U),
36450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_ADDR_DATA, 16U, 26U),
36550e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_ADDR_CMD, 32U, 35U),
36650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_ADDR_ADDR, 36U, 45U),
3677808b06bSVarun Wadekar 
36850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_ASERR5_CTRL_EN_CTUPAR, 0U, 0U),
3697808b06bSVarun Wadekar } tegra_ari_mca_aserr5_bitmasks_t;
3707808b06bSVarun Wadekar 
3716d6bbc88SVarun Wadekar typedef enum {
37250e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SERR1_STAT_SERR_ERR_CODE, 0U, 15U),
37350e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SERR1_STAT_AV, 58U, 58U),
37450e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SERR1_STAT_MV, 59U, 59U),
37550e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SERR1_STAT_EN, 60U, 60U),
37650e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SERR1_STAT_UC, 61U, 61U),
37750e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SERR1_STAT_OVF, 62U, 62U),
37850e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SERR1_STAT_VAL, 63U, 63U),
37950e91633SAnthony Zhou 
38050e91633SAnthony Zhou 	TEGRA_ARI_ENUM_MASK_LSB_MSB(TEGRA_ARI_MCA_SERR1_ADDR_TBD_INFO, 0U, 63U),
3816d6bbc88SVarun Wadekar } tegra_ari_mca_serr1_bitmasks_t;
3826d6bbc88SVarun Wadekar 
3837808b06bSVarun Wadekar #undef TEGRA_ARI_ENUM_MASK_LSB_MSB
3847808b06bSVarun Wadekar 
3857808b06bSVarun Wadekar typedef enum {
38650e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_PMIC = 0U,
38750e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_POWER_PERF = 1U,
38850e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_POWER_MODES = 2U,
38950e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_WAKE_TIME = 3U,
39050e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_INFO = 4U,
39150e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CROSSOVER_C1_C6 = 5U,
39250e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CROSSOVER_CC1_CC6 = 6U,
39350e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CROSSOVER_CC1_CC7 = 7U,
39450e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CROSSOVER_CCP1_CCP3 = 8U,  /* obsoleted */
39550e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CROSSOVER_CCP3_SC2 = 9U,  /* obsoleted */
39650e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CROSSOVER_CCP3_SC3 = 10U,  /* obsoleted */
39750e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CROSSOVER_CCP3_SC4 = 11U,  /* obsoleted */
39850e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CROSSOVER_CCP3_SC7 = 12U,  /* obsoleted */
39950e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CROSSOVER_SC0_SC7 = 12U,
40050e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_CLEAR = 13U,
40150e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_SC7_ENTRIES = 14U,
40250e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_SC4_ENTRIES = 15U,  /* obsoleted */
40350e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_SC3_ENTRIES = 16U,  /* obsoleted */
40450e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_SC2_ENTRIES = 17U,  /* obsoleted */
40550e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_CCP3_ENTRIES = 18U,  /* obsoleted */
40650e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_A57_CC6_ENTRIES = 19U,
40750e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_A57_CC7_ENTRIES = 20U,
40850e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_D15_CC6_ENTRIES = 21U,
40950e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_D15_CC7_ENTRIES = 22U,
41050e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_D15_0_C6_ENTRIES = 23U,
41150e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_D15_1_C6_ENTRIES = 24U,
41250e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_D15_2_C6_ENTRIES = 25U, /* Reserved (for Denver15 core 2) */
41350e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_D15_3_C6_ENTRIES = 26U, /* Reserved (for Denver15 core 3) */
41450e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_D15_0_C7_ENTRIES = 27U,
41550e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_D15_1_C7_ENTRIES = 28U,
41650e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_D15_2_C7_ENTRIES = 29U, /* Reserved (for Denver15 core 2) */
41750e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_D15_3_C7_ENTRIES = 30U, /*  Reserved (for Denver15 core 3) */
41850e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_A57_0_C7_ENTRIES = 31U,
41950e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_A57_1_C7_ENTRIES = 32U,
42050e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_A57_2_C7_ENTRIES = 33U,
42150e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_A57_3_C7_ENTRIES = 34U,
42250e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_LAST_CSTATE_ENTRY_D15_0 = 35U,
42350e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_LAST_CSTATE_ENTRY_D15_1 = 36U,
42450e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_LAST_CSTATE_ENTRY_D15_2 = 37U, /* Reserved (for Denver15 core 2) */
42550e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_LAST_CSTATE_ENTRY_D15_3 = 38U, /*  Reserved (for Denver15 core 3) */
42650e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_LAST_CSTATE_ENTRY_A57_0 = 39U,
42750e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_LAST_CSTATE_ENTRY_A57_1 = 40U,
42850e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_LAST_CSTATE_ENTRY_A57_2 = 41U,
42950e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CSTATE_STATS_LAST_CSTATE_ENTRY_A57_3 = 42U,
43050e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_IS_SC7_ALLOWED = 43U,
43150e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_ONLINE_CORE = 44U,
43250e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CC3_CTRL = 45U,
43350e91633SAnthony Zhou 	TEGRA_NVG_CHANNEL_CROSSOVER_CCP3_SC1 = 46U,  /* obsoleted */
4347808b06bSVarun Wadekar 	TEGRA_NVG_CHANNEL_LAST_INDEX,
4357808b06bSVarun Wadekar } tegra_nvg_channel_id_t;
4367808b06bSVarun Wadekar 
437c3cf06f1SAntonio Nino Diaz #endif /* T18X_ARI_H */
438