30 #ifndef _SAMV71_ISI_COMPONENT_ 31 #define _SAMV71_ISI_COMPONENT_ 39 #if !(defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) 42 __IO uint32_t ISI_CFG1;
43 __IO uint32_t ISI_CFG2;
44 __IO uint32_t ISI_PSIZE;
45 __IO uint32_t ISI_PDECF;
46 __IO uint32_t ISI_Y2R_SET0;
47 __IO uint32_t ISI_Y2R_SET1;
48 __IO uint32_t ISI_R2Y_SET0;
49 __IO uint32_t ISI_R2Y_SET1;
50 __IO uint32_t ISI_R2Y_SET2;
56 __O uint32_t ISI_DMA_CHER;
57 __O uint32_t ISI_DMA_CHDR;
58 __I uint32_t ISI_DMA_CHSR;
59 __IO uint32_t ISI_DMA_P_ADDR;
60 __IO uint32_t ISI_DMA_P_CTRL;
61 __IO uint32_t ISI_DMA_P_DSCR;
62 __IO uint32_t ISI_DMA_C_ADDR;
63 __IO uint32_t ISI_DMA_C_CTRL;
64 __IO uint32_t ISI_DMA_C_DSCR;
65 __I uint32_t Reserved1[34];
66 __IO uint32_t ISI_WPMR;
67 __I uint32_t ISI_WPSR;
68 __I uint32_t Reserved2[4];
73 #define ISI_CFG1_HSYNC_POL (0x1u << 2) 74 #define ISI_CFG1_VSYNC_POL (0x1u << 3) 75 #define ISI_CFG1_PIXCLK_POL (0x1u << 4) 76 #define ISI_CFG1_EMB_SYNC (0x1u << 6) 77 #define ISI_CFG1_CRC_SYNC (0x1u << 7) 78 #define ISI_CFG1_FRATE_Pos 8 79 #define ISI_CFG1_FRATE_Msk (0x7u << ISI_CFG1_FRATE_Pos) 80 #define ISI_CFG1_FRATE(value) ((ISI_CFG1_FRATE_Msk & ((value) << ISI_CFG1_FRATE_Pos))) 81 #define ISI_CFG1_DISCR (0x1u << 11) 82 #define ISI_CFG1_FULL (0x1u << 12) 83 #define ISI_CFG1_THMASK_Pos 13 84 #define ISI_CFG1_THMASK_Msk (0x3u << ISI_CFG1_THMASK_Pos) 85 #define ISI_CFG1_THMASK(value) ((ISI_CFG1_THMASK_Msk & ((value) << ISI_CFG1_THMASK_Pos))) 86 #define ISI_CFG1_THMASK_BEATS_4 (0x0u << 13) 87 #define ISI_CFG1_THMASK_BEATS_8 (0x1u << 13) 88 #define ISI_CFG1_THMASK_BEATS_16 (0x2u << 13) 89 #define ISI_CFG1_SLD_Pos 16 90 #define ISI_CFG1_SLD_Msk (0xffu << ISI_CFG1_SLD_Pos) 91 #define ISI_CFG1_SLD(value) ((ISI_CFG1_SLD_Msk & ((value) << ISI_CFG1_SLD_Pos))) 92 #define ISI_CFG1_SFD_Pos 24 93 #define ISI_CFG1_SFD_Msk (0xffu << ISI_CFG1_SFD_Pos) 94 #define ISI_CFG1_SFD(value) ((ISI_CFG1_SFD_Msk & ((value) << ISI_CFG1_SFD_Pos))) 96 #define ISI_CFG2_IM_VSIZE_Pos 0 97 #define ISI_CFG2_IM_VSIZE_Msk (0x7ffu << ISI_CFG2_IM_VSIZE_Pos) 98 #define ISI_CFG2_IM_VSIZE(value) ((ISI_CFG2_IM_VSIZE_Msk & ((value) << ISI_CFG2_IM_VSIZE_Pos))) 99 #define ISI_CFG2_GS_MODE (0x1u << 11) 100 #define ISI_CFG2_RGB_MODE (0x1u << 12) 101 #define ISI_CFG2_GRAYSCALE (0x1u << 13) 102 #define ISI_CFG2_RGB_SWAP (0x1u << 14) 103 #define ISI_CFG2_COL_SPACE (0x1u << 15) 104 #define ISI_CFG2_IM_HSIZE_Pos 16 105 #define ISI_CFG2_IM_HSIZE_Msk (0x7ffu << ISI_CFG2_IM_HSIZE_Pos) 106 #define ISI_CFG2_IM_HSIZE(value) ((ISI_CFG2_IM_HSIZE_Msk & ((value) << ISI_CFG2_IM_HSIZE_Pos))) 107 #define ISI_CFG2_YCC_SWAP_Pos 28 108 #define ISI_CFG2_YCC_SWAP_Msk (0x3u << ISI_CFG2_YCC_SWAP_Pos) 109 #define ISI_CFG2_YCC_SWAP(value) ((ISI_CFG2_YCC_SWAP_Msk & ((value) << ISI_CFG2_YCC_SWAP_Pos))) 110 #define ISI_CFG2_YCC_SWAP_DEFAULT (0x0u << 28) 111 #define ISI_CFG2_YCC_SWAP_MODE1 (0x1u << 28) 112 #define ISI_CFG2_YCC_SWAP_MODE2 (0x2u << 28) 113 #define ISI_CFG2_YCC_SWAP_MODE3 (0x3u << 28) 114 #define ISI_CFG2_RGB_CFG_Pos 30 115 #define ISI_CFG2_RGB_CFG_Msk (0x3u << ISI_CFG2_RGB_CFG_Pos) 116 #define ISI_CFG2_RGB_CFG(value) ((ISI_CFG2_RGB_CFG_Msk & ((value) << ISI_CFG2_RGB_CFG_Pos))) 117 #define ISI_CFG2_RGB_CFG_DEFAULT (0x0u << 30) 118 #define ISI_CFG2_RGB_CFG_MODE1 (0x1u << 30) 119 #define ISI_CFG2_RGB_CFG_MODE2 (0x2u << 30) 120 #define ISI_CFG2_RGB_CFG_MODE3 (0x3u << 30) 122 #define ISI_PSIZE_PREV_VSIZE_Pos 0 123 #define ISI_PSIZE_PREV_VSIZE_Msk (0x3ffu << ISI_PSIZE_PREV_VSIZE_Pos) 124 #define ISI_PSIZE_PREV_VSIZE(value) ((ISI_PSIZE_PREV_VSIZE_Msk & ((value) << ISI_PSIZE_PREV_VSIZE_Pos))) 125 #define ISI_PSIZE_PREV_HSIZE_Pos 16 126 #define ISI_PSIZE_PREV_HSIZE_Msk (0x3ffu << ISI_PSIZE_PREV_HSIZE_Pos) 127 #define ISI_PSIZE_PREV_HSIZE(value) ((ISI_PSIZE_PREV_HSIZE_Msk & ((value) << ISI_PSIZE_PREV_HSIZE_Pos))) 129 #define ISI_PDECF_DEC_FACTOR_Pos 0 130 #define ISI_PDECF_DEC_FACTOR_Msk (0xffu << ISI_PDECF_DEC_FACTOR_Pos) 131 #define ISI_PDECF_DEC_FACTOR(value) ((ISI_PDECF_DEC_FACTOR_Msk & ((value) << ISI_PDECF_DEC_FACTOR_Pos))) 133 #define ISI_Y2R_SET0_C0_Pos 0 134 #define ISI_Y2R_SET0_C0_Msk (0xffu << ISI_Y2R_SET0_C0_Pos) 135 #define ISI_Y2R_SET0_C0(value) ((ISI_Y2R_SET0_C0_Msk & ((value) << ISI_Y2R_SET0_C0_Pos))) 136 #define ISI_Y2R_SET0_C1_Pos 8 137 #define ISI_Y2R_SET0_C1_Msk (0xffu << ISI_Y2R_SET0_C1_Pos) 138 #define ISI_Y2R_SET0_C1(value) ((ISI_Y2R_SET0_C1_Msk & ((value) << ISI_Y2R_SET0_C1_Pos))) 139 #define ISI_Y2R_SET0_C2_Pos 16 140 #define ISI_Y2R_SET0_C2_Msk (0xffu << ISI_Y2R_SET0_C2_Pos) 141 #define ISI_Y2R_SET0_C2(value) ((ISI_Y2R_SET0_C2_Msk & ((value) << ISI_Y2R_SET0_C2_Pos))) 142 #define ISI_Y2R_SET0_C3_Pos 24 143 #define ISI_Y2R_SET0_C3_Msk (0xffu << ISI_Y2R_SET0_C3_Pos) 144 #define ISI_Y2R_SET0_C3(value) ((ISI_Y2R_SET0_C3_Msk & ((value) << ISI_Y2R_SET0_C3_Pos))) 146 #define ISI_Y2R_SET1_C4_Pos 0 147 #define ISI_Y2R_SET1_C4_Msk (0x1ffu << ISI_Y2R_SET1_C4_Pos) 148 #define ISI_Y2R_SET1_C4(value) ((ISI_Y2R_SET1_C4_Msk & ((value) << ISI_Y2R_SET1_C4_Pos))) 149 #define ISI_Y2R_SET1_Yoff (0x1u << 12) 150 #define ISI_Y2R_SET1_Croff (0x1u << 13) 151 #define ISI_Y2R_SET1_Cboff (0x1u << 14) 153 #define ISI_R2Y_SET0_C0_Pos 0 154 #define ISI_R2Y_SET0_C0_Msk (0x7fu << ISI_R2Y_SET0_C0_Pos) 155 #define ISI_R2Y_SET0_C0(value) ((ISI_R2Y_SET0_C0_Msk & ((value) << ISI_R2Y_SET0_C0_Pos))) 156 #define ISI_R2Y_SET0_C1_Pos 8 157 #define ISI_R2Y_SET0_C1_Msk (0x7fu << ISI_R2Y_SET0_C1_Pos) 158 #define ISI_R2Y_SET0_C1(value) ((ISI_R2Y_SET0_C1_Msk & ((value) << ISI_R2Y_SET0_C1_Pos))) 159 #define ISI_R2Y_SET0_C2_Pos 16 160 #define ISI_R2Y_SET0_C2_Msk (0x7fu << ISI_R2Y_SET0_C2_Pos) 161 #define ISI_R2Y_SET0_C2(value) ((ISI_R2Y_SET0_C2_Msk & ((value) << ISI_R2Y_SET0_C2_Pos))) 162 #define ISI_R2Y_SET0_Roff (0x1u << 24) 164 #define ISI_R2Y_SET1_C3_Pos 0 165 #define ISI_R2Y_SET1_C3_Msk (0x7fu << ISI_R2Y_SET1_C3_Pos) 166 #define ISI_R2Y_SET1_C3(value) ((ISI_R2Y_SET1_C3_Msk & ((value) << ISI_R2Y_SET1_C3_Pos))) 167 #define ISI_R2Y_SET1_C4_Pos 8 168 #define ISI_R2Y_SET1_C4_Msk (0x7fu << ISI_R2Y_SET1_C4_Pos) 169 #define ISI_R2Y_SET1_C4(value) ((ISI_R2Y_SET1_C4_Msk & ((value) << ISI_R2Y_SET1_C4_Pos))) 170 #define ISI_R2Y_SET1_C5_Pos 16 171 #define ISI_R2Y_SET1_C5_Msk (0x7fu << ISI_R2Y_SET1_C5_Pos) 172 #define ISI_R2Y_SET1_C5(value) ((ISI_R2Y_SET1_C5_Msk & ((value) << ISI_R2Y_SET1_C5_Pos))) 173 #define ISI_R2Y_SET1_Goff (0x1u << 24) 175 #define ISI_R2Y_SET2_C6_Pos 0 176 #define ISI_R2Y_SET2_C6_Msk (0x7fu << ISI_R2Y_SET2_C6_Pos) 177 #define ISI_R2Y_SET2_C6(value) ((ISI_R2Y_SET2_C6_Msk & ((value) << ISI_R2Y_SET2_C6_Pos))) 178 #define ISI_R2Y_SET2_C7_Pos 8 179 #define ISI_R2Y_SET2_C7_Msk (0x7fu << ISI_R2Y_SET2_C7_Pos) 180 #define ISI_R2Y_SET2_C7(value) ((ISI_R2Y_SET2_C7_Msk & ((value) << ISI_R2Y_SET2_C7_Pos))) 181 #define ISI_R2Y_SET2_C8_Pos 16 182 #define ISI_R2Y_SET2_C8_Msk (0x7fu << ISI_R2Y_SET2_C8_Pos) 183 #define ISI_R2Y_SET2_C8(value) ((ISI_R2Y_SET2_C8_Msk & ((value) << ISI_R2Y_SET2_C8_Pos))) 184 #define ISI_R2Y_SET2_Boff (0x1u << 24) 186 #define ISI_CR_ISI_EN (0x1u << 0) 187 #define ISI_CR_ISI_DIS (0x1u << 1) 188 #define ISI_CR_ISI_SRST (0x1u << 2) 189 #define ISI_CR_ISI_CDC (0x1u << 8) 191 #define ISI_SR_ENABLE (0x1u << 0) 192 #define ISI_SR_DIS_DONE (0x1u << 1) 193 #define ISI_SR_SRST (0x1u << 2) 194 #define ISI_SR_CDC_PND (0x1u << 8) 195 #define ISI_SR_VSYNC (0x1u << 10) 196 #define ISI_SR_PXFR_DONE (0x1u << 16) 197 #define ISI_SR_CXFR_DONE (0x1u << 17) 198 #define ISI_SR_SIP (0x1u << 19) 199 #define ISI_SR_P_OVR (0x1u << 24) 200 #define ISI_SR_C_OVR (0x1u << 25) 201 #define ISI_SR_CRC_ERR (0x1u << 26) 202 #define ISI_SR_FR_OVR (0x1u << 27) 204 #define ISI_IER_DIS_DONE (0x1u << 1) 205 #define ISI_IER_SRST (0x1u << 2) 206 #define ISI_IER_VSYNC (0x1u << 10) 207 #define ISI_IER_PXFR_DONE (0x1u << 16) 208 #define ISI_IER_CXFR_DONE (0x1u << 17) 209 #define ISI_IER_P_OVR (0x1u << 24) 210 #define ISI_IER_C_OVR (0x1u << 25) 211 #define ISI_IER_CRC_ERR (0x1u << 26) 212 #define ISI_IER_FR_OVR (0x1u << 27) 214 #define ISI_IDR_DIS_DONE (0x1u << 1) 215 #define ISI_IDR_SRST (0x1u << 2) 216 #define ISI_IDR_VSYNC (0x1u << 10) 217 #define ISI_IDR_PXFR_DONE (0x1u << 16) 218 #define ISI_IDR_CXFR_DONE (0x1u << 17) 219 #define ISI_IDR_P_OVR (0x1u << 24) 220 #define ISI_IDR_C_OVR (0x1u << 25) 221 #define ISI_IDR_CRC_ERR (0x1u << 26) 222 #define ISI_IDR_FR_OVR (0x1u << 27) 224 #define ISI_IMR_DIS_DONE (0x1u << 1) 225 #define ISI_IMR_SRST (0x1u << 2) 226 #define ISI_IMR_VSYNC (0x1u << 10) 227 #define ISI_IMR_PXFR_DONE (0x1u << 16) 228 #define ISI_IMR_CXFR_DONE (0x1u << 17) 229 #define ISI_IMR_P_OVR (0x1u << 24) 230 #define ISI_IMR_C_OVR (0x1u << 25) 231 #define ISI_IMR_CRC_ERR (0x1u << 26) 232 #define ISI_IMR_FR_OVR (0x1u << 27) 234 #define ISI_DMA_CHER_P_CH_EN (0x1u << 0) 235 #define ISI_DMA_CHER_C_CH_EN (0x1u << 1) 237 #define ISI_DMA_CHDR_P_CH_DIS (0x1u << 0) 238 #define ISI_DMA_CHDR_C_CH_DIS (0x1u << 1) 240 #define ISI_DMA_CHSR_P_CH_S (0x1u << 0) 241 #define ISI_DMA_CHSR_C_CH_S (0x1u << 1) 243 #define ISI_DMA_P_ADDR_P_ADDR_Pos 2 244 #define ISI_DMA_P_ADDR_P_ADDR_Msk (0x3fffffffu << ISI_DMA_P_ADDR_P_ADDR_Pos) 245 #define ISI_DMA_P_ADDR_P_ADDR(value) ((ISI_DMA_P_ADDR_P_ADDR_Msk & ((value) << ISI_DMA_P_ADDR_P_ADDR_Pos))) 247 #define ISI_DMA_P_CTRL_P_FETCH (0x1u << 0) 248 #define ISI_DMA_P_CTRL_P_WB (0x1u << 1) 249 #define ISI_DMA_P_CTRL_P_IEN (0x1u << 2) 250 #define ISI_DMA_P_CTRL_P_DONE (0x1u << 3) 252 #define ISI_DMA_P_DSCR_P_DSCR_Pos 2 253 #define ISI_DMA_P_DSCR_P_DSCR_Msk (0x3fffffffu << ISI_DMA_P_DSCR_P_DSCR_Pos) 254 #define ISI_DMA_P_DSCR_P_DSCR(value) ((ISI_DMA_P_DSCR_P_DSCR_Msk & ((value) << ISI_DMA_P_DSCR_P_DSCR_Pos))) 256 #define ISI_DMA_C_ADDR_C_ADDR_Pos 2 257 #define ISI_DMA_C_ADDR_C_ADDR_Msk (0x3fffffffu << ISI_DMA_C_ADDR_C_ADDR_Pos) 258 #define ISI_DMA_C_ADDR_C_ADDR(value) ((ISI_DMA_C_ADDR_C_ADDR_Msk & ((value) << ISI_DMA_C_ADDR_C_ADDR_Pos))) 260 #define ISI_DMA_C_CTRL_C_FETCH (0x1u << 0) 261 #define ISI_DMA_C_CTRL_C_WB (0x1u << 1) 262 #define ISI_DMA_C_CTRL_C_IEN (0x1u << 2) 263 #define ISI_DMA_C_CTRL_C_DONE (0x1u << 3) 265 #define ISI_DMA_C_DSCR_C_DSCR_Pos 2 266 #define ISI_DMA_C_DSCR_C_DSCR_Msk (0x3fffffffu << ISI_DMA_C_DSCR_C_DSCR_Pos) 267 #define ISI_DMA_C_DSCR_C_DSCR(value) ((ISI_DMA_C_DSCR_C_DSCR_Msk & ((value) << ISI_DMA_C_DSCR_C_DSCR_Pos))) 269 #define ISI_WPMR_WPEN (0x1u << 0) 270 #define ISI_WPMR_WPKEY_Pos 8 271 #define ISI_WPMR_WPKEY_Msk (0xffffffu << ISI_WPMR_WPKEY_Pos) 272 #define ISI_WPMR_WPKEY(value) ((ISI_WPMR_WPKEY_Msk & ((value) << ISI_WPMR_WPKEY_Pos))) 273 #define ISI_WPMR_WPKEY_PASSWD (0x495349u << 8) 275 #define ISI_WPSR_WPVS (0x1u << 0) 276 #define ISI_WPSR_WPVSRC_Pos 8 277 #define ISI_WPSR_WPVSRC_Msk (0xffffu << ISI_WPSR_WPVSRC_Pos) 279 #define ISI_VERSION_VERSION_Pos 0 280 #define ISI_VERSION_VERSION_Msk (0xfffu << ISI_VERSION_VERSION_Pos) 281 #define ISI_VERSION_MFN_Pos 16 282 #define ISI_VERSION_MFN_Msk (0x7u << ISI_VERSION_MFN_Pos) #define __IO
Definition: core_cm7.h:287
__I uint32_t ISI_VERSION
(Isi Offset: 0xFC) Version Register
Definition: component_isi.h:69
#define __O
Definition: core_cm7.h:286
#define __I
Definition: core_cm7.h:284
Isi hardware registers.
Definition: component_isi.h:41