1 /***************************************************************************//** 2 * \file cyip_main_reg.h 3 * 4 * \brief 5 * MAIN_REG IP definitions 6 * 7 ******************************************************************************** 8 * \copyright 9 * (c) (2016-2024), Cypress Semiconductor Corporation (an Infineon company) or 10 * an affiliate of Cypress Semiconductor Corporation. 11 * 12 * SPDX-License-Identifier: Apache-2.0 13 * 14 * Licensed under the Apache License, Version 2.0 (the "License"); 15 * you may not use this file except in compliance with the License. 16 * You may obtain a copy of the License at 17 * 18 * http://www.apache.org/licenses/LICENSE-2.0 19 * 20 * Unless required by applicable law or agreed to in writing, software 21 * distributed under the License is distributed on an "AS IS" BASIS, 22 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 23 * See the License for the specific language governing permissions and 24 * limitations under the License. 25 *******************************************************************************/ 26 27 #ifndef _CYIP_MAIN_REG_H_ 28 #define _CYIP_MAIN_REG_H_ 29 30 #include "cyip_headers.h" 31 32 /******************************************************************************* 33 * MAIN_REG 34 *******************************************************************************/ 35 36 #define MAIN_REG_TR_GR_SECTION_SIZE 0x00000400UL 37 #define MAIN_REG_TR_ASSIST_GR_SECTION_SIZE 0x00000400UL 38 #define MAIN_REG_SECTION_SIZE 0x00001000UL 39 40 /** 41 * \brief Trigger group (MAIN_REG_TR_GR) 42 */ 43 typedef struct { 44 __IM uint32_t RESERVED[32]; 45 __IOM uint32_t TR_CTL[64]; /*!< 0x00000080 Trigger control register */ 46 __IOM uint32_t TR_CDMA_CTL[16]; /*!< 0x00000180 Central DMA Trigger control register */ 47 __IM uint32_t RESERVED1[144]; 48 } MAIN_REG_TR_GR_V1_Type; /*!< Size = 1024 (0x400) */ 49 50 /** 51 * \brief Trigger Assist - for CDMA triggers (MAIN_REG_TR_ASSIST_GR) 52 */ 53 typedef struct { 54 __IOM uint32_t TRA_CTRL[16]; /*!< 0x00000000 Trigger Assist Control Registers */ 55 __IM uint32_t RESERVED[48]; 56 __IOM uint32_t TRA_SLP_CTRL[16]; /*!< 0x00000100 Trigger Assist Short Length Packet / Zero Length Packet Control */ 57 __IM uint32_t RESERVED1[48]; 58 __IM uint32_t TRA_STAT[16]; /*!< 0x00000200 Trigger Assist Status Registers */ 59 __IM uint32_t RESERVED2[112]; 60 } MAIN_REG_TR_ASSIST_GR_V1_Type; /*!< Size = 1024 (0x400) */ 61 62 /** 63 * \brief HBWSS Main Registers (MAIN_REG) 64 */ 65 typedef struct { 66 __IOM uint32_t CTRL; /*!< 0x00000000 Main Control Register */ 67 __IOM uint32_t HBWSS_SPARE; /*!< 0x00000004 SPARE Config/Status */ 68 __IOM uint32_t SPCTRL; /*!< 0x00000008 SRAM Power Control Register */ 69 __IM uint32_t RESERVED[5]; 70 __IOM uint32_t TR_CMD; /*!< 0x00000020 Trigger command */ 71 __IM uint32_t RESERVED1[7]; 72 __IOM uint32_t TRA_CO_INTR; /*!< 0x00000040 CDMA output tr_assist Interrupt Status */ 73 __IOM uint32_t TRA_CO_INTR_SET; /*!< 0x00000044 CDMA output tr_assist Interrupt Set */ 74 __IOM uint32_t TRA_CO_INTR_MASK; /*!< 0x00000048 CDMA output tr_assist Interrupt Mask */ 75 __IM uint32_t TRA_CO_INTR_MASKED; /*!< 0x0000004C CDMA output tr_assist Interrupt Masked */ 76 __IOM uint32_t DDFT_MUX; /*!< 0x00000050 DDFT0/1 mux selection Register */ 77 __IM uint32_t RESERVED2[235]; 78 MAIN_REG_TR_GR_V1_Type TR_GR[1]; /*!< 0x00000400 Trigger group */ 79 MAIN_REG_TR_ASSIST_GR_V1_Type TR_ASSIST_GR[1]; /*!< 0x00000800 Trigger Assist - for CDMA triggers */ 80 } MAIN_REG_V1_Type; /*!< Size = 3072 (0xC00) */ 81 82 83 /* MAIN_REG_TR_GR.TR_CTL */ 84 #define MAIN_REG_TR_GR_TR_CTL_TR_SEL0_Pos 0UL 85 #define MAIN_REG_TR_GR_TR_CTL_TR_SEL0_Msk 0x7FUL 86 #define MAIN_REG_TR_GR_TR_CTL_TR_SEL1_Pos 7UL 87 #define MAIN_REG_TR_GR_TR_CTL_TR_SEL1_Msk 0x3F80UL 88 #define MAIN_REG_TR_GR_TR_CTL_TR_SEL2_Pos 14UL 89 #define MAIN_REG_TR_GR_TR_CTL_TR_SEL2_Msk 0x1FC000UL 90 #define MAIN_REG_TR_GR_TR_CTL_TR_SEL3_Pos 21UL 91 #define MAIN_REG_TR_GR_TR_CTL_TR_SEL3_Msk 0xFE00000UL 92 #define MAIN_REG_TR_GR_TR_CTL_DBG_FREEZE_EN_Pos 31UL 93 #define MAIN_REG_TR_GR_TR_CTL_DBG_FREEZE_EN_Msk 0x80000000UL 94 /* MAIN_REG_TR_GR.TR_CDMA_CTL */ 95 #define MAIN_REG_TR_GR_TR_CDMA_CTL_TR_SEL0_Pos 0UL 96 #define MAIN_REG_TR_GR_TR_CDMA_CTL_TR_SEL0_Msk 0x7FUL 97 #define MAIN_REG_TR_GR_TR_CDMA_CTL_TR_SEL1_Pos 7UL 98 #define MAIN_REG_TR_GR_TR_CDMA_CTL_TR_SEL1_Msk 0x3F80UL 99 #define MAIN_REG_TR_GR_TR_CDMA_CTL_TR_INV_Pos 17UL 100 #define MAIN_REG_TR_GR_TR_CDMA_CTL_TR_INV_Msk 0x20000UL 101 #define MAIN_REG_TR_GR_TR_CDMA_CTL_TR_EDGE_Pos 18UL 102 #define MAIN_REG_TR_GR_TR_CDMA_CTL_TR_EDGE_Msk 0x40000UL 103 #define MAIN_REG_TR_GR_TR_CDMA_CTL_DBG_FREEZE_EN_Pos 31UL 104 #define MAIN_REG_TR_GR_TR_CDMA_CTL_DBG_FREEZE_EN_Msk 0x80000000UL 105 106 107 /* MAIN_REG_TR_ASSIST_GR.TRA_CTRL */ 108 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_DSCR_NUM_Pos 0UL 109 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_DSCR_NUM_Msk 0xFFFFUL 110 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_STREAM_EN_Pos 16UL 111 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_STREAM_EN_Msk 0x10000UL 112 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_HBWSS_IS_CONS_Pos 20UL 113 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_HBWSS_IS_CONS_Msk 0x100000UL 114 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_PKT_MODE_Pos 21UL 115 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_PKT_MODE_Msk 0x200000UL 116 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_WRAP_UP_SKT_Pos 24UL 117 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_WRAP_UP_SKT_Msk 0x1000000UL 118 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_SUPPR_1ST_TR_Pos 28UL 119 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_SUPPR_1ST_TR_Msk 0x10000000UL 120 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_SUPPR_1ST_INT_Pos 29UL 121 #define MAIN_REG_TR_ASSIST_GR_TRA_CTRL_TRA_SUPPR_1ST_INT_Msk 0x20000000UL 122 /* MAIN_REG_TR_ASSIST_GR.TRA_SLP_CTRL */ 123 #define MAIN_REG_TR_ASSIST_GR_TRA_SLP_CTRL_TRA_SHORT_CONFIG_Pos 0UL 124 #define MAIN_REG_TR_ASSIST_GR_TRA_SLP_CTRL_TRA_SHORT_CONFIG_Msk 0x1UL 125 #define MAIN_REG_TR_ASSIST_GR_TRA_SLP_CTRL_TRA_BYTE_COUNT_Pos 16UL 126 #define MAIN_REG_TR_ASSIST_GR_TRA_SLP_CTRL_TRA_BYTE_COUNT_Msk 0xFFFF0000UL 127 /* MAIN_REG_TR_ASSIST_GR.TRA_STAT */ 128 #define MAIN_REG_TR_ASSIST_GR_TRA_STAT_TRA_STATE_Pos 0UL 129 #define MAIN_REG_TR_ASSIST_GR_TRA_STAT_TRA_STATE_Msk 0xFUL 130 131 132 /* MAIN_REG.CTRL */ 133 #define MAIN_REG_CTRL_DMA_SRC_SEL_Pos 0UL 134 #define MAIN_REG_CTRL_DMA_SRC_SEL_Msk 0x3UL 135 #define MAIN_REG_CTRL_DMA_DIV_SEL_Pos 4UL 136 #define MAIN_REG_CTRL_DMA_DIV_SEL_Msk 0x30UL 137 #define MAIN_REG_CTRL_BUFFSIZE_64KB_EN_Pos 8UL 138 #define MAIN_REG_CTRL_BUFFSIZE_64KB_EN_Msk 0x100UL 139 #define MAIN_REG_CTRL_EVICT_SLOW_AHB_RD_CACHE_Pos 16UL 140 #define MAIN_REG_CTRL_EVICT_SLOW_AHB_RD_CACHE_Msk 0x10000UL 141 #define MAIN_REG_CTRL_EVICT_FAST_AHB_RD_CACHE_Pos 17UL 142 #define MAIN_REG_CTRL_EVICT_FAST_AHB_RD_CACHE_Msk 0x20000UL 143 #define MAIN_REG_CTRL_NUM_SLOW_AHB_STALL_CYCLES_Pos 20UL 144 #define MAIN_REG_CTRL_NUM_SLOW_AHB_STALL_CYCLES_Msk 0x700000UL 145 #define MAIN_REG_CTRL_STALL_SLOW_AHB_WRITE_Pos 23UL 146 #define MAIN_REG_CTRL_STALL_SLOW_AHB_WRITE_Msk 0x800000UL 147 #define MAIN_REG_CTRL_NUM_FAST_AHB_STALL_CYCLES_Pos 24UL 148 #define MAIN_REG_CTRL_NUM_FAST_AHB_STALL_CYCLES_Msk 0x7000000UL 149 #define MAIN_REG_CTRL_STALL_FAST_AHB_WRITE_Pos 27UL 150 #define MAIN_REG_CTRL_STALL_FAST_AHB_WRITE_Msk 0x8000000UL 151 #define MAIN_REG_CTRL_IP_ENABLED_Pos 31UL 152 #define MAIN_REG_CTRL_IP_ENABLED_Msk 0x80000000UL 153 /* MAIN_REG.HBWSS_SPARE */ 154 #define MAIN_REG_HBWSS_SPARE_SPARE_CFG_Pos 0UL 155 #define MAIN_REG_HBWSS_SPARE_SPARE_CFG_Msk 0xFFFFUL 156 /* MAIN_REG.SPCTRL */ 157 #define MAIN_REG_SPCTRL_PWR_MODE_MACRO_0_Pos 0UL 158 #define MAIN_REG_SPCTRL_PWR_MODE_MACRO_0_Msk 0x3UL 159 #define MAIN_REG_SPCTRL_PWR_MODE_MACRO_1_Pos 2UL 160 #define MAIN_REG_SPCTRL_PWR_MODE_MACRO_1_Msk 0xCUL 161 #define MAIN_REG_SPCTRL_PWRUP_DELAY_Pos 8UL 162 #define MAIN_REG_SPCTRL_PWRUP_DELAY_Msk 0x3FF00UL 163 /* MAIN_REG.TR_CMD */ 164 #define MAIN_REG_TR_CMD_TR_SEL_Pos 0UL 165 #define MAIN_REG_TR_CMD_TR_SEL_Msk 0xFFUL 166 #define MAIN_REG_TR_CMD_TRA_MINTENAB_Pos 28UL 167 #define MAIN_REG_TR_CMD_TRA_MINTENAB_Msk 0x10000000UL 168 #define MAIN_REG_TR_CMD_TR_EDGE_Pos 29UL 169 #define MAIN_REG_TR_CMD_TR_EDGE_Msk 0x20000000UL 170 #define MAIN_REG_TR_CMD_OUT_SEL_Pos 30UL 171 #define MAIN_REG_TR_CMD_OUT_SEL_Msk 0x40000000UL 172 #define MAIN_REG_TR_CMD_ACTIVATE_Pos 31UL 173 #define MAIN_REG_TR_CMD_ACTIVATE_Msk 0x80000000UL 174 /* MAIN_REG.TRA_CO_INTR */ 175 #define MAIN_REG_TRA_CO_INTR_OINTR_BITS_Pos 0UL 176 #define MAIN_REG_TRA_CO_INTR_OINTR_BITS_Msk 0xFFFFUL 177 /* MAIN_REG.TRA_CO_INTR_SET */ 178 #define MAIN_REG_TRA_CO_INTR_SET_OINTRS_BITS_Pos 0UL 179 #define MAIN_REG_TRA_CO_INTR_SET_OINTRS_BITS_Msk 0xFFFFUL 180 /* MAIN_REG.TRA_CO_INTR_MASK */ 181 #define MAIN_REG_TRA_CO_INTR_MASK_OINTRM_BITS_Pos 0UL 182 #define MAIN_REG_TRA_CO_INTR_MASK_OINTRM_BITS_Msk 0xFFFFUL 183 /* MAIN_REG.TRA_CO_INTR_MASKED */ 184 #define MAIN_REG_TRA_CO_INTR_MASKED_OINTRMD_BITS_Pos 0UL 185 #define MAIN_REG_TRA_CO_INTR_MASKED_OINTRMD_BITS_Msk 0xFFFFUL 186 /* MAIN_REG.DDFT_MUX */ 187 #define MAIN_REG_DDFT_MUX_TOP_DDFT0_SEL_Pos 0UL 188 #define MAIN_REG_DDFT_MUX_TOP_DDFT0_SEL_Msk 0xFFUL 189 #define MAIN_REG_DDFT_MUX_TOP_DDFT1_SEL_Pos 8UL 190 #define MAIN_REG_DDFT_MUX_TOP_DDFT1_SEL_Msk 0xFF00UL 191 #define MAIN_REG_DDFT_MUX_HS_DDFT0_SEL_Pos 16UL 192 #define MAIN_REG_DDFT_MUX_HS_DDFT0_SEL_Msk 0xFF0000UL 193 #define MAIN_REG_DDFT_MUX_HS_DDFT1_SEL_Pos 24UL 194 #define MAIN_REG_DDFT_MUX_HS_DDFT1_SEL_Msk 0xFF000000UL 195 196 197 #endif /* _CYIP_MAIN_REG_H_ */ 198 199 200 /* [] END OF FILE */ 201