1*53ee8cc1Swenshuai.xi //<MStar Software> 2*53ee8cc1Swenshuai.xi //****************************************************************************** 3*53ee8cc1Swenshuai.xi // MStar Software 4*53ee8cc1Swenshuai.xi // Copyright (c) 2010 - 2012 MStar Semiconductor, Inc. All rights reserved. 5*53ee8cc1Swenshuai.xi // All software, firmware and related documentation herein ("MStar Software") are 6*53ee8cc1Swenshuai.xi // intellectual property of MStar Semiconductor, Inc. ("MStar") and protected by 7*53ee8cc1Swenshuai.xi // law, including, but not limited to, copyright law and international treaties. 8*53ee8cc1Swenshuai.xi // Any use, modification, reproduction, retransmission, or republication of all 9*53ee8cc1Swenshuai.xi // or part of MStar Software is expressly prohibited, unless prior written 10*53ee8cc1Swenshuai.xi // permission has been granted by MStar. 11*53ee8cc1Swenshuai.xi // 12*53ee8cc1Swenshuai.xi // By accessing, browsing and/or using MStar Software, you acknowledge that you 13*53ee8cc1Swenshuai.xi // have read, understood, and agree, to be bound by below terms ("Terms") and to 14*53ee8cc1Swenshuai.xi // comply with all applicable laws and regulations: 15*53ee8cc1Swenshuai.xi // 16*53ee8cc1Swenshuai.xi // 1. MStar shall retain any and all right, ownership and interest to MStar 17*53ee8cc1Swenshuai.xi // Software and any modification/derivatives thereof. 18*53ee8cc1Swenshuai.xi // No right, ownership, or interest to MStar Software and any 19*53ee8cc1Swenshuai.xi // modification/derivatives thereof is transferred to you under Terms. 20*53ee8cc1Swenshuai.xi // 21*53ee8cc1Swenshuai.xi // 2. You understand that MStar Software might include, incorporate or be 22*53ee8cc1Swenshuai.xi // supplied together with third party`s software and the use of MStar 23*53ee8cc1Swenshuai.xi // Software may require additional licenses from third parties. 24*53ee8cc1Swenshuai.xi // Therefore, you hereby agree it is your sole responsibility to separately 25*53ee8cc1Swenshuai.xi // obtain any and all third party right and license necessary for your use of 26*53ee8cc1Swenshuai.xi // such third party`s software. 27*53ee8cc1Swenshuai.xi // 28*53ee8cc1Swenshuai.xi // 3. MStar Software and any modification/derivatives thereof shall be deemed as 29*53ee8cc1Swenshuai.xi // MStar`s confidential information and you agree to keep MStar`s 30*53ee8cc1Swenshuai.xi // confidential information in strictest confidence and not disclose to any 31*53ee8cc1Swenshuai.xi // third party. 32*53ee8cc1Swenshuai.xi // 33*53ee8cc1Swenshuai.xi // 4. MStar Software is provided on an "AS IS" basis without warranties of any 34*53ee8cc1Swenshuai.xi // kind. Any warranties are hereby expressly disclaimed by MStar, including 35*53ee8cc1Swenshuai.xi // without limitation, any warranties of merchantability, non-infringement of 36*53ee8cc1Swenshuai.xi // intellectual property rights, fitness for a particular purpose, error free 37*53ee8cc1Swenshuai.xi // and in conformity with any international standard. You agree to waive any 38*53ee8cc1Swenshuai.xi // claim against MStar for any loss, damage, cost or expense that you may 39*53ee8cc1Swenshuai.xi // incur related to your use of MStar Software. 40*53ee8cc1Swenshuai.xi // In no event shall MStar be liable for any direct, indirect, incidental or 41*53ee8cc1Swenshuai.xi // consequential damages, including without limitation, lost of profit or 42*53ee8cc1Swenshuai.xi // revenues, lost or damage of data, and unauthorized system use. 43*53ee8cc1Swenshuai.xi // You agree that this Section 4 shall still apply without being affected 44*53ee8cc1Swenshuai.xi // even if MStar Software has been modified by MStar in accordance with your 45*53ee8cc1Swenshuai.xi // request or instruction for your use, except otherwise agreed by both 46*53ee8cc1Swenshuai.xi // parties in writing. 47*53ee8cc1Swenshuai.xi // 48*53ee8cc1Swenshuai.xi // 5. If requested, MStar may from time to time provide technical supports or 49*53ee8cc1Swenshuai.xi // services in relation with MStar Software to you for your use of 50*53ee8cc1Swenshuai.xi // MStar Software in conjunction with your or your customer`s product 51*53ee8cc1Swenshuai.xi // ("Services"). 52*53ee8cc1Swenshuai.xi // You understand and agree that, except otherwise agreed by both parties in 53*53ee8cc1Swenshuai.xi // writing, Services are provided on an "AS IS" basis and the warranty 54*53ee8cc1Swenshuai.xi // disclaimer set forth in Section 4 above shall apply. 55*53ee8cc1Swenshuai.xi // 56*53ee8cc1Swenshuai.xi // 6. Nothing contained herein shall be construed as by implication, estoppels 57*53ee8cc1Swenshuai.xi // or otherwise: 58*53ee8cc1Swenshuai.xi // (a) conferring any license or right to use MStar name, trademark, service 59*53ee8cc1Swenshuai.xi // mark, symbol or any other identification; 60*53ee8cc1Swenshuai.xi // (b) obligating MStar or any of its affiliates to furnish any person, 61*53ee8cc1Swenshuai.xi // including without limitation, you and your customers, any assistance 62*53ee8cc1Swenshuai.xi // of any kind whatsoever, or any information; or 63*53ee8cc1Swenshuai.xi // (c) conferring any license or right under any intellectual property right. 64*53ee8cc1Swenshuai.xi // 65*53ee8cc1Swenshuai.xi // 7. These terms shall be governed by and construed in accordance with the laws 66*53ee8cc1Swenshuai.xi // of Taiwan, R.O.C., excluding its conflict of law rules. 67*53ee8cc1Swenshuai.xi // Any and all dispute arising out hereof or related hereto shall be finally 68*53ee8cc1Swenshuai.xi // settled by arbitration referred to the Chinese Arbitration Association, 69*53ee8cc1Swenshuai.xi // Taipei in accordance with the ROC Arbitration Law and the Arbitration 70*53ee8cc1Swenshuai.xi // Rules of the Association by three (3) arbitrators appointed in accordance 71*53ee8cc1Swenshuai.xi // with the said Rules. 72*53ee8cc1Swenshuai.xi // The place of arbitration shall be in Taipei, Taiwan and the language shall 73*53ee8cc1Swenshuai.xi // be English. 74*53ee8cc1Swenshuai.xi // The arbitration award shall be final and binding to both parties. 75*53ee8cc1Swenshuai.xi // 76*53ee8cc1Swenshuai.xi //****************************************************************************** 77*53ee8cc1Swenshuai.xi //<MStar Software> 78*53ee8cc1Swenshuai.xi //////////////////////////////////////////////////////////////////////////////// 79*53ee8cc1Swenshuai.xi // 80*53ee8cc1Swenshuai.xi // Copyright (c) 2008-2011 MStar Semiconductor, Inc. 81*53ee8cc1Swenshuai.xi // All rights reserved. 82*53ee8cc1Swenshuai.xi // 83*53ee8cc1Swenshuai.xi // Unless otherwise stipulated in writing, any and all information contained 84*53ee8cc1Swenshuai.xi // herein regardless in any format shall remain the sole proprietary of 85*53ee8cc1Swenshuai.xi // MStar Semiconductor Inc. and be kept in strict confidence 86*53ee8cc1Swenshuai.xi // ("MStar Confidential Information") by the recipient. 87*53ee8cc1Swenshuai.xi // Any unauthorized act including without limitation unauthorized disclosure, 88*53ee8cc1Swenshuai.xi // copying, use, reproduction, sale, distribution, modification, disassembling, 89*53ee8cc1Swenshuai.xi // reverse engineering and compiling of the contents of MStar Confidential 90*53ee8cc1Swenshuai.xi // Information is unlawful and strictly prohibited. MStar hereby reserves the 91*53ee8cc1Swenshuai.xi // rights to any and all damages, losses, costs and expenses resulting therefrom. 92*53ee8cc1Swenshuai.xi // 93*53ee8cc1Swenshuai.xi //////////////////////////////////////////////////////////////////////////////// 94*53ee8cc1Swenshuai.xi 95*53ee8cc1Swenshuai.xi /////////////////////////////////////////////////////////////////////////////////////////////////// 96*53ee8cc1Swenshuai.xi /// 97*53ee8cc1Swenshuai.xi /// file regNJPD.h 98*53ee8cc1Swenshuai.xi /// @brief NJPD Register Table 99*53ee8cc1Swenshuai.xi /// @author MStar Semiconductor Inc. 100*53ee8cc1Swenshuai.xi /////////////////////////////////////////////////////////////////////////////////////////////////// 101*53ee8cc1Swenshuai.xi 102*53ee8cc1Swenshuai.xi #ifndef _REG_NJPD_H_ 103*53ee8cc1Swenshuai.xi #define _REG_NJPD_H_ 104*53ee8cc1Swenshuai.xi 105*53ee8cc1Swenshuai.xi 106*53ee8cc1Swenshuai.xi //------------------------------------------------------------------------------------------------- 107*53ee8cc1Swenshuai.xi // Hardware Capability 108*53ee8cc1Swenshuai.xi //------------------------------------------------------------------------------------------------- 109*53ee8cc1Swenshuai.xi 110*53ee8cc1Swenshuai.xi 111*53ee8cc1Swenshuai.xi //------------------------------------------------------------------------------------------------- 112*53ee8cc1Swenshuai.xi // Macro and Define 113*53ee8cc1Swenshuai.xi //------------------------------------------------------------------------------------------------- 114*53ee8cc1Swenshuai.xi #define NJPD_MEM_SCWGIF_BASE 0x0000 115*53ee8cc1Swenshuai.xi #define NJPD_MEM_SYMIDX_BASE 0x0400 116*53ee8cc1Swenshuai.xi #define NJPD_MEM_QTBL_BASE 0x0800 117*53ee8cc1Swenshuai.xi #define NJPD_MEM_TBL_TOTAL_SIZE 0x1000 118*53ee8cc1Swenshuai.xi 119*53ee8cc1Swenshuai.xi 120*53ee8cc1Swenshuai.xi #define NJPD_CLKGEN0_BASE 0x00B00 121*53ee8cc1Swenshuai.xi #define NJPD1_REG_BASE 0x23200 122*53ee8cc1Swenshuai.xi #define NJPD2_REG_BASE 0x23300 123*53ee8cc1Swenshuai.xi 124*53ee8cc1Swenshuai.xi 125*53ee8cc1Swenshuai.xi // NJPD1 register======================================================================= 126*53ee8cc1Swenshuai.xi 127*53ee8cc1Swenshuai.xi // Global Setting 128*53ee8cc1Swenshuai.xi #define BK_NJPD1_GLOBAL_SETTING00 (NJPD1_REG_BASE+NJPD_OFFSET(0x00)) 129*53ee8cc1Swenshuai.xi #define BK_NJPD1_GLOBAL_SETTING01 (NJPD1_REG_BASE+NJPD_OFFSET(0x01)) 130*53ee8cc1Swenshuai.xi #define BK_NJPD1_GLOBAL_SETTING02 (NJPD1_REG_BASE+NJPD_OFFSET(0x02)) 131*53ee8cc1Swenshuai.xi 132*53ee8cc1Swenshuai.xi // Pitch Width 133*53ee8cc1Swenshuai.xi #define BK_NJPD1_PITCH_WIDTH (NJPD1_REG_BASE+NJPD_OFFSET(0x03)) 134*53ee8cc1Swenshuai.xi 135*53ee8cc1Swenshuai.xi // Restart Interval 136*53ee8cc1Swenshuai.xi #define BK_NJPD1_RESTART_INTERVAL (NJPD1_REG_BASE+NJPD_OFFSET(0x05)) 137*53ee8cc1Swenshuai.xi 138*53ee8cc1Swenshuai.xi // Image Size 139*53ee8cc1Swenshuai.xi #define BK_NJPD1_IMG_HSIZE (NJPD1_REG_BASE+NJPD_OFFSET(0x06)) 140*53ee8cc1Swenshuai.xi #define BK_NJPD1_IMG_VSIZE (NJPD1_REG_BASE+NJPD_OFFSET(0x07)) 141*53ee8cc1Swenshuai.xi 142*53ee8cc1Swenshuai.xi // Write-one-clear 143*53ee8cc1Swenshuai.xi #define BK_NJPD1_WRITE_ONE_CLEAR (NJPD1_REG_BASE+NJPD_OFFSET(0x08)) 144*53ee8cc1Swenshuai.xi 145*53ee8cc1Swenshuai.xi // Region of Interest 146*53ee8cc1Swenshuai.xi #define BK_NJPD1_ROI_H_START (NJPD1_REG_BASE+NJPD_OFFSET(0x09)) 147*53ee8cc1Swenshuai.xi #define BK_NJPD1_ROI_V_START (NJPD1_REG_BASE+NJPD_OFFSET(0x0a)) 148*53ee8cc1Swenshuai.xi #define BK_NJPD1_ROI_H_SIZE (NJPD1_REG_BASE+NJPD_OFFSET(0x0b)) 149*53ee8cc1Swenshuai.xi #define BK_NJPD1_ROI_V_SIZE (NJPD1_REG_BASE+NJPD_OFFSET(0x0c)) 150*53ee8cc1Swenshuai.xi 151*53ee8cc1Swenshuai.xi // Gated-Clock Control 152*53ee8cc1Swenshuai.xi #define BK_NJPD1_GATED_CLOCK_CTRL (NJPD1_REG_BASE+NJPD_OFFSET(0x0d)) 153*53ee8cc1Swenshuai.xi 154*53ee8cc1Swenshuai.xi // Miu Interface 155*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_STATUS (NJPD1_REG_BASE+NJPD_OFFSET(0x0e)) 156*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_IBUFFER_CNT (NJPD1_REG_BASE+NJPD_OFFSET(0x0f)) 157*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_START_ADDR_L (NJPD1_REG_BASE+NJPD_OFFSET(0x10)) 158*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_START_ADDR_H (NJPD1_REG_BASE+NJPD_OFFSET(0x11)) 159*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_BUFFER0_START_ADDR_L (NJPD1_REG_BASE+NJPD_OFFSET(0x12)) 160*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_BUFFER0_START_ADDR_H (NJPD1_REG_BASE+NJPD_OFFSET(0x13)) 161*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_BUFFER0_END_ADDR_L (NJPD1_REG_BASE+NJPD_OFFSET(0x14)) 162*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_BUFFER0_END_ADDR_H (NJPD1_REG_BASE+NJPD_OFFSET(0x15)) 163*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_BUFFER1_START_ADDR_L (NJPD1_REG_BASE+NJPD_OFFSET(0x16)) 164*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_BUFFER1_START_ADDR_H (NJPD1_REG_BASE+NJPD_OFFSET(0x17)) 165*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_BUFFER1_END_ADDR_L (NJPD1_REG_BASE+NJPD_OFFSET(0x18)) 166*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_BUFFER1_END_ADDR_H (NJPD1_REG_BASE+NJPD_OFFSET(0x19)) 167*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_WRITE_START_ADDR_L (NJPD1_REG_BASE+NJPD_OFFSET(0x1a)) 168*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_WRITE_START_ADDR_H (NJPD1_REG_BASE+NJPD_OFFSET(0x1b)) 169*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_WRITE_POINTER_ADDR_L (NJPD1_REG_BASE+NJPD_OFFSET(0x1c)) 170*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_WRITE_POINTER_ADDR_H (NJPD1_REG_BASE+NJPD_OFFSET(0x1d)) 171*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_POINTER_ADDR_L (NJPD1_REG_BASE+NJPD_OFFSET(0x1e)) 172*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_READ_POINTER_ADDR_H (NJPD1_REG_BASE+NJPD_OFFSET(0x1f)) 173*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_HTABLE_START_ADDR_L (NJPD1_REG_BASE+NJPD_OFFSET(0x20)) 174*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_HTABLE_START_ADDR_H (NJPD1_REG_BASE+NJPD_OFFSET(0x21)) 175*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_GTABLE_START_ADDR_L (NJPD1_REG_BASE+NJPD_OFFSET(0x22)) 176*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_GTABLE_START_ADDR_H (NJPD1_REG_BASE+NJPD_OFFSET(0x23)) 177*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_QTABLE_START_ADDR_L (NJPD1_REG_BASE+NJPD_OFFSET(0x24)) 178*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_QTABLE_START_ADDR_H (NJPD1_REG_BASE+NJPD_OFFSET(0x25)) 179*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_HTABLE_SIZE (NJPD1_REG_BASE+NJPD_OFFSET(0x26)) 180*53ee8cc1Swenshuai.xi #define BK_NJPD1_SET_CHROMA_VALUE (NJPD1_REG_BASE+NJPD_OFFSET(0x27)) 181*53ee8cc1Swenshuai.xi #define BK_NJPD1_IBUF_READ_LENGTH (NJPD1_REG_BASE+NJPD_OFFSET(0x28)) 182*53ee8cc1Swenshuai.xi 183*53ee8cc1Swenshuai.xi 184*53ee8cc1Swenshuai.xi // Interrupt 185*53ee8cc1Swenshuai.xi #define BK_NJPD1_IRQ_CLEAR (NJPD1_REG_BASE+NJPD_OFFSET(0x29)) 186*53ee8cc1Swenshuai.xi #define BK_NJPD1_IRQ_FORCE (NJPD1_REG_BASE+NJPD_OFFSET(0x2a)) 187*53ee8cc1Swenshuai.xi #define BK_NJPD1_IRQ_MASK (NJPD1_REG_BASE+NJPD_OFFSET(0x2b)) 188*53ee8cc1Swenshuai.xi #define BK_NJPD1_IRQ_FINAL_S (NJPD1_REG_BASE+NJPD_OFFSET(0x2c)) 189*53ee8cc1Swenshuai.xi #define BK_NJPD1_IRQ_RAW_S (NJPD1_REG_BASE+NJPD_OFFSET(0x2d)) 190*53ee8cc1Swenshuai.xi 191*53ee8cc1Swenshuai.xi // Sram Gated-Clock Control 192*53ee8cc1Swenshuai.xi #define BK_NJPD1_MIU_TLB (NJPD1_REG_BASE+NJPD_OFFSET(0x2f)+1) 193*53ee8cc1Swenshuai.xi 194*53ee8cc1Swenshuai.xi // Debug 195*53ee8cc1Swenshuai.xi #define BK_NJPD1_ROW_IDEX (NJPD1_REG_BASE+NJPD_OFFSET(0x30)) 196*53ee8cc1Swenshuai.xi #define BK_NJPD1_COLUMN_IDEX (NJPD1_REG_BASE+NJPD_OFFSET(0x31)) 197*53ee8cc1Swenshuai.xi #define BK_NJPD1_DEBUG_BUS_SELECT (NJPD1_REG_BASE+NJPD_OFFSET(0x32)) 198*53ee8cc1Swenshuai.xi #define BK_NJPD1_DEBUG_BUS_H (NJPD1_REG_BASE+NJPD_OFFSET(0x33)) 199*53ee8cc1Swenshuai.xi #define BK_NJPD1_DEBUG_BUS_L (NJPD1_REG_BASE+NJPD_OFFSET(0x34)) 200*53ee8cc1Swenshuai.xi #define BK_NJPD1_IBUF_BYTE_COUNT_L (NJPD1_REG_BASE+NJPD_OFFSET(0x35)) 201*53ee8cc1Swenshuai.xi #define BK_NJPD1_IBUF_BYTE_COUNT_H (NJPD1_REG_BASE+NJPD_OFFSET(0x36)) 202*53ee8cc1Swenshuai.xi #define BK_NJPD1_VLD_BYTE_COUNT_L (NJPD1_REG_BASE+NJPD_OFFSET(0x37)) 203*53ee8cc1Swenshuai.xi #define BK_NJPD1_VLD_BYTE_COUNT_H (NJPD1_REG_BASE+NJPD_OFFSET(0x38)) 204*53ee8cc1Swenshuai.xi #define BK_NJPD1_VLD_DECODING_DATA_L (NJPD1_REG_BASE+NJPD_OFFSET(0x39)) 205*53ee8cc1Swenshuai.xi #define BK_NJPD1_VLD_DECODING_DATA_H (NJPD1_REG_BASE+NJPD_OFFSET(0x3a)) 206*53ee8cc1Swenshuai.xi #define BK_NJPD1_DEBUG_TRIG_CYCLE (NJPD1_REG_BASE+NJPD_OFFSET(0x3b)) 207*53ee8cc1Swenshuai.xi #define BK_NJPD1_DEBUG_TRIG_MBX (NJPD1_REG_BASE+NJPD_OFFSET(0x3c)) 208*53ee8cc1Swenshuai.xi #define BK_NJPD1_DEBUG_TRIG_MBY (NJPD1_REG_BASE+NJPD_OFFSET(0x3d)) 209*53ee8cc1Swenshuai.xi #define BK_NJPD1_DEBUG_TRIGGER (NJPD1_REG_BASE+NJPD_OFFSET(0x3e)) 210*53ee8cc1Swenshuai.xi 211*53ee8cc1Swenshuai.xi 212*53ee8cc1Swenshuai.xi // BIST 213*53ee8cc1Swenshuai.xi #define BK_NJPD1_BIST_FAIL (NJPD1_REG_BASE+NJPD_OFFSET(0x3f)) 214*53ee8cc1Swenshuai.xi 215*53ee8cc1Swenshuai.xi 216*53ee8cc1Swenshuai.xi // TBC RIU Interface 217*53ee8cc1Swenshuai.xi #define BK_NJPD1_TBC (NJPD1_REG_BASE+NJPD_OFFSET(0x40)) 218*53ee8cc1Swenshuai.xi #define BK_NJPD1_TBC_WDATA0 (NJPD1_REG_BASE+NJPD_OFFSET(0x41)) 219*53ee8cc1Swenshuai.xi #define BK_NJPD1_TBC_WDATA1 (NJPD1_REG_BASE+NJPD_OFFSET(0x42)) 220*53ee8cc1Swenshuai.xi #define BK_NJPD1_TBC_RDATA_L (NJPD1_REG_BASE+NJPD_OFFSET(0x43)) 221*53ee8cc1Swenshuai.xi #define BK_NJPD1_TBC_RDATA_H (NJPD1_REG_BASE+NJPD_OFFSET(0x44)) 222*53ee8cc1Swenshuai.xi 223*53ee8cc1Swenshuai.xi 224*53ee8cc1Swenshuai.xi // Max Huffman Table Address 225*53ee8cc1Swenshuai.xi #define BK_NJPD1_Y_MAX_HUFFTABLE_ADDRESS (NJPD1_REG_BASE+NJPD_OFFSET(0x45)) 226*53ee8cc1Swenshuai.xi #define BK_NJPD1_CB_MAX_HUFFTABLE_ADDRESS (NJPD1_REG_BASE+NJPD_OFFSET(0x46)) 227*53ee8cc1Swenshuai.xi #define BK_NJPD1_CR_MAX_HUFFTABLE_ADDRESS (NJPD1_REG_BASE+NJPD_OFFSET(0x47)) 228*53ee8cc1Swenshuai.xi 229*53ee8cc1Swenshuai.xi 230*53ee8cc1Swenshuai.xi // Spare 231*53ee8cc1Swenshuai.xi #define BK_NJPD1_SPARE00 (NJPD1_REG_BASE+NJPD_OFFSET(0x48)) 232*53ee8cc1Swenshuai.xi #define BK_NJPD1_SPARE01 (NJPD1_REG_BASE+NJPD_OFFSET(0x49)) 233*53ee8cc1Swenshuai.xi #define BK_NJPD1_SPARE02 (NJPD1_REG_BASE+NJPD_OFFSET(0x4a)) 234*53ee8cc1Swenshuai.xi #define BK_NJPD1_SPARE03 (NJPD1_REG_BASE+NJPD_OFFSET(0x4b)) 235*53ee8cc1Swenshuai.xi #define BK_NJPD1_SPARE04 (NJPD1_REG_BASE+NJPD_OFFSET(0x4c)) 236*53ee8cc1Swenshuai.xi #define BK_NJPD1_SPARE05 (NJPD1_REG_BASE+NJPD_OFFSET(0x4d)) 237*53ee8cc1Swenshuai.xi #define BK_NJPD1_SPARE06 (NJPD1_REG_BASE+NJPD_OFFSET(0x4e)) 238*53ee8cc1Swenshuai.xi #define BK_NJPD1_SPARE07 (NJPD1_REG_BASE+NJPD_OFFSET(0x4f)) 239*53ee8cc1Swenshuai.xi 240*53ee8cc1Swenshuai.xi #define BK_NJPD1_SPARE07 (NJPD1_REG_BASE+NJPD_OFFSET(0x4f)) 241*53ee8cc1Swenshuai.xi 242*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_SETTING_00 (NJPD1_REG_BASE+NJPD_OFFSET(0x50)) 243*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_SETTING_01 (NJPD1_REG_BASE+NJPD_OFFSET(0x51)) 244*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_SETTING_02 (NJPD1_REG_BASE+NJPD_OFFSET(0x52)) 245*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_SETTING_03 (NJPD1_REG_BASE+NJPD_OFFSET(0x53)) 246*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_SETTING_04 (NJPD1_REG_BASE+NJPD_OFFSET(0x54)) 247*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_SETTING_05 (NJPD1_REG_BASE+NJPD_OFFSET(0x55)) 248*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_SETTING_06 (NJPD1_REG_BASE+NJPD_OFFSET(0x56)) 249*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_SETTING_07 (NJPD1_REG_BASE+NJPD_OFFSET(0x57)) 250*53ee8cc1Swenshuai.xi 251*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_UBOUND_0_L (NJPD1_REG_BASE+NJPD_OFFSET(0x58)) 252*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_UBOUND_0_H (NJPD1_REG_BASE+NJPD_OFFSET(0x59)) 253*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_LBOUND_0_L (NJPD1_REG_BASE+NJPD_OFFSET(0x5a)) 254*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_LBOUND_0_H (NJPD1_REG_BASE+NJPD_OFFSET(0x5b)) 255*53ee8cc1Swenshuai.xi 256*53ee8cc1Swenshuai.xi 257*53ee8cc1Swenshuai.xi #define BK_NJPD1_CRC_MODE (NJPD1_REG_BASE+NJPD_OFFSET(0x6d)) 258*53ee8cc1Swenshuai.xi 259*53ee8cc1Swenshuai.xi // Miu Arbiter 260*53ee8cc1Swenshuai.xi // TODO: MIU Arbiter registers 261*53ee8cc1Swenshuai.xi 262*53ee8cc1Swenshuai.xi 263*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_CRC_RESULT_0 (NJPD1_REG_BASE+NJPD_OFFSET(0x70)) 264*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_CRC_RESULT_1 (NJPD1_REG_BASE+NJPD_OFFSET(0x71)) 265*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_CRC_RESULT_2 (NJPD1_REG_BASE+NJPD_OFFSET(0x72)) 266*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_CRC_RESULT_3 (NJPD1_REG_BASE+NJPD_OFFSET(0x73)) 267*53ee8cc1Swenshuai.xi #define BK_NJPD1_MARB_RESET (NJPD1_REG_BASE+NJPD_OFFSET(0x74)) 268*53ee8cc1Swenshuai.xi #define BK_NJPD1_HANDSHAKE_CNT (NJPD1_REG_BASE+NJPD_OFFSET(0x74)+1) 269*53ee8cc1Swenshuai.xi #define BK_NJPD1_SW_MB_ROW_CNT (NJPD1_REG_BASE+NJPD_OFFSET(0x75)) 270*53ee8cc1Swenshuai.xi #define BK_NJPD1_HANDSHAKE (NJPD1_REG_BASE+NJPD_OFFSET(0x75)+1) 271*53ee8cc1Swenshuai.xi #define BK_NJPD1_TOP_MARB_PORT_ENABLE (NJPD1_REG_BASE+NJPD_OFFSET(0x76)) 272*53ee8cc1Swenshuai.xi 273*53ee8cc1Swenshuai.xi #define BK_NJPD1_GENERAL(x) (NJPD1_REG_BASE+NJPD_OFFSET(x)) 274*53ee8cc1Swenshuai.xi 275*53ee8cc1Swenshuai.xi 276*53ee8cc1Swenshuai.xi // NJPD2 register======================================================================= 277*53ee8cc1Swenshuai.xi 278*53ee8cc1Swenshuai.xi 279*53ee8cc1Swenshuai.xi // Global Setting 280*53ee8cc1Swenshuai.xi #define BK_NJPD2_GLOBAL_SETTING00 (NJPD2_REG_BASE+NJPD_OFFSET(0x00)) 281*53ee8cc1Swenshuai.xi #define BK_NJPD2_GLOBAL_SETTING01 (NJPD2_REG_BASE+NJPD_OFFSET(0x01)) 282*53ee8cc1Swenshuai.xi #define BK_NJPD2_GLOBAL_SETTING02 (NJPD2_REG_BASE+NJPD_OFFSET(0x02)) 283*53ee8cc1Swenshuai.xi 284*53ee8cc1Swenshuai.xi // Pitch Width 285*53ee8cc1Swenshuai.xi #define BK_NJPD2_PITCH_WIDTH (NJPD2_REG_BASE+NJPD_OFFSET(0x03)) 286*53ee8cc1Swenshuai.xi 287*53ee8cc1Swenshuai.xi // Restart Interval 288*53ee8cc1Swenshuai.xi #define BK_NJPD2_RESTART_INTERVAL (NJPD2_REG_BASE+NJPD_OFFSET(0x05)) 289*53ee8cc1Swenshuai.xi 290*53ee8cc1Swenshuai.xi // Image Size 291*53ee8cc1Swenshuai.xi #define BK_NJPD2_IMG_HSIZE (NJPD2_REG_BASE+NJPD_OFFSET(0x06)) 292*53ee8cc1Swenshuai.xi #define BK_NJPD2_IMG_VSIZE (NJPD2_REG_BASE+NJPD_OFFSET(0x07)) 293*53ee8cc1Swenshuai.xi 294*53ee8cc1Swenshuai.xi // Write-one-clear 295*53ee8cc1Swenshuai.xi #define BK_NJPD2_WRITE_ONE_CLEAR (NJPD2_REG_BASE+NJPD_OFFSET(0x08)) 296*53ee8cc1Swenshuai.xi 297*53ee8cc1Swenshuai.xi // Region of Interest 298*53ee8cc1Swenshuai.xi #define BK_NJPD2_ROI_H_START (NJPD2_REG_BASE+NJPD_OFFSET(0x09)) 299*53ee8cc1Swenshuai.xi #define BK_NJPD2_ROI_V_START (NJPD2_REG_BASE+NJPD_OFFSET(0x0a)) 300*53ee8cc1Swenshuai.xi #define BK_NJPD2_ROI_H_SIZE (NJPD2_REG_BASE+NJPD_OFFSET(0x0b)) 301*53ee8cc1Swenshuai.xi #define BK_NJPD2_ROI_V_SIZE (NJPD2_REG_BASE+NJPD_OFFSET(0x0c)) 302*53ee8cc1Swenshuai.xi 303*53ee8cc1Swenshuai.xi // Gated-Clock Control 304*53ee8cc1Swenshuai.xi #define BK_NJPD2_GATED_CLOCK_CTRL (NJPD2_REG_BASE+NJPD_OFFSET(0x0d)) 305*53ee8cc1Swenshuai.xi 306*53ee8cc1Swenshuai.xi // Miu Interface 307*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_STATUS (NJPD2_REG_BASE+NJPD_OFFSET(0x0e)) 308*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_IBUFFER_CNT (NJPD2_REG_BASE+NJPD_OFFSET(0x0f)) 309*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_START_ADDR_L (NJPD2_REG_BASE+NJPD_OFFSET(0x10)) 310*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_START_ADDR_H (NJPD2_REG_BASE+NJPD_OFFSET(0x11)) 311*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_BUFFER0_START_ADDR_L (NJPD2_REG_BASE+NJPD_OFFSET(0x12)) 312*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_BUFFER0_START_ADDR_H (NJPD2_REG_BASE+NJPD_OFFSET(0x13)) 313*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_BUFFER0_END_ADDR_L (NJPD2_REG_BASE+NJPD_OFFSET(0x14)) 314*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_BUFFER0_END_ADDR_H (NJPD2_REG_BASE+NJPD_OFFSET(0x15)) 315*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_BUFFER1_START_ADDR_L (NJPD2_REG_BASE+NJPD_OFFSET(0x16)) 316*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_BUFFER1_START_ADDR_H (NJPD2_REG_BASE+NJPD_OFFSET(0x17)) 317*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_BUFFER1_END_ADDR_L (NJPD2_REG_BASE+NJPD_OFFSET(0x18)) 318*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_BUFFER1_END_ADDR_H (NJPD2_REG_BASE+NJPD_OFFSET(0x19)) 319*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_WRITE_START_ADDR_L (NJPD2_REG_BASE+NJPD_OFFSET(0x1a)) 320*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_WRITE_START_ADDR_H (NJPD2_REG_BASE+NJPD_OFFSET(0x1b)) 321*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_WRITE_POINTER_ADDR_L (NJPD2_REG_BASE+NJPD_OFFSET(0x1c)) 322*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_WRITE_POINTER_ADDR_H (NJPD2_REG_BASE+NJPD_OFFSET(0x1d)) 323*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_POINTER_ADDR_L (NJPD2_REG_BASE+NJPD_OFFSET(0x1e)) 324*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_READ_POINTER_ADDR_H (NJPD2_REG_BASE+NJPD_OFFSET(0x1f)) 325*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_HTABLE_START_ADDR_L (NJPD2_REG_BASE+NJPD_OFFSET(0x20)) 326*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_HTABLE_START_ADDR_H (NJPD2_REG_BASE+NJPD_OFFSET(0x21)) 327*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_GTABLE_START_ADDR_L (NJPD2_REG_BASE+NJPD_OFFSET(0x22)) 328*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_GTABLE_START_ADDR_H (NJPD2_REG_BASE+NJPD_OFFSET(0x23)) 329*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_QTABLE_START_ADDR_L (NJPD2_REG_BASE+NJPD_OFFSET(0x24)) 330*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_QTABLE_START_ADDR_H (NJPD2_REG_BASE+NJPD_OFFSET(0x25)) 331*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_HTABLE_SIZE (NJPD2_REG_BASE+NJPD_OFFSET(0x26)) 332*53ee8cc1Swenshuai.xi #define BK_NJPD2_SET_CHROMA_VALUE (NJPD2_REG_BASE+NJPD_OFFSET(0x27)) 333*53ee8cc1Swenshuai.xi #define BK_NJPD2_IBUF_READ_LENGTH (NJPD2_REG_BASE+NJPD_OFFSET(0x28)) 334*53ee8cc1Swenshuai.xi 335*53ee8cc1Swenshuai.xi 336*53ee8cc1Swenshuai.xi // Interrupt 337*53ee8cc1Swenshuai.xi #define BK_NJPD2_IRQ_CLEAR (NJPD2_REG_BASE+NJPD_OFFSET(0x29)) 338*53ee8cc1Swenshuai.xi #define BK_NJPD2_IRQ_FORCE (NJPD2_REG_BASE+NJPD_OFFSET(0x2a)) 339*53ee8cc1Swenshuai.xi #define BK_NJPD2_IRQ_MASK (NJPD2_REG_BASE+NJPD_OFFSET(0x2b)) 340*53ee8cc1Swenshuai.xi #define BK_NJPD2_IRQ_FINAL_S (NJPD2_REG_BASE+NJPD_OFFSET(0x2c)) 341*53ee8cc1Swenshuai.xi #define BK_NJPD2_IRQ_RAW_S (NJPD2_REG_BASE+NJPD_OFFSET(0x2d)) 342*53ee8cc1Swenshuai.xi 343*53ee8cc1Swenshuai.xi // Sram Gated-Clock Control 344*53ee8cc1Swenshuai.xi #define BK_NJPD2_MIU_TLB (NJPD2_REG_BASE+NJPD_OFFSET(0x2f)+1) 345*53ee8cc1Swenshuai.xi 346*53ee8cc1Swenshuai.xi 347*53ee8cc1Swenshuai.xi // Debug 348*53ee8cc1Swenshuai.xi #define BK_NJPD2_ROW_IDEX (NJPD2_REG_BASE+NJPD_OFFSET(0x30)) 349*53ee8cc1Swenshuai.xi #define BK_NJPD2_COLUMN_IDEX (NJPD2_REG_BASE+NJPD_OFFSET(0x31)) 350*53ee8cc1Swenshuai.xi #define BK_NJPD2_DEBUG_BUS_SELECT (NJPD2_REG_BASE+NJPD_OFFSET(0x32)) 351*53ee8cc1Swenshuai.xi #define BK_NJPD2_DEBUG_BUS_H (NJPD2_REG_BASE+NJPD_OFFSET(0x33)) 352*53ee8cc1Swenshuai.xi #define BK_NJPD2_DEBUG_BUS_L (NJPD2_REG_BASE+NJPD_OFFSET(0x34)) 353*53ee8cc1Swenshuai.xi #define BK_NJPD2_IBUF_BYTE_COUNT_L (NJPD2_REG_BASE+NJPD_OFFSET(0x35)) 354*53ee8cc1Swenshuai.xi #define BK_NJPD2_IBUF_BYTE_COUNT_H (NJPD2_REG_BASE+NJPD_OFFSET(0x36)) 355*53ee8cc1Swenshuai.xi #define BK_NJPD2_VLD_BYTE_COUNT_L (NJPD2_REG_BASE+NJPD_OFFSET(0x37)) 356*53ee8cc1Swenshuai.xi #define BK_NJPD2_VLD_BYTE_COUNT_H (NJPD2_REG_BASE+NJPD_OFFSET(0x38)) 357*53ee8cc1Swenshuai.xi #define BK_NJPD2_VLD_DECODING_DATA_L (NJPD2_REG_BASE+NJPD_OFFSET(0x39)) 358*53ee8cc1Swenshuai.xi #define BK_NJPD2_VLD_DECODING_DATA_H (NJPD2_REG_BASE+NJPD_OFFSET(0x3a)) 359*53ee8cc1Swenshuai.xi #define BK_NJPD2_DEBUG_TRIG_CYCLE (NJPD2_REG_BASE+NJPD_OFFSET(0x3b)) 360*53ee8cc1Swenshuai.xi #define BK_NJPD2_DEBUG_TRIG_MBX (NJPD2_REG_BASE+NJPD_OFFSET(0x3c)) 361*53ee8cc1Swenshuai.xi #define BK_NJPD2_DEBUG_TRIG_MBY (NJPD2_REG_BASE+NJPD_OFFSET(0x3d)) 362*53ee8cc1Swenshuai.xi #define BK_NJPD2_DEBUG_TRIGGER (NJPD2_REG_BASE+NJPD_OFFSET(0x3e)) 363*53ee8cc1Swenshuai.xi 364*53ee8cc1Swenshuai.xi 365*53ee8cc1Swenshuai.xi // BIST 366*53ee8cc1Swenshuai.xi #define BK_NJPD2_BIST_FAIL (NJPD2_REG_BASE+NJPD_OFFSET(0x3f)) 367*53ee8cc1Swenshuai.xi 368*53ee8cc1Swenshuai.xi 369*53ee8cc1Swenshuai.xi // TBC RIU Interface 370*53ee8cc1Swenshuai.xi #define BK_NJPD2_TBC (NJPD2_REG_BASE+NJPD_OFFSET(0x40)) 371*53ee8cc1Swenshuai.xi #define BK_NJPD2_TBC_WDATA0 (NJPD2_REG_BASE+NJPD_OFFSET(0x41)) 372*53ee8cc1Swenshuai.xi #define BK_NJPD2_TBC_WDATA1 (NJPD2_REG_BASE+NJPD_OFFSET(0x42)) 373*53ee8cc1Swenshuai.xi #define BK_NJPD2_TBC_RDATA_L (NJPD2_REG_BASE+NJPD_OFFSET(0x43)) 374*53ee8cc1Swenshuai.xi #define BK_NJPD2_TBC_RDATA_H (NJPD2_REG_BASE+NJPD_OFFSET(0x44)) 375*53ee8cc1Swenshuai.xi 376*53ee8cc1Swenshuai.xi 377*53ee8cc1Swenshuai.xi // Max Huffman Table Address 378*53ee8cc1Swenshuai.xi #define BK_NJPD2_Y_MAX_HUFFTABLE_ADDRESS (NJPD2_REG_BASE+NJPD_OFFSET(0x45)) 379*53ee8cc1Swenshuai.xi #define BK_NJPD2_CB_MAX_HUFFTABLE_ADDRESS (NJPD2_REG_BASE+NJPD_OFFSET(0x46)) 380*53ee8cc1Swenshuai.xi #define BK_NJPD2_CR_MAX_HUFFTABLE_ADDRESS (NJPD2_REG_BASE+NJPD_OFFSET(0x47)) 381*53ee8cc1Swenshuai.xi 382*53ee8cc1Swenshuai.xi 383*53ee8cc1Swenshuai.xi // Spare 384*53ee8cc1Swenshuai.xi #define BK_NJPD2_SPARE00 (NJPD2_REG_BASE+NJPD_OFFSET(0x48)) 385*53ee8cc1Swenshuai.xi #define BK_NJPD2_SPARE01 (NJPD2_REG_BASE+NJPD_OFFSET(0x49)) 386*53ee8cc1Swenshuai.xi #define BK_NJPD2_SPARE02 (NJPD2_REG_BASE+NJPD_OFFSET(0x4a)) 387*53ee8cc1Swenshuai.xi #define BK_NJPD2_SPARE03 (NJPD2_REG_BASE+NJPD_OFFSET(0x4b)) 388*53ee8cc1Swenshuai.xi #define BK_NJPD2_SPARE04 (NJPD2_REG_BASE+NJPD_OFFSET(0x4c)) 389*53ee8cc1Swenshuai.xi #define BK_NJPD2_SPARE05 (NJPD2_REG_BASE+NJPD_OFFSET(0x4d)) 390*53ee8cc1Swenshuai.xi #define BK_NJPD2_SPARE06 (NJPD2_REG_BASE+NJPD_OFFSET(0x4e)) 391*53ee8cc1Swenshuai.xi #define BK_NJPD2_SPARE07 (NJPD2_REG_BASE+NJPD_OFFSET(0x4f)) 392*53ee8cc1Swenshuai.xi 393*53ee8cc1Swenshuai.xi #define BK_NJPD2_SPARE07 (NJPD2_REG_BASE+NJPD_OFFSET(0x4f)) 394*53ee8cc1Swenshuai.xi 395*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_SETTING_00 (NJPD2_REG_BASE+NJPD_OFFSET(0x50)) 396*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_SETTING_01 (NJPD2_REG_BASE+NJPD_OFFSET(0x51)) 397*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_SETTING_02 (NJPD2_REG_BASE+NJPD_OFFSET(0x52)) 398*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_SETTING_03 (NJPD2_REG_BASE+NJPD_OFFSET(0x53)) 399*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_SETTING_04 (NJPD2_REG_BASE+NJPD_OFFSET(0x54)) 400*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_SETTING_05 (NJPD2_REG_BASE+NJPD_OFFSET(0x55)) 401*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_SETTING_06 (NJPD2_REG_BASE+NJPD_OFFSET(0x56)) 402*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_SETTING_07 (NJPD2_REG_BASE+NJPD_OFFSET(0x57)) 403*53ee8cc1Swenshuai.xi 404*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_UBOUND_0_L (NJPD2_REG_BASE+NJPD_OFFSET(0x58)) 405*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_UBOUND_0_H (NJPD2_REG_BASE+NJPD_OFFSET(0x59)) 406*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_LBOUND_0_L (NJPD2_REG_BASE+NJPD_OFFSET(0x5a)) 407*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_LBOUND_0_H (NJPD2_REG_BASE+NJPD_OFFSET(0x5b)) 408*53ee8cc1Swenshuai.xi 409*53ee8cc1Swenshuai.xi 410*53ee8cc1Swenshuai.xi #define BK_NJPD2_CRC_MODE (NJPD2_REG_BASE+NJPD_OFFSET(0x6d)) 411*53ee8cc1Swenshuai.xi 412*53ee8cc1Swenshuai.xi // Miu Arbiter 413*53ee8cc1Swenshuai.xi // TODO: MIU Arbiter registers 414*53ee8cc1Swenshuai.xi 415*53ee8cc1Swenshuai.xi 416*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_CRC_RESULT_0 (NJPD2_REG_BASE+NJPD_OFFSET(0x70)) 417*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_CRC_RESULT_1 (NJPD2_REG_BASE+NJPD_OFFSET(0x71)) 418*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_CRC_RESULT_2 (NJPD2_REG_BASE+NJPD_OFFSET(0x72)) 419*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_CRC_RESULT_3 (NJPD2_REG_BASE+NJPD_OFFSET(0x73)) 420*53ee8cc1Swenshuai.xi #define BK_NJPD2_MARB_RESET (NJPD2_REG_BASE+NJPD_OFFSET(0x74)) 421*53ee8cc1Swenshuai.xi #define BK_NJPD2_HANDSHAKE_CNT (NJPD2_REG_BASE+NJPD_OFFSET(0x74)+1) 422*53ee8cc1Swenshuai.xi #define BK_NJPD2_SW_MB_ROW_CNT (NJPD2_REG_BASE+NJPD_OFFSET(0x75)) 423*53ee8cc1Swenshuai.xi #define BK_NJPD2_HANDSHAKE (NJPD2_REG_BASE+NJPD_OFFSET(0x75)+1) 424*53ee8cc1Swenshuai.xi #define BK_NJPD2_TOP_MARB_PORT_ENABLE (NJPD2_REG_BASE+NJPD_OFFSET(0x76)) 425*53ee8cc1Swenshuai.xi 426*53ee8cc1Swenshuai.xi #define BK_NJPD2_GENERAL(x) (NJPD2_REG_BASE+NJPD_OFFSET(x)) 427*53ee8cc1Swenshuai.xi 428*53ee8cc1Swenshuai.xi 429*53ee8cc1Swenshuai.xi 430*53ee8cc1Swenshuai.xi 431*53ee8cc1Swenshuai.xi // CLKGEN0 432*53ee8cc1Swenshuai.xi // For Messi, we use bank 0x0B,offset 0x35 bit(8:11) to set reg_ckg_njpd 433*53ee8cc1Swenshuai.xi #define NJPD_CLOCK (NJPD_CLKGEN0_BASE+NJPD_OFFSET(0x35)) // Messi 434*53ee8cc1Swenshuai.xi //CLK_NJPD clock setting 435*53ee8cc1Swenshuai.xi //[0]: disable clock 436*53ee8cc1Swenshuai.xi //[1]: invert clock 437*53ee8cc1Swenshuai.xi //[3:2]: Select clock source 438*53ee8cc1Swenshuai.xi // 00: 288 MHz 439*53ee8cc1Swenshuai.xi // 01: 320 MHz 440*53ee8cc1Swenshuai.xi // 10: 144 MHz 441*53ee8cc1Swenshuai.xi // 11: 192 MHz 442*53ee8cc1Swenshuai.xi 443*53ee8cc1Swenshuai.xi 444*53ee8cc1Swenshuai.xi // MIU 445*53ee8cc1Swenshuai.xi #define NJPD_MIU0_BASE 0x1200 446*53ee8cc1Swenshuai.xi #define NJPD_MIU1_BASE 0x0600 447*53ee8cc1Swenshuai.xi // monet: h0033 h0033 15 0 reg_rq1_mask, bit 5, 6 448*53ee8cc1Swenshuai.xi #define NJPD_MIU0_RQ1_MASK (NJPD_MIU0_BASE+NJPD_OFFSET(0x33)) 449*53ee8cc1Swenshuai.xi #define NJPD_MIU1_RQ1_MASK (NJPD_MIU1_BASE+NJPD_OFFSET(0x33)) 450*53ee8cc1Swenshuai.xi #define NJPD0_MIU0_CLIENT_NJPD NJPD_BIT(5) //bit5 of the first byte (bit 5) 451*53ee8cc1Swenshuai.xi #define NJPD0_MIU1_CLIENT_NJPD NJPD_BIT(5) //bit5 of the first byte (bit 5) 452*53ee8cc1Swenshuai.xi #define NJPD1_MIU0_CLIENT_NJPD NJPD_BIT(6) //bit6 of the first byte (bit 6) 453*53ee8cc1Swenshuai.xi #define NJPD1_MIU1_CLIENT_NJPD NJPD_BIT(6) //bit6 of the first byte (bit 6) 454*53ee8cc1Swenshuai.xi // h0079 h0079 15 0 reg_miu_sel1 455*53ee8cc1Swenshuai.xi #define NJPD0_MIU0_MIU_SEL1 (NJPD_MIU0_BASE+NJPD_OFFSET(0x79)) 456*53ee8cc1Swenshuai.xi #define NJPD0_MIU1_MIU_SEL1 (NJPD_MIU1_BASE+NJPD_OFFSET(0x79)) 457*53ee8cc1Swenshuai.xi #define NJPD1_MIU0_MIU_SEL1 (NJPD_MIU0_BASE+NJPD_OFFSET(0x79)) 458*53ee8cc1Swenshuai.xi #define NJPD1_MIU1_MIU_SEL1 (NJPD_MIU1_BASE+NJPD_OFFSET(0x79)) 459*53ee8cc1Swenshuai.xi 460*53ee8cc1Swenshuai.xi // TSP 461*53ee8cc1Swenshuai.xi #define NJPD_TSP_BASE 0x1500 462*53ee8cc1Swenshuai.xi #define REG_TSP_CTRL (NJPD_TSP_BASE + NJPD_OFFSET(0x7A)) 463*53ee8cc1Swenshuai.xi #define REG_TSP_CPU_ENABLE NJPD_BIT(0) 464*53ee8cc1Swenshuai.xi #define REG_TSP_SW_RSTZ NJPD_BIT(1) 465*53ee8cc1Swenshuai.xi #define REG_TSP_STC_L (NJPD_TSP_BASE + NJPD_OFFSET(0x30)) 466*53ee8cc1Swenshuai.xi #define REG_TSP_STC_H (NJPD_TSP_BASE + NJPD_OFFSET(0x31)) 467*53ee8cc1Swenshuai.xi 468*53ee8cc1Swenshuai.xi 469*53ee8cc1Swenshuai.xi // CHIPTOP 470*53ee8cc1Swenshuai.xi // monet: h0021 h0021 15 0 reg_miu_group1_i64 471*53ee8cc1Swenshuai.xi #define NJPD_CHIPTOP_BASE 0x1E00 472*53ee8cc1Swenshuai.xi #define NJPD_MIU_GROUP1_I64 (NJPD_CHIPTOP_BASE + NJPD_OFFSET(0x21)) 473*53ee8cc1Swenshuai.xi #define NJPD_MIU0_CLIENT_NJPD_CS5 NJPD_BIT(5) //bit5 of the first byte (bit 5) 474*53ee8cc1Swenshuai.xi 475*53ee8cc1Swenshuai.xi // TZPC NON-PM 476*53ee8cc1Swenshuai.xi #define NJPD_TZPC_NONPM_BASE 0x23900 477*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_20 (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x20)) 478*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_21 (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x21)) 479*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_22 (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x22)) 480*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_23 (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x23)) 481*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_24 (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x24)) 482*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_25 (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x25)) 483*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_26 (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x26)) 484*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_27 (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x27)) 485*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_28 (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x28)) 486*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_29 (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x29)) 487*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_2A (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x2A)) 488*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_2B (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x2B)) 489*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_2C (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x2C)) 490*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_2D (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x2D)) 491*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_2E (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x2E)) 492*53ee8cc1Swenshuai.xi #define NJPD_NONPM_SECURE_2F (NJPD_TZPC_NONPM_BASE + NJPD_OFFSET(0x2F)) 493*53ee8cc1Swenshuai.xi 494*53ee8cc1Swenshuai.xi #define BK_TZPC_GENERAL(x) (NJPD_TZPC_NONPM_BASE+NJPD_OFFSET(x)) 495*53ee8cc1Swenshuai.xi 496*53ee8cc1Swenshuai.xi #if 0 497*53ee8cc1Swenshuai.xi #define JPD_REG_BASE 0x1700 498*53ee8cc1Swenshuai.xi 499*53ee8cc1Swenshuai.xi #define BK_JPD_SCONFIG (JPD_REG_BASE+NJPD_OFFSET(0x00)) 500*53ee8cc1Swenshuai.xi #define BK_JPD_MCONFIG (JPD_REG_BASE+NJPD_OFFSET(0x01)) 501*53ee8cc1Swenshuai.xi #define BK_JPD_RCSMADR_L (JPD_REG_BASE+NJPD_OFFSET(0x0B)) 502*53ee8cc1Swenshuai.xi #define BK_JPD_RCSMADR_H (JPD_REG_BASE+NJPD_OFFSET(0x0C)) 503*53ee8cc1Swenshuai.xi #define BK_JPD_RBUF_FLOOR_L (JPD_REG_BASE+NJPD_OFFSET(0x0D)) 504*53ee8cc1Swenshuai.xi #define BK_JPD_RBUF_FLOOR_H (JPD_REG_BASE+NJPD_OFFSET(0x0E)) 505*53ee8cc1Swenshuai.xi #define BK_JPD_RBUF_CEIL_L (JPD_REG_BASE+NJPD_OFFSET(0x0F)) 506*53ee8cc1Swenshuai.xi #define BK_JPD_RBUF_CEIL_H (JPD_REG_BASE+NJPD_OFFSET(0x10)) 507*53ee8cc1Swenshuai.xi #define BK_JPD_MWBF_SADR_L (JPD_REG_BASE+NJPD_OFFSET(0x11)) 508*53ee8cc1Swenshuai.xi #define BK_JPD_MWBF_SADR_H (JPD_REG_BASE+NJPD_OFFSET(0x12)) 509*53ee8cc1Swenshuai.xi #define BK_JPD_AUTO_PROTECT (JPD_REG_BASE+NJPD_OFFSET(0x1F)) 510*53ee8cc1Swenshuai.xi #define BK_JPD_MWBF_EADR_L (JPD_REG_BASE+NJPD_OFFSET(0x20)) 511*53ee8cc1Swenshuai.xi #define BK_JPD_MWBF_EADR_H (JPD_REG_BASE+NJPD_OFFSET(0x21)) 512*53ee8cc1Swenshuai.xi 513*53ee8cc1Swenshuai.xi #define BK_JPD1_GENERAL(x) (JPD_REG_BASE+NJPD_OFFSET(x)) 514*53ee8cc1Swenshuai.xi #endif 515*53ee8cc1Swenshuai.xi 516*53ee8cc1Swenshuai.xi #endif // _REG_NJPD_H_ 517*53ee8cc1Swenshuai.xi 518*53ee8cc1Swenshuai.xi 519