//******************** (C) COPYRIGHT 2020 SmartLogic*******************************
// FileName           : gs_que.h
// Author             : lijian, jian.li@smartlogictech.com
// Date First Issued  : 2021-10-23 06:08:32 PM
// Last Modified      : 2022-01-13 02:39:24 PM
// Description        :
// ------------------------------------------------------------
// Modification History:
// Version    Date       Author    Modification Description
//
//**********************************************************************************
#ifndef __GSQUE_H__
#define __GSQUE_H__

#define APSM_QUE_BASE            0x04580000
#define CPSM_QUE_BASE            0x04d50000
#define JSSM_QUE_BASE            0x05f70000
#define JESC_QUE_BASE            0x08480000
#define PETSM_QUE_BASE           0x09200000

//#define   PET_SM_BASE        0x08700000
#define   CPSM_MEM_BASE      0x09300000

#define APQUE_QUE_SIZE_REG0     (*((volatile UINT32 *)(APSM_QUE_BASE + 0x0   )))
#define APQUE_QUE_SIZE_REG1     (*((volatile UINT32 *)(APSM_QUE_BASE + 0x4   )))
#define APQUE_QUE_SIZE_REG2     (*((volatile UINT32 *)(APSM_QUE_BASE + 0x8   )))
#define APQUE_QUE_SIZE_REG3     (*((volatile UINT32 *)(APSM_QUE_BASE + 0xc   )))
#define APQUE_QUE_THR0          (*((volatile UINT32 *)(APSM_QUE_BASE + 0x10  )))
#define APQUE_QUE_THR1          (*((volatile UINT32 *)(APSM_QUE_BASE + 0x14  )))
#define APQUE_QUE_THR2          (*((volatile UINT32 *)(APSM_QUE_BASE + 0x18  )))
#define APQUE_QUE_THR3          (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1c  )))
#define APQUE_QUE_THR4          (*((volatile UINT32 *)(APSM_QUE_BASE + 0x20  )))
#define APQUE_QUE_THR5          (*((volatile UINT32 *)(APSM_QUE_BASE + 0x24  )))
#define APQUE_QUE_THR6          (*((volatile UINT32 *)(APSM_QUE_BASE + 0x28  )))
#define APQUE_QUE_THR7          (*((volatile UINT32 *)(APSM_QUE_BASE + 0x2c  )))
#define APQUE_RD_EPT_PAT        (*((volatile UINT32 *)(APSM_QUE_BASE + 0x30  )))
#define APQUE_SM_CTRL_REG       (*((volatile UINT32 *)(APSM_QUE_BASE + 0x34  )))
#define APQUE_SERDES_MODE       (*((volatile UINT32 *)(APSM_QUE_BASE + 0x38  )))
#define APQUE_QUE_INT_FLAG      (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1000)))
#define APQUE_QUE_INT_EN        (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1004)))
#define APQUE_FIFO_CTRL_REG     (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1008)))
#define APQUE_QUE_EXC_FLAG      (*((volatile UINT32 *)(APSM_QUE_BASE + 0x100c)))
#define APQUE_QUE_EXC_EN        (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1010)))
#define APQUE_QUE_DEPTH0        (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1014)))
#define APQUE_QUE_DEPTH1        (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1018)))
#define APQUE_QUE_DEPTH2        (*((volatile UINT32 *)(APSM_QUE_BASE + 0x101c)))
#define APQUE_QUE_DEPTH3        (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1020)))
#define APQUE_QUE_DEPTH4        (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1024)))
#define APQUE_QUE_DEPTH5        (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1028)))
#define APQUE_QUE_DEPTH6        (*((volatile UINT32 *)(APSM_QUE_BASE + 0x102c)))
#define APQUE_QUE_DEPTH7        (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1030)))
#define APQUE_QUE_RST           (*((volatile UINT32 *)(APSM_QUE_BASE + 0x1034)))

#define CPQUE_QUE_SIZE_REG0     (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x0   )))
#define CPQUE_QUE_SIZE_REG1     (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x4   )))
#define CPQUE_QUE_SIZE_REG2     (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x8   )))
#define CPQUE_QUE_SIZE_REG3     (*((volatile UINT32 *)(CPSM_QUE_BASE + 0xc   )))
#define CPQUE_QUE_THR0          (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10  )))
#define CPQUE_QUE_THR1          (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x14  )))
#define CPQUE_QUE_THR2          (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x18  )))
#define CPQUE_QUE_THR3          (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1c  )))
#define CPQUE_QUE_THR4          (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x20  )))
#define CPQUE_QUE_THR5          (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x24  )))
#define CPQUE_QUE_THR6          (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x28  )))
#define CPQUE_QUE_THR7          (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x2c  )))
#define CPQUE_RD_EPT_PAT        (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x30  )))
#define CPQUE_SM_CTRL_REG       (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x34  )))
#define CPQUE_SERDES_MODE       (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x38  )))
#define CPQUE_QUE_INT_FLAG      (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1000)))
#define CPQUE_QUE_INT_EN        (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1004)))
#define CPQUE_FIFO_CTRL_REG     (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1008)))
#define CPQUE_QUE_EXC_FLAG      (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x100c)))
#define CPQUE_QUE_EXC_EN        (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1010)))
#define CPQUE_QUE_DEPTH0        (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1014)))
#define CPQUE_QUE_DEPTH1        (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1018)))
#define CPQUE_QUE_DEPTH2        (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x101c)))
#define CPQUE_QUE_DEPTH3        (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1020)))
#define CPQUE_QUE_DEPTH4        (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1024)))
#define CPQUE_QUE_DEPTH5        (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1028)))
#define CPQUE_QUE_DEPTH6        (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x102c)))
#define CPQUE_QUE_DEPTH7        (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1030)))
#define CPQUE_QUE_RST           (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1034)))
#define CPQUE_QUE_EMPTYINT_FLAG  (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1038)))
#define CPQUE_QUE_EMPTYINT_EN	(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x103c)))
#define CPQUE_QUE0_PUSH_CNT0	(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1040)))
#define CPQUE_QUE0_PUSH_CNT1    (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1044)))
#define CPQUE_QUE0_POP_CNT0		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1048)))
#define CPQUE_QUE0_POP_CNT1		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x104c)))
#define CPQUE_QUE0_UDF_CNT		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1050)))
#define CPQUE_QUE1_PUSH_CNT0	(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1054)))
#define CPQUE_QUE1_PUSH_CNT1    (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1058)))
#define CPQUE_QUE1_POP_CNT0		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x105c)))
#define CPQUE_QUE1_POP_CNT1		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1060)))
#define CPQUE_QUE1_UDF_CNT		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1064)))
#define CPQUE_QUE2_PUSH_CNT0	(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1068)))
#define CPQUE_QUE2_PUSH_CNT1    (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x106c)))
#define CPQUE_QUE2_POP_CNT0		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1070)))
#define CPQUE_QUE2_POP_CNT1		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1074)))
#define CPQUE_QUE2_UDF_CNT		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1078)))
#define CPQUE_QUE3_PUSH_CNT0	(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x107c)))
#define CPQUE_QUE3_PUSH_CNT1    (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1080)))
#define CPQUE_QUE3_POP_CNT0		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1084)))
#define CPQUE_QUE3_POP_CNT1		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1088)))
#define CPQUE_QUE3_UDF_CNT		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x108c)))
#define CPQUE_QUE4_PUSH_CNT0	(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1090)))
#define CPQUE_QUE4_PUSH_CNT1    (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1094)))
#define CPQUE_QUE4_POP_CNT0		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1098)))
#define CPQUE_QUE4_POP_CNT1		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x109c)))
#define CPQUE_QUE4_UDF_CNT		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10a0)))
#define CPQUE_QUE5_PUSH_CNT0	(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10a4)))
#define CPQUE_QUE5_PUSH_CNT1    (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10a8)))
#define CPQUE_QUE5_POP_CNT0		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10ac)))
#define CPQUE_QUE5_POP_CNT1		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10b0)))
#define CPQUE_QUE5_UDF_CNT		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10b4)))
#define CPQUE_QUE6_PUSH_CNT0	(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10b8)))
#define CPQUE_QUE6_PUSH_CNT1    (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10bc)))
#define CPQUE_QUE6_POP_CNT0		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10c0)))
#define CPQUE_QUE6_POP_CNT1		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10c4)))
#define CPQUE_QUE6_UDF_CNT		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10c8)))
#define CPQUE_QUE7_PUSH_CNT0	(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10cc)))
#define CPQUE_QUE7_PUSH_CNT1    (*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10d0)))
#define CPQUE_QUE7_POP_CNT0		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10d4)))
#define CPQUE_QUE7_POP_CNT1		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10d8)))
#define CPQUE_QUE7_UDF_CNT		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10dc)))

#define CPQUE_QUE0_RADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10e0)))
#define CPQUE_QUE0_WADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10e4)))
#define CPQUE_QUE1_RADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10e8)))
#define CPQUE_QUE1_WADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10ec)))
#define CPQUE_QUE2_RADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10f0)))
#define CPQUE_QUE2_WADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10f4)))
#define CPQUE_QUE3_RADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10f8)))
#define CPQUE_QUE3_WADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x10fc)))
#define CPQUE_QUE4_RADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1100)))
#define CPQUE_QUE4_WADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1104)))
#define CPQUE_QUE5_RADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1108)))
#define CPQUE_QUE5_WADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x110c)))
#define CPQUE_QUE6_RADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1110)))
#define CPQUE_QUE6_WADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1114)))
#define CPQUE_QUE7_RADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x1118)))
#define CPQUE_QUE7_WADDR		(*((volatile UINT32 *)(CPSM_QUE_BASE + 0x111c)))




#define JSQUE_QUE_SIZE_REG0     (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x0   )))
#define JSQUE_QUE_SIZE_REG1     (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x4   )))
#define JSQUE_QUE_SIZE_REG2     (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x8   )))
#define JSQUE_QUE_SIZE_REG3     (*((volatile UINT32 *)(JSSM_QUE_BASE + 0xc   )))
#define JSQUE_QUE_THR0          (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10  )))
#define JSQUE_QUE_THR1          (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x14  )))
#define JSQUE_QUE_THR2          (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x18  )))
#define JSQUE_QUE_THR3          (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1c  )))
#define JSQUE_QUE_THR4          (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x20  )))
#define JSQUE_QUE_THR5          (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x24  )))
#define JSQUE_QUE_THR6          (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x28  )))
#define JSQUE_QUE_THR7          (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x2c  )))
#define JSQUE_RD_EPT_PAT        (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x30  )))
#define JSQUE_SERDES_MODE       (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x38  )))
#define JSQUE_SM_CTRL_REG       (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x34  )))
#define JSQUE_QUE_INT_FLAG      (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1000)))
#define JSQUE_QUE_INT_EN        (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1004)))
#define JSQUE_FIFO_CTRL_REG     (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1008)))
#define JSQUE_QUE_EXC_FLAG      (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x100c)))
#define JSQUE_QUE_EXC_EN        (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1010)))
#define JSQUE_QUE_DEPTH0        (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1014)))
#define JSQUE_QUE_DEPTH1        (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1018)))
#define JSQUE_QUE_DEPTH2        (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x101c)))
#define JSQUE_QUE_DEPTH3        (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1020)))
#define JSQUE_QUE_DEPTH4        (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1024)))
#define JSQUE_QUE_DEPTH5        (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1028)))
#define JSQUE_QUE_DEPTH6        (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x102c)))
#define JSQUE_QUE_DEPTH7        (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1030)))
#define JSQUE_QUE_RST           (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1034)))
#define JSQUE_QUE_EMPTYINT_FLAG   (*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1038)))
#define JSQUE_QUE_EMPTYINT_EN			(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x103c)))
#define JSQUE_QUE0_PUSH_CNT0			(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1040)))
#define JSQUE_QUE0_PUSH_CNT1  		(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1044)))
#define JSQUE_QUE0_POP_CNT0				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1048)))
#define JSQUE_QUE0_POP_CNT1				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x104c)))
#define JSQUE_QUE0_UDF_CNT				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1050)))
#define JSQUE_QUE1_PUSH_CNT0			(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1054)))
#define JSQUE_QUE1_PUSH_CNT1  		(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1058)))
#define JSQUE_QUE1_POP_CNT0				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x105c)))
#define JSQUE_QUE1_POP_CNT1				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1060)))
#define JSQUE_QUE1_UDF_CNT				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1064)))
#define JSQUE_QUE2_PUSH_CNT0			(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1068)))
#define JSQUE_QUE2_PUSH_CNT1  		(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x106c)))
#define JSQUE_QUE2_POP_CNT0				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1070)))
#define JSQUE_QUE2_POP_CNT1				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1074)))
#define JSQUE_QUE2_UDF_CNT				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1078)))
#define JSQUE_QUE3_PUSH_CNT0			(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x107c)))
#define JSQUE_QUE3_PUSH_CNT1  		(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1080)))
#define JSQUE_QUE3_POP_CNT0				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1084)))
#define JSQUE_QUE3_POP_CNT1				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1088)))
#define JSQUE_QUE3_UDF_CNT				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x108c)))
#define JSQUE_QUE4_PUSH_CNT0			(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1090)))
#define JSQUE_QUE4_PUSH_CNT1  		(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1094)))
#define JSQUE_QUE4_POP_CNT0				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1098)))
#define JSQUE_QUE4_POP_CNT1				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x109c)))
#define JSQUE_QUE4_UDF_CNT				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10a0)))
#define JSQUE_QUE5_PUSH_CNT0			(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10a4)))
#define JSQUE_QUE5_PUSH_CNT1  		(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10a8)))
#define JSQUE_QUE5_POP_CNT0				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10ac)))
#define JSQUE_QUE5_POP_CNT1				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10b0)))
#define JSQUE_QUE5_UDF_CNT				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10b4)))
#define JSQUE_QUE6_PUSH_CNT0			(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10b8)))
#define JSQUE_QUE6_PUSH_CNT1  		(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10bc)))
#define JSQUE_QUE6_POP_CNT0				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10c0)))
#define JSQUE_QUE6_POP_CNT1				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10c4)))
#define JSQUE_QUE6_UDF_CNT				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10c8)))
#define JSQUE_QUE7_PUSH_CNT0			(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10cc)))
#define JSQUE_QUE7_PUSH_CNT1  		(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10d0)))
#define JSQUE_QUE7_POP_CNT0				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10d4)))
#define JSQUE_QUE7_POP_CNT1				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10d8)))
#define JSQUE_QUE7_UDF_CNT				(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10dc)))

#define JSQUE_QUE0_RADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10e0)))
#define JSQUE_QUE0_WADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10e4)))
#define JSQUE_QUE1_RADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10e8)))
#define JSQUE_QUE1_WADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10ec)))
#define JSQUE_QUE2_RADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10f0)))
#define JSQUE_QUE2_WADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10f4)))
#define JSQUE_QUE3_RADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10f8)))
#define JSQUE_QUE3_WADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x10fc)))
#define JSQUE_QUE4_RADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1100)))
#define JSQUE_QUE4_WADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1104)))
#define JSQUE_QUE5_RADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1108)))
#define JSQUE_QUE5_WADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x110c)))
#define JSQUE_QUE6_RADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1110)))
#define JSQUE_QUE6_WADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1114)))
#define JSQUE_QUE7_RADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x1118)))
#define JSQUE_QUE7_WADDR					(*((volatile UINT32 *)(JSSM_QUE_BASE + 0x111c)))





#define ESQUE_QUE_SIZE_REG0     (*((volatile UINT32 *)(JESC_QUE_BASE + 0x0   )))
#define ESQUE_QUE_SIZE_REG1     (*((volatile UINT32 *)(JESC_QUE_BASE + 0x4   )))
#define ESQUE_QUE_SIZE_REG2     (*((volatile UINT32 *)(JESC_QUE_BASE + 0x8   )))
#define ESQUE_QUE_SIZE_REG3     (*((volatile UINT32 *)(JESC_QUE_BASE + 0xc   )))
#define ESQUE_QUE_THR0          (*((volatile UINT32 *)(JESC_QUE_BASE + 0x10  )))
#define ESQUE_QUE_THR1          (*((volatile UINT32 *)(JESC_QUE_BASE + 0x14  )))
#define ESQUE_QUE_THR2          (*((volatile UINT32 *)(JESC_QUE_BASE + 0x18  )))
#define ESQUE_QUE_THR3          (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1c  )))
#define ESQUE_QUE_THR4          (*((volatile UINT32 *)(JESC_QUE_BASE + 0x20  )))
#define ESQUE_QUE_THR5          (*((volatile UINT32 *)(JESC_QUE_BASE + 0x24  )))
#define ESQUE_QUE_THR6          (*((volatile UINT32 *)(JESC_QUE_BASE + 0x28  )))
#define ESQUE_QUE_THR7          (*((volatile UINT32 *)(JESC_QUE_BASE + 0x2c  )))
#define ESQUE_RD_EPT_PAT        (*((volatile UINT32 *)(JESC_QUE_BASE + 0x30  )))
#define ESQUE_SM_CTRL_REG       (*((volatile UINT32 *)(JESC_QUE_BASE + 0x34  )))
#define ESQUE_SERDES_MODE       (*((volatile UINT32 *)(JESC_QUE_BASE + 0x38  )))
#define ESQUE_QUE_INT_FLAG      (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1000)))
#define ESQUE_QUE_INT_EN        (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1004)))
#define ESQUE_FIFO_CTRL_REG     (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1008)))
#define ESQUE_QUE_EXC_FLAG      (*((volatile UINT32 *)(JESC_QUE_BASE + 0x100c)))
#define ESQUE_QUE_EXC_EN        (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1010)))
#define ESQUE_QUE_DEPTH0        (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1014)))
#define ESQUE_QUE_DEPTH1        (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1018)))
#define ESQUE_QUE_DEPTH2        (*((volatile UINT32 *)(JESC_QUE_BASE + 0x101c)))
#define ESQUE_QUE_DEPTH3        (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1020)))
#define ESQUE_QUE_DEPTH4        (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1024)))
#define ESQUE_QUE_DEPTH5        (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1028)))
#define ESQUE_QUE_DEPTH6        (*((volatile UINT32 *)(JESC_QUE_BASE + 0x102c)))
#define ESQUE_QUE_DEPTH7        (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1030)))
#define ESQUE_QUE_RST           (*((volatile UINT32 *)(JESC_QUE_BASE + 0x1034)))

#define PETQUE_QUE_SIZE_REG0     (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x0   )))
#define PETQUE_QUE_SIZE_REG1     (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x4   )))
#define PETQUE_QUE_SIZE_REG2     (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x8   )))
#define PETQUE_QUE_SIZE_REG3     (*((volatile UINT32 *)(PETSM_QUE_BASE + 0xc   )))
#define PETQUE_QUE_THR0          (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x10  )))
#define PETQUE_QUE_THR1          (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x14  )))
#define PETQUE_QUE_THR2          (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x18  )))
#define PETQUE_QUE_THR3          (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1c  )))
#define PETQUE_QUE_THR4          (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x20  )))
#define PETQUE_QUE_THR5          (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x24  )))
#define PETQUE_QUE_THR6          (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x28  )))
#define PETQUE_QUE_THR7          (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x2c  )))
#define PETQUE_RD_EPT_PAT        (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x30  )))
#define PETQUE_SM_CTRL_REG       (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x34  )))
#define PETQUE_SERDES_MODE       (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x38  )))
#define PETQUE_QUE_INT_FLAG      (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1000)))
#define PETQUE_QUE_INT_EN        (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1004)))
#define PETQUE_FIFO_CTRL_REG     (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1008)))
#define PETQUE_QUE_EXC_FLAG      (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x100c)))
#define PETQUE_QUE_EXC_EN        (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1010)))
#define PETQUE_QUE_DEPTH0        (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1014)))
#define PETQUE_QUE_DEPTH1        (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1018)))
#define PETQUE_QUE_DEPTH2        (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x101c)))
#define PETQUE_QUE_DEPTH3        (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1020)))
#define PETQUE_QUE_DEPTH4        (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1024)))
#define PETQUE_QUE_DEPTH5        (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1028)))
#define PETQUE_QUE_DEPTH6        (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x102c)))
#define PETQUE_QUE_DEPTH7        (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1030)))
#define PETQUE_QUE_RST           (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x1034)))

#define PETQUE_QUE_EMPTYINT_EN    (*((volatile UINT32 *)(PETSM_QUE_BASE + 0x103c)))


#endif
