1 /** 2 ****************************************************************************** 3 * @file mjpeg_reg.h 4 * @version V1.0 5 * @date 2022-11-01 6 * @brief This file is the description of.IP register 7 ****************************************************************************** 8 * @attention 9 * 10 * <h2><center>© COPYRIGHT(c) 2020 Bouffalo Lab</center></h2> 11 * 12 * Redistribution and use in source and binary forms, with or without modification, 13 * are permitted provided that the following conditions are met: 14 * 1. Redistributions of source code must retain the above copyright notice, 15 * this list of conditions and the following disclaimer. 16 * 2. Redistributions in binary form must reproduce the above copyright notice, 17 * this list of conditions and the following disclaimer in the documentation 18 * and/or other materials provided with the distribution. 19 * 3. Neither the name of Bouffalo Lab nor the names of its contributors 20 * may be used to endorse or promote products derived from this software 21 * without specific prior written permission. 22 * 23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 24 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 25 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 26 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 27 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 29 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 30 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 31 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 32 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 * 34 ****************************************************************************** 35 */ 36 #ifndef __HARDWARE_MJPEG_REG_H__ 37 #define __HARDWARE_MJPEG_REG_H__ 38 39 /**************************************************************************** 40 * Pre-processor Definitions 41 ****************************************************************************/ 42 43 /* Register offsets *********************************************************/ 44 45 #define MJPEG_CONTROL_1_OFFSET (0x0)/* mjpeg_control_1 */ 46 #define MJPEG_CONTROL_2_OFFSET (0x4)/* mjpeg_control_2 */ 47 #define MJPEG_YY_FRAME_ADDR_OFFSET (0x08)/* mjpeg_yy_frame_addr */ 48 #define MJPEG_UV_FRAME_ADDR_OFFSET (0x0C)/* mjpeg_uv_frame_addr */ 49 #define MJPEG_YUV_MEM_OFFSET (0x10)/* mjpeg_yuv_mem */ 50 #define MJPEG_JPEG_FRAME_ADDR_OFFSET (0x14)/* jpeg_frame_addr */ 51 #define MJPEG_JPEG_STORE_MEMORY_OFFSET (0x18)/* jpeg_store_memory */ 52 #define MJPEG_CONTROL_3_OFFSET (0x1C)/* mjpeg_control_3 */ 53 #define MJPEG_FRAME_FIFO_POP_OFFSET (0x20)/* mjpeg_frame_fifo_pop */ 54 #define MJPEG_FRAME_SIZE_OFFSET (0x24)/* mjpeg_frame_size */ 55 #define MJPEG_HEADER_BYTE_OFFSET (0x28)/* mjpeg_header_byte */ 56 #define MJPEG_SWAP_MODE_OFFSET (0x30)/* mjpeg_swap_mode */ 57 #define MJPEG_SWAP_BIT_CNT_OFFSET (0x34)/* mjpeg_swap_bit_cnt */ 58 #define MJPEG_YUV_MEM_SW_OFFSET (0x38)/* mjpeg_yuv_mem_sw */ 59 #define MJPEG_Y_FRAME_READ_STATUS_1_OFFSET (0x40)/* mjpeg_Y_frame_read_status_1 */ 60 #define MJPEG_Y_FRAME_READ_STATUS_2_OFFSET (0x44)/* mjpeg_Y_frame_read_status_2 */ 61 #define MJPEG_Y_FRAME_WRITE_STATUS_OFFSET (0x48)/* mjpeg_Y_frame_write_status */ 62 #define MJPEG_UV_FRAME_READ_STATUS_1_OFFSET (0x4C)/* mjpeg_UV_frame_read_status_1 */ 63 #define MJPEG_UV_FRAME_READ_STATUS_2_OFFSET (0x50)/* mjpeg_UV_frame_read_status_2 */ 64 #define MJPEG_UV_FRAME_WRITE_STATUS_OFFSET (0x54)/* mjpeg_UV_frame_write_status */ 65 #define MJPEG_FRAME_W_HBLK_STATUS_OFFSET (0x58)/* mjpeg_frame_w_hblk_status */ 66 #define MJPEG_START_ADDR0_OFFSET (0x80)/* mjpeg_start_addr0 */ 67 #define MJPEG_BIT_CNT0_OFFSET (0x84)/* mjpeg_bit_cnt0 */ 68 #define MJPEG_START_ADDR1_OFFSET (0x88)/* mjpeg_start_addr1 */ 69 #define MJPEG_BIT_CNT1_OFFSET (0x8C)/* mjpeg_bit_cnt1 */ 70 #define MJPEG_START_ADDR2_OFFSET (0x90)/* mjpeg_start_addr2 */ 71 #define MJPEG_BIT_CNT2_OFFSET (0x94)/* mjpeg_bit_cnt2 */ 72 #define MJPEG_START_ADDR3_OFFSET (0x98)/* mjpeg_start_addr3 */ 73 #define MJPEG_BIT_CNT3_OFFSET (0x9C)/* mjpeg_bit_cnt3 */ 74 #define MJPEG_Q_ENC_OFFSET (0x100)/* mjpeg_q_enc */ 75 #define MJPEG_FRAME_ID_10_OFFSET (0x110)/* mjpeg_frame_id_10 */ 76 #define MJPEG_FRAME_ID_32_OFFSET (0x114)/* mjpeg_frame_id_32 */ 77 #define MJPEG_DEBUG_OFFSET (0x1F0)/* mjpeg_debug */ 78 #define MJPEG_DUMMY_REG_OFFSET (0x1FC)/* mjpeg_dummy_reg */ 79 80 /* Register Bitfield definitions *****************************************************/ 81 82 /* 0x0 : mjpeg_control_1 */ 83 #define MJPEG_REG_MJPEG_ENABLE (1<<0U) 84 #define MJPEG_REG_MJPEG_BIT_ORDER (1<<1U) 85 #define MJPEG_REG_ORDER_U_EVEN (1<<2U) 86 #define MJPEG_REG_HW_MODE_SWEN (1<<3U) 87 #define MJPEG_REG_LAST_HF_WBLK_DMY (1<<4U) 88 #define MJPEG_REG_LAST_HF_HBLK_DMY (1<<5U) 89 #define MJPEG_REG_REFLECT_DMY (1<<6U) 90 #define MJPEG_REG_READ_FWRAP (1<<7U) 91 #define MJPEG_REG_W_XLEN_SHIFT (8U) 92 #define MJPEG_REG_W_XLEN_MASK (0x7<<MJPEG_REG_W_XLEN_SHIFT) 93 #define MJPEG_REG_YUV_MODE_SHIFT (12U) 94 #define MJPEG_REG_YUV_MODE_MASK (0x3<<MJPEG_REG_YUV_MODE_SHIFT) 95 #define MJPEG_REG_MJPEG_HW_FRAME_SHIFT (24U) 96 #define MJPEG_REG_MJPEG_HW_FRAME_MASK (0x3f<<MJPEG_REG_MJPEG_HW_FRAME_SHIFT) 97 98 /* 0x4 : mjpeg_control_2 */ 99 #define MJPEG_REG_SW_FRAME_SHIFT (0U) 100 #define MJPEG_REG_SW_FRAME_MASK (0x1f<<MJPEG_REG_SW_FRAME_SHIFT) 101 #define MJPEG_REG_SW_KICK (1<<6U) 102 #define MJPEG_REG_SW_KICK_MODE (1<<7U) 103 #define MJPEG_REG_MJPEG_SW_MODE (1<<8U) 104 #define MJPEG_REG_MJPEG_SW_RUN (1<<9U) 105 #define MJPEG_REG_YY_DVP2AXI_SEL_SHIFT (10U) 106 #define MJPEG_REG_YY_DVP2AXI_SEL_MASK (0x7<<MJPEG_REG_YY_DVP2AXI_SEL_SHIFT) 107 #define MJPEG_REG_UV_DVP2AXI_SEL_SHIFT (13U) 108 #define MJPEG_REG_UV_DVP2AXI_SEL_MASK (0x7<<MJPEG_REG_UV_DVP2AXI_SEL_SHIFT) 109 #define MJPEG_REG_MJPEG_WAIT_CYCLE_SHIFT (16U) 110 #define MJPEG_REG_MJPEG_WAIT_CYCLE_MASK (0xffff<<MJPEG_REG_MJPEG_WAIT_CYCLE_SHIFT) 111 112 /* 0x08 : mjpeg_yy_frame_addr */ 113 #define MJPEG_REG_YY_ADDR_START_SHIFT (0U) 114 #define MJPEG_REG_YY_ADDR_START_MASK (0xffffffff<<MJPEG_REG_YY_ADDR_START_SHIFT) 115 116 /* 0x0C : mjpeg_uv_frame_addr */ 117 #define MJPEG_REG_UV_ADDR_START_SHIFT (0U) 118 #define MJPEG_REG_UV_ADDR_START_MASK (0xffffffff<<MJPEG_REG_UV_ADDR_START_SHIFT) 119 120 /* 0x10 : mjpeg_yuv_mem */ 121 #define MJPEG_REG_YY_MEM_HBLK_SHIFT (0U) 122 #define MJPEG_REG_YY_MEM_HBLK_MASK (0x1fff<<MJPEG_REG_YY_MEM_HBLK_SHIFT) 123 #define MJPEG_REG_UV_MEM_HBLK_SHIFT (16U) 124 #define MJPEG_REG_UV_MEM_HBLK_MASK (0x1fff<<MJPEG_REG_UV_MEM_HBLK_SHIFT) 125 126 /* 0x14 : jpeg_frame_addr */ 127 #define MJPEG_REG_W_ADDR_START_SHIFT (0U) 128 #define MJPEG_REG_W_ADDR_START_MASK (0xffffffff<<MJPEG_REG_W_ADDR_START_SHIFT) 129 130 /* 0x18 : jpeg_store_memory */ 131 #define MJPEG_REG_W_BURST_CNT_SHIFT (0U) 132 #define MJPEG_REG_W_BURST_CNT_MASK (0xffffffff<<MJPEG_REG_W_BURST_CNT_SHIFT) 133 134 /* 0x1C : mjpeg_control_3 */ 135 #define MJPEG_REG_INT_NORMAL_EN (1<<0U) 136 #define MJPEG_REG_INT_CAM_EN (1<<1U) 137 #define MJPEG_REG_INT_MEM_EN (1<<2U) 138 #define MJPEG_REG_INT_FRAME_EN (1<<3U) 139 #define MJPEG_STS_NORMAL_INT (1<<4U) 140 #define MJPEG_STS_CAM_INT (1<<5U) 141 #define MJPEG_STS_MEM_INT (1<<6U) 142 #define MJPEG_STS_FRAME_INT (1<<7U) 143 #define MJPEG_IDLE (1<<8U) 144 #define MJPEG_FUNC (1<<9U) 145 #define MJPEG_WAIT (1<<10U) 146 #define MJPEG_FLSH (1<<11U) 147 #define MJPEG_MANS (1<<12U) 148 #define MJPEG_MANF (1<<13U) 149 #define MJPEG_AXI_READ_IDLE (1<<14U) 150 #define MJPEG_AXI_WRITE_IDLE (1<<15U) 151 #define MJPEG_REG_FRAME_CNT_TRGR_INT_SHIFT (16U) 152 #define MJPEG_REG_FRAME_CNT_TRGR_INT_MASK (0x1f<<MJPEG_REG_FRAME_CNT_TRGR_INT_SHIFT) 153 #define MJPEG_REG_INT_IDLE_EN (1<<21U) 154 #define MJPEG_STS_IDLE_INT (1<<22U) 155 #define MJPEG_FRAME_VALID_CNT_SHIFT (24U) 156 #define MJPEG_FRAME_VALID_CNT_MASK (0x1f<<MJPEG_FRAME_VALID_CNT_SHIFT) 157 #define MJPEG_REG_INT_SWAP_EN (1<<29U) 158 #define MJPEG_STS_SWAP_INT (1<<30U) 159 160 /* 0x20 : mjpeg_frame_fifo_pop */ 161 #define MJPEG_RFIFO_POP (1<<0U) 162 #define MJPEG_REG_W_SWAP_CLR (1<<1U) 163 #define MJPEG_REG_INT_NORMAL_CLR (1<<8U) 164 #define MJPEG_REG_INT_CAM_CLR (1<<9U) 165 #define MJPEG_REG_INT_MEM_CLR (1<<10U) 166 #define MJPEG_REG_INT_FRAME_CLR (1<<11U) 167 #define MJPEG_REG_INT_IDLE_CLR (1<<12U) 168 #define MJPEG_REG_INT_SWAP_CLR (1<<13U) 169 170 /* 0x24 : mjpeg_frame_size */ 171 #define MJPEG_REG_FRAME_WBLK_SHIFT (0U) 172 #define MJPEG_REG_FRAME_WBLK_MASK (0xfff<<MJPEG_REG_FRAME_WBLK_SHIFT) 173 #define MJPEG_REG_FRAME_HBLK_SHIFT (16U) 174 #define MJPEG_REG_FRAME_HBLK_MASK (0xfff<<MJPEG_REG_FRAME_HBLK_SHIFT) 175 176 /* 0x28 : mjpeg_header_byte */ 177 #define MJPEG_REG_HEAD_BYTE_SHIFT (0U) 178 #define MJPEG_REG_HEAD_BYTE_MASK (0xfff<<MJPEG_REG_HEAD_BYTE_SHIFT) 179 #define MJPEG_REG_TAIL_EXP (1<<16U) 180 #define MJPEG_REG_Y0_ORDER_SHIFT (24U) 181 #define MJPEG_REG_Y0_ORDER_MASK (0x3<<MJPEG_REG_Y0_ORDER_SHIFT) 182 #define MJPEG_REG_U0_ORDER_SHIFT (26U) 183 #define MJPEG_REG_U0_ORDER_MASK (0x3<<MJPEG_REG_U0_ORDER_SHIFT) 184 #define MJPEG_REG_Y1_ORDER_SHIFT (28U) 185 #define MJPEG_REG_Y1_ORDER_MASK (0x3<<MJPEG_REG_Y1_ORDER_SHIFT) 186 #define MJPEG_REG_V0_ORDER_SHIFT (30U) 187 #define MJPEG_REG_V0_ORDER_MASK (0x3<<MJPEG_REG_V0_ORDER_SHIFT) 188 189 /* 0x30 : mjpeg_swap_mode */ 190 #define MJPEG_REG_W_SWAP_MODE (1<<0U) 191 #define MJPEG_STS_SWAP0_FULL (1<<8U) 192 #define MJPEG_STS_SWAP1_FULL (1<<9U) 193 #define MJPEG_STS_READ_SWAP_IDX (1<<10U) 194 #define MJPEG_STS_SWAP_FSTART (1<<11U) 195 #define MJPEG_STS_SWAP_FEND (1<<12U) 196 197 /* 0x34 : mjpeg_swap_bit_cnt */ 198 #define MJPEG_FRAME_SWAP_END_BIT_CNT_SHIFT (0U) 199 #define MJPEG_FRAME_SWAP_END_BIT_CNT_MASK (0xffffffff<<MJPEG_FRAME_SWAP_END_BIT_CNT_SHIFT) 200 201 /* 0x38 : mjpeg_yuv_mem_sw */ 202 #define MJPEG_REG_SW_KICK_HBLK_SHIFT (0U) 203 #define MJPEG_REG_SW_KICK_HBLK_MASK (0x1fff<<MJPEG_REG_SW_KICK_HBLK_SHIFT) 204 205 /* 0x40 : mjpeg_Y_frame_read_status_1 */ 206 #define MJPEG_YY_MEM_HBLK_R_SHIFT (0U) 207 #define MJPEG_YY_MEM_HBLK_R_MASK (0x1fff<<MJPEG_YY_MEM_HBLK_R_SHIFT) 208 #define MJPEG_YY_FRM_HBLK_R_SHIFT (16U) 209 #define MJPEG_YY_FRM_HBLK_R_MASK (0x1fff<<MJPEG_YY_FRM_HBLK_R_SHIFT) 210 211 /* 0x44 : mjpeg_Y_frame_read_status_2 */ 212 #define MJPEG_YY_WBLK_R_SHIFT (0U) 213 #define MJPEG_YY_WBLK_R_MASK (0x1fff<<MJPEG_YY_WBLK_R_SHIFT) 214 #define MJPEG_YY_MEM_RND_R_SHIFT (16U) 215 #define MJPEG_YY_MEM_RND_R_MASK (0xff<<MJPEG_YY_MEM_RND_R_SHIFT) 216 #define MJPEG_YY_FRM_CNT_R_SHIFT (24U) 217 #define MJPEG_YY_FRM_CNT_R_MASK (0xff<<MJPEG_YY_FRM_CNT_R_SHIFT) 218 219 /* 0x48 : mjpeg_Y_frame_write_status */ 220 #define MJPEG_YY_MEM_HBLK_W_SHIFT (0U) 221 #define MJPEG_YY_MEM_HBLK_W_MASK (0x1fff<<MJPEG_YY_MEM_HBLK_W_SHIFT) 222 #define MJPEG_YY_MEM_RND_W_SHIFT (16U) 223 #define MJPEG_YY_MEM_RND_W_MASK (0xff<<MJPEG_YY_MEM_RND_W_SHIFT) 224 #define MJPEG_YY_FRM_CNT_W_SHIFT (24U) 225 #define MJPEG_YY_FRM_CNT_W_MASK (0xff<<MJPEG_YY_FRM_CNT_W_SHIFT) 226 227 /* 0x4C : mjpeg_UV_frame_read_status_1 */ 228 #define MJPEG_UV_MEM_HBLK_R_SHIFT (0U) 229 #define MJPEG_UV_MEM_HBLK_R_MASK (0x1fff<<MJPEG_UV_MEM_HBLK_R_SHIFT) 230 #define MJPEG_UV_FRM_HBLK_R_SHIFT (16U) 231 #define MJPEG_UV_FRM_HBLK_R_MASK (0x1fff<<MJPEG_UV_FRM_HBLK_R_SHIFT) 232 233 /* 0x50 : mjpeg_UV_frame_read_status_2 */ 234 #define MJPEG_UV_WBLK_R_SHIFT (0U) 235 #define MJPEG_UV_WBLK_R_MASK (0x1fff<<MJPEG_UV_WBLK_R_SHIFT) 236 #define MJPEG_UV_MEM_RND_R_SHIFT (16U) 237 #define MJPEG_UV_MEM_RND_R_MASK (0xff<<MJPEG_UV_MEM_RND_R_SHIFT) 238 #define MJPEG_UV_FRM_CNT_R_SHIFT (24U) 239 #define MJPEG_UV_FRM_CNT_R_MASK (0xff<<MJPEG_UV_FRM_CNT_R_SHIFT) 240 241 /* 0x54 : mjpeg_UV_frame_write_status */ 242 #define MJPEG_UV_MEM_HBLK_W_SHIFT (0U) 243 #define MJPEG_UV_MEM_HBLK_W_MASK (0x1fff<<MJPEG_UV_MEM_HBLK_W_SHIFT) 244 #define MJPEG_UV_MEM_RND_W_SHIFT (16U) 245 #define MJPEG_UV_MEM_RND_W_MASK (0xff<<MJPEG_UV_MEM_RND_W_SHIFT) 246 #define MJPEG_UV_FRM_CNT_W_SHIFT (24U) 247 #define MJPEG_UV_FRM_CNT_W_MASK (0xff<<MJPEG_UV_FRM_CNT_W_SHIFT) 248 249 /* 0x58 : mjpeg_frame_w_hblk_status */ 250 #define MJPEG_YY_FRM_HBLK_W_SHIFT (0U) 251 #define MJPEG_YY_FRM_HBLK_W_MASK (0x1fff<<MJPEG_YY_FRM_HBLK_W_SHIFT) 252 #define MJPEG_UV_FRM_HBLK_W_SHIFT (16U) 253 #define MJPEG_UV_FRM_HBLK_W_MASK (0x1fff<<MJPEG_UV_FRM_HBLK_W_SHIFT) 254 255 /* 0x80 : mjpeg_start_addr0 */ 256 #define MJPEG_FRAME_START_ADDR_0_SHIFT (0U) 257 #define MJPEG_FRAME_START_ADDR_0_MASK (0xffffffff<<MJPEG_FRAME_START_ADDR_0_SHIFT) 258 259 /* 0x84 : mjpeg_bit_cnt0 */ 260 #define MJPEG_FRAME_BIT_CNT_0_SHIFT (0U) 261 #define MJPEG_FRAME_BIT_CNT_0_MASK (0xffffffff<<MJPEG_FRAME_BIT_CNT_0_SHIFT) 262 263 /* 0x88 : mjpeg_start_addr1 */ 264 #define MJPEG_FRAME_START_ADDR_1_SHIFT (0U) 265 #define MJPEG_FRAME_START_ADDR_1_MASK (0xffffffff<<MJPEG_FRAME_START_ADDR_1_SHIFT) 266 267 /* 0x8C : mjpeg_bit_cnt1 */ 268 #define MJPEG_FRAME_BIT_CNT_1_SHIFT (0U) 269 #define MJPEG_FRAME_BIT_CNT_1_MASK (0xffffffff<<MJPEG_FRAME_BIT_CNT_1_SHIFT) 270 271 /* 0x90 : mjpeg_start_addr2 */ 272 #define MJPEG_FRAME_START_ADDR_2_SHIFT (0U) 273 #define MJPEG_FRAME_START_ADDR_2_MASK (0xffffffff<<MJPEG_FRAME_START_ADDR_2_SHIFT) 274 275 /* 0x94 : mjpeg_bit_cnt2 */ 276 #define MJPEG_FRAME_BIT_CNT_2_SHIFT (0U) 277 #define MJPEG_FRAME_BIT_CNT_2_MASK (0xffffffff<<MJPEG_FRAME_BIT_CNT_2_SHIFT) 278 279 /* 0x98 : mjpeg_start_addr3 */ 280 #define MJPEG_FRAME_START_ADDR_3_SHIFT (0U) 281 #define MJPEG_FRAME_START_ADDR_3_MASK (0xffffffff<<MJPEG_FRAME_START_ADDR_3_SHIFT) 282 283 /* 0x9C : mjpeg_bit_cnt3 */ 284 #define MJPEG_FRAME_BIT_CNT_3_SHIFT (0U) 285 #define MJPEG_FRAME_BIT_CNT_3_MASK (0xffffffff<<MJPEG_FRAME_BIT_CNT_3_SHIFT) 286 287 /* 0x100 : mjpeg_q_enc */ 288 #define MJPEG_FRAME_Q_SRAM_0 (1<<0U) 289 #define MJPEG_FRAME_Q_SRAM_1 (1<<1U) 290 #define MJPEG_FRAME_Q_SRAM_2 (1<<2U) 291 #define MJPEG_FRAME_Q_SRAM_3 (1<<3U) 292 #define MJPEG_REG_Q_SRAM_SW (1<<24U) 293 #define MJPEG_STS_Q_SRAM_ENC (1<<25U) 294 295 /* 0x110 : mjpeg_frame_id_10 */ 296 #define MJPEG_FRAME_ID_0_SHIFT (0U) 297 #define MJPEG_FRAME_ID_0_MASK (0xffff<<MJPEG_FRAME_ID_0_SHIFT) 298 #define MJPEG_FRAME_ID_1_SHIFT (16U) 299 #define MJPEG_FRAME_ID_1_MASK (0xffff<<MJPEG_FRAME_ID_1_SHIFT) 300 301 /* 0x114 : mjpeg_frame_id_32 */ 302 #define MJPEG_FRAME_ID_2_SHIFT (0U) 303 #define MJPEG_FRAME_ID_2_MASK (0xffff<<MJPEG_FRAME_ID_2_SHIFT) 304 #define MJPEG_FRAME_ID_3_SHIFT (16U) 305 #define MJPEG_FRAME_ID_3_MASK (0xffff<<MJPEG_FRAME_ID_3_SHIFT) 306 307 /* 0x1F0 : mjpeg_debug */ 308 #define MJPEG_REG_MJPEG_DBG_EN (1<<0U) 309 #define MJPEG_REG_MJPEG_DBG_SEL_SHIFT (4U) 310 #define MJPEG_REG_MJPEG_DBG_SEL_MASK (0xf<<MJPEG_REG_MJPEG_DBG_SEL_SHIFT) 311 #define MJPEG_REG_ID_LATCH_HBLK_SHIFT (8U) 312 #define MJPEG_REG_ID_LATCH_HBLK_MASK (0xf<<MJPEG_REG_ID_LATCH_HBLK_SHIFT) 313 314 /* 0x1FC : mjpeg_dummy_reg */ 315 #define MJPEG_DUMMY_REG_SHIFT (0U) 316 #define MJPEG_DUMMY_REG_MASK (0xffffffff<<MJPEG_DUMMY_REG_SHIFT) 317 318 319 #endif /* __HARDWARE_MJPEG_REG_H__ */ 320