1*85c391abSBen Li /* 2*85c391abSBen Li * Copyright 2023 Advanced Micro Devices, Inc. 3*85c391abSBen Li * 4*85c391abSBen Li * Permission is hereby granted, free of charge, to any person obtaining a 5*85c391abSBen Li * copy of this software and associated documentation files (the "Software"), 6*85c391abSBen Li * to deal in the Software without restriction, including without limitation 7*85c391abSBen Li * the rights to use, copy, modify, merge, publish, distribute, sublicense, 8*85c391abSBen Li * and/or sell copies of the Software, and to permit persons to whom the 9*85c391abSBen Li * Software is furnished to do so, subject to the following conditions: 10*85c391abSBen Li * 11*85c391abSBen Li * The above copyright notice and this permission notice shall be included in 12*85c391abSBen Li * all copies or substantial portions of the Software. 13*85c391abSBen Li * 14*85c391abSBen Li * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15*85c391abSBen Li * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16*85c391abSBen Li * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 17*85c391abSBen Li * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR 18*85c391abSBen Li * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 19*85c391abSBen Li * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 20*85c391abSBen Li * OTHER DEALINGS IN THE SOFTWARE. 21*85c391abSBen Li * 22*85c391abSBen Li */ 23*85c391abSBen Li #ifndef _osssys_6_1_0_SH_MASK_HEADER 24*85c391abSBen Li #define _osssys_6_1_0_SH_MASK_HEADER 25*85c391abSBen Li 26*85c391abSBen Li 27*85c391abSBen Li // addressBlock: osssys_osssysdec 28*85c391abSBen Li //IH_VMID_0_LUT 29*85c391abSBen Li #define IH_VMID_0_LUT__PASID__SHIFT 0x0 30*85c391abSBen Li #define IH_VMID_0_LUT__PASID_MASK 0x0000FFFFL 31*85c391abSBen Li //IH_VMID_1_LUT 32*85c391abSBen Li #define IH_VMID_1_LUT__PASID__SHIFT 0x0 33*85c391abSBen Li #define IH_VMID_1_LUT__PASID_MASK 0x0000FFFFL 34*85c391abSBen Li //IH_VMID_2_LUT 35*85c391abSBen Li #define IH_VMID_2_LUT__PASID__SHIFT 0x0 36*85c391abSBen Li #define IH_VMID_2_LUT__PASID_MASK 0x0000FFFFL 37*85c391abSBen Li //IH_VMID_3_LUT 38*85c391abSBen Li #define IH_VMID_3_LUT__PASID__SHIFT 0x0 39*85c391abSBen Li #define IH_VMID_3_LUT__PASID_MASK 0x0000FFFFL 40*85c391abSBen Li //IH_VMID_4_LUT 41*85c391abSBen Li #define IH_VMID_4_LUT__PASID__SHIFT 0x0 42*85c391abSBen Li #define IH_VMID_4_LUT__PASID_MASK 0x0000FFFFL 43*85c391abSBen Li //IH_VMID_5_LUT 44*85c391abSBen Li #define IH_VMID_5_LUT__PASID__SHIFT 0x0 45*85c391abSBen Li #define IH_VMID_5_LUT__PASID_MASK 0x0000FFFFL 46*85c391abSBen Li //IH_VMID_6_LUT 47*85c391abSBen Li #define IH_VMID_6_LUT__PASID__SHIFT 0x0 48*85c391abSBen Li #define IH_VMID_6_LUT__PASID_MASK 0x0000FFFFL 49*85c391abSBen Li //IH_VMID_7_LUT 50*85c391abSBen Li #define IH_VMID_7_LUT__PASID__SHIFT 0x0 51*85c391abSBen Li #define IH_VMID_7_LUT__PASID_MASK 0x0000FFFFL 52*85c391abSBen Li //IH_VMID_8_LUT 53*85c391abSBen Li #define IH_VMID_8_LUT__PASID__SHIFT 0x0 54*85c391abSBen Li #define IH_VMID_8_LUT__PASID_MASK 0x0000FFFFL 55*85c391abSBen Li //IH_VMID_9_LUT 56*85c391abSBen Li #define IH_VMID_9_LUT__PASID__SHIFT 0x0 57*85c391abSBen Li #define IH_VMID_9_LUT__PASID_MASK 0x0000FFFFL 58*85c391abSBen Li //IH_VMID_10_LUT 59*85c391abSBen Li #define IH_VMID_10_LUT__PASID__SHIFT 0x0 60*85c391abSBen Li #define IH_VMID_10_LUT__PASID_MASK 0x0000FFFFL 61*85c391abSBen Li //IH_VMID_11_LUT 62*85c391abSBen Li #define IH_VMID_11_LUT__PASID__SHIFT 0x0 63*85c391abSBen Li #define IH_VMID_11_LUT__PASID_MASK 0x0000FFFFL 64*85c391abSBen Li //IH_VMID_12_LUT 65*85c391abSBen Li #define IH_VMID_12_LUT__PASID__SHIFT 0x0 66*85c391abSBen Li #define IH_VMID_12_LUT__PASID_MASK 0x0000FFFFL 67*85c391abSBen Li //IH_VMID_13_LUT 68*85c391abSBen Li #define IH_VMID_13_LUT__PASID__SHIFT 0x0 69*85c391abSBen Li #define IH_VMID_13_LUT__PASID_MASK 0x0000FFFFL 70*85c391abSBen Li //IH_VMID_14_LUT 71*85c391abSBen Li #define IH_VMID_14_LUT__PASID__SHIFT 0x0 72*85c391abSBen Li #define IH_VMID_14_LUT__PASID_MASK 0x0000FFFFL 73*85c391abSBen Li //IH_VMID_15_LUT 74*85c391abSBen Li #define IH_VMID_15_LUT__PASID__SHIFT 0x0 75*85c391abSBen Li #define IH_VMID_15_LUT__PASID_MASK 0x0000FFFFL 76*85c391abSBen Li //IH_VMID_0_LUT_MM 77*85c391abSBen Li #define IH_VMID_0_LUT_MM__PASID__SHIFT 0x0 78*85c391abSBen Li #define IH_VMID_0_LUT_MM__PASID_MASK 0x0000FFFFL 79*85c391abSBen Li //IH_VMID_1_LUT_MM 80*85c391abSBen Li #define IH_VMID_1_LUT_MM__PASID__SHIFT 0x0 81*85c391abSBen Li #define IH_VMID_1_LUT_MM__PASID_MASK 0x0000FFFFL 82*85c391abSBen Li //IH_VMID_2_LUT_MM 83*85c391abSBen Li #define IH_VMID_2_LUT_MM__PASID__SHIFT 0x0 84*85c391abSBen Li #define IH_VMID_2_LUT_MM__PASID_MASK 0x0000FFFFL 85*85c391abSBen Li //IH_VMID_3_LUT_MM 86*85c391abSBen Li #define IH_VMID_3_LUT_MM__PASID__SHIFT 0x0 87*85c391abSBen Li #define IH_VMID_3_LUT_MM__PASID_MASK 0x0000FFFFL 88*85c391abSBen Li //IH_VMID_4_LUT_MM 89*85c391abSBen Li #define IH_VMID_4_LUT_MM__PASID__SHIFT 0x0 90*85c391abSBen Li #define IH_VMID_4_LUT_MM__PASID_MASK 0x0000FFFFL 91*85c391abSBen Li //IH_VMID_5_LUT_MM 92*85c391abSBen Li #define IH_VMID_5_LUT_MM__PASID__SHIFT 0x0 93*85c391abSBen Li #define IH_VMID_5_LUT_MM__PASID_MASK 0x0000FFFFL 94*85c391abSBen Li //IH_VMID_6_LUT_MM 95*85c391abSBen Li #define IH_VMID_6_LUT_MM__PASID__SHIFT 0x0 96*85c391abSBen Li #define IH_VMID_6_LUT_MM__PASID_MASK 0x0000FFFFL 97*85c391abSBen Li //IH_VMID_7_LUT_MM 98*85c391abSBen Li #define IH_VMID_7_LUT_MM__PASID__SHIFT 0x0 99*85c391abSBen Li #define IH_VMID_7_LUT_MM__PASID_MASK 0x0000FFFFL 100*85c391abSBen Li //IH_VMID_8_LUT_MM 101*85c391abSBen Li #define IH_VMID_8_LUT_MM__PASID__SHIFT 0x0 102*85c391abSBen Li #define IH_VMID_8_LUT_MM__PASID_MASK 0x0000FFFFL 103*85c391abSBen Li //IH_VMID_9_LUT_MM 104*85c391abSBen Li #define IH_VMID_9_LUT_MM__PASID__SHIFT 0x0 105*85c391abSBen Li #define IH_VMID_9_LUT_MM__PASID_MASK 0x0000FFFFL 106*85c391abSBen Li //IH_VMID_10_LUT_MM 107*85c391abSBen Li #define IH_VMID_10_LUT_MM__PASID__SHIFT 0x0 108*85c391abSBen Li #define IH_VMID_10_LUT_MM__PASID_MASK 0x0000FFFFL 109*85c391abSBen Li //IH_VMID_11_LUT_MM 110*85c391abSBen Li #define IH_VMID_11_LUT_MM__PASID__SHIFT 0x0 111*85c391abSBen Li #define IH_VMID_11_LUT_MM__PASID_MASK 0x0000FFFFL 112*85c391abSBen Li //IH_VMID_12_LUT_MM 113*85c391abSBen Li #define IH_VMID_12_LUT_MM__PASID__SHIFT 0x0 114*85c391abSBen Li #define IH_VMID_12_LUT_MM__PASID_MASK 0x0000FFFFL 115*85c391abSBen Li //IH_VMID_13_LUT_MM 116*85c391abSBen Li #define IH_VMID_13_LUT_MM__PASID__SHIFT 0x0 117*85c391abSBen Li #define IH_VMID_13_LUT_MM__PASID_MASK 0x0000FFFFL 118*85c391abSBen Li //IH_VMID_14_LUT_MM 119*85c391abSBen Li #define IH_VMID_14_LUT_MM__PASID__SHIFT 0x0 120*85c391abSBen Li #define IH_VMID_14_LUT_MM__PASID_MASK 0x0000FFFFL 121*85c391abSBen Li //IH_VMID_15_LUT_MM 122*85c391abSBen Li #define IH_VMID_15_LUT_MM__PASID__SHIFT 0x0 123*85c391abSBen Li #define IH_VMID_15_LUT_MM__PASID_MASK 0x0000FFFFL 124*85c391abSBen Li //IH_COOKIE_0 125*85c391abSBen Li #define IH_COOKIE_0__CLIENT_ID__SHIFT 0x0 126*85c391abSBen Li #define IH_COOKIE_0__SOURCE_ID__SHIFT 0x8 127*85c391abSBen Li #define IH_COOKIE_0__RING_ID__SHIFT 0x10 128*85c391abSBen Li #define IH_COOKIE_0__VM_ID__SHIFT 0x18 129*85c391abSBen Li #define IH_COOKIE_0__RESERVED__SHIFT 0x1c 130*85c391abSBen Li #define IH_COOKIE_0__VMID_TYPE__SHIFT 0x1f 131*85c391abSBen Li #define IH_COOKIE_0__CLIENT_ID_MASK 0x000000FFL 132*85c391abSBen Li #define IH_COOKIE_0__SOURCE_ID_MASK 0x0000FF00L 133*85c391abSBen Li #define IH_COOKIE_0__RING_ID_MASK 0x00FF0000L 134*85c391abSBen Li #define IH_COOKIE_0__VM_ID_MASK 0x0F000000L 135*85c391abSBen Li #define IH_COOKIE_0__RESERVED_MASK 0x70000000L 136*85c391abSBen Li #define IH_COOKIE_0__VMID_TYPE_MASK 0x80000000L 137*85c391abSBen Li //IH_COOKIE_1 138*85c391abSBen Li #define IH_COOKIE_1__TIMESTAMP_31_0__SHIFT 0x0 139*85c391abSBen Li #define IH_COOKIE_1__TIMESTAMP_31_0_MASK 0xFFFFFFFFL 140*85c391abSBen Li //IH_COOKIE_2 141*85c391abSBen Li #define IH_COOKIE_2__TIMESTAMP_47_32__SHIFT 0x0 142*85c391abSBen Li #define IH_COOKIE_2__RESERVED__SHIFT 0x10 143*85c391abSBen Li #define IH_COOKIE_2__TIMESTAMP_SRC__SHIFT 0x1f 144*85c391abSBen Li #define IH_COOKIE_2__TIMESTAMP_47_32_MASK 0x0000FFFFL 145*85c391abSBen Li #define IH_COOKIE_2__RESERVED_MASK 0x7FFF0000L 146*85c391abSBen Li #define IH_COOKIE_2__TIMESTAMP_SRC_MASK 0x80000000L 147*85c391abSBen Li //IH_COOKIE_3 148*85c391abSBen Li #define IH_COOKIE_3__PAS_ID__SHIFT 0x0 149*85c391abSBen Li #define IH_COOKIE_3__RESERVED__SHIFT 0x10 150*85c391abSBen Li #define IH_COOKIE_3__PASID_SRC__SHIFT 0x1f 151*85c391abSBen Li #define IH_COOKIE_3__PAS_ID_MASK 0x0000FFFFL 152*85c391abSBen Li #define IH_COOKIE_3__RESERVED_MASK 0x7FFF0000L 153*85c391abSBen Li #define IH_COOKIE_3__PASID_SRC_MASK 0x80000000L 154*85c391abSBen Li //IH_COOKIE_4 155*85c391abSBen Li #define IH_COOKIE_4__CONTEXT_ID_31_0__SHIFT 0x0 156*85c391abSBen Li #define IH_COOKIE_4__CONTEXT_ID_31_0_MASK 0xFFFFFFFFL 157*85c391abSBen Li //IH_COOKIE_5 158*85c391abSBen Li #define IH_COOKIE_5__CONTEXT_ID_63_32__SHIFT 0x0 159*85c391abSBen Li #define IH_COOKIE_5__CONTEXT_ID_63_32_MASK 0xFFFFFFFFL 160*85c391abSBen Li //IH_COOKIE_6 161*85c391abSBen Li #define IH_COOKIE_6__CONTEXT_ID_95_64__SHIFT 0x0 162*85c391abSBen Li #define IH_COOKIE_6__CONTEXT_ID_95_64_MASK 0xFFFFFFFFL 163*85c391abSBen Li //IH_COOKIE_7 164*85c391abSBen Li #define IH_COOKIE_7__CONTEXT_ID_128_96__SHIFT 0x0 165*85c391abSBen Li #define IH_COOKIE_7__CONTEXT_ID_128_96_MASK 0xFFFFFFFFL 166*85c391abSBen Li //IH_REGISTER_LAST_PART0 167*85c391abSBen Li #define IH_REGISTER_LAST_PART0__RESERVED__SHIFT 0x0 168*85c391abSBen Li #define IH_REGISTER_LAST_PART0__RESERVED_MASK 0xFFFFFFFFL 169*85c391abSBen Li //IH_RB_CNTL 170*85c391abSBen Li #define IH_RB_CNTL__RB_ENABLE__SHIFT 0x0 171*85c391abSBen Li #define IH_RB_CNTL__RB_SIZE__SHIFT 0x1 172*85c391abSBen Li #define IH_RB_CNTL__WPTR_WRITEBACK_ENABLE__SHIFT 0x8 173*85c391abSBen Li #define IH_RB_CNTL__RB_FULL_DRAIN_ENABLE__SHIFT 0x9 174*85c391abSBen Li #define IH_RB_CNTL__FULL_DRAIN_CLEAR__SHIFT 0xa 175*85c391abSBen Li #define IH_RB_CNTL__PAGE_RB_CLEAR__SHIFT 0xb 176*85c391abSBen Li #define IH_RB_CNTL__RB_USED_INT_THRESHOLD__SHIFT 0xc 177*85c391abSBen Li #define IH_RB_CNTL__WPTR_OVERFLOW_ENABLE__SHIFT 0x10 178*85c391abSBen Li #define IH_RB_CNTL__ENABLE_INTR__SHIFT 0x11 179*85c391abSBen Li #define IH_RB_CNTL__MC_SWAP__SHIFT 0x12 180*85c391abSBen Li #define IH_RB_CNTL__MC_SNOOP__SHIFT 0x14 181*85c391abSBen Li #define IH_RB_CNTL__RPTR_REARM__SHIFT 0x15 182*85c391abSBen Li #define IH_RB_CNTL__MC_RO__SHIFT 0x16 183*85c391abSBen Li #define IH_RB_CNTL__MC_VMID__SHIFT 0x18 184*85c391abSBen Li #define IH_RB_CNTL__MC_SPACE__SHIFT 0x1c 185*85c391abSBen Li #define IH_RB_CNTL__WPTR_OVERFLOW_CLEAR__SHIFT 0x1f 186*85c391abSBen Li #define IH_RB_CNTL__RB_ENABLE_MASK 0x00000001L 187*85c391abSBen Li #define IH_RB_CNTL__RB_SIZE_MASK 0x0000003EL 188*85c391abSBen Li #define IH_RB_CNTL__WPTR_WRITEBACK_ENABLE_MASK 0x00000100L 189*85c391abSBen Li #define IH_RB_CNTL__RB_FULL_DRAIN_ENABLE_MASK 0x00000200L 190*85c391abSBen Li #define IH_RB_CNTL__FULL_DRAIN_CLEAR_MASK 0x00000400L 191*85c391abSBen Li #define IH_RB_CNTL__PAGE_RB_CLEAR_MASK 0x00000800L 192*85c391abSBen Li #define IH_RB_CNTL__RB_USED_INT_THRESHOLD_MASK 0x0000F000L 193*85c391abSBen Li #define IH_RB_CNTL__WPTR_OVERFLOW_ENABLE_MASK 0x00010000L 194*85c391abSBen Li #define IH_RB_CNTL__ENABLE_INTR_MASK 0x00020000L 195*85c391abSBen Li #define IH_RB_CNTL__MC_SWAP_MASK 0x000C0000L 196*85c391abSBen Li #define IH_RB_CNTL__MC_SNOOP_MASK 0x00100000L 197*85c391abSBen Li #define IH_RB_CNTL__RPTR_REARM_MASK 0x00200000L 198*85c391abSBen Li #define IH_RB_CNTL__MC_RO_MASK 0x00400000L 199*85c391abSBen Li #define IH_RB_CNTL__MC_VMID_MASK 0x0F000000L 200*85c391abSBen Li #define IH_RB_CNTL__MC_SPACE_MASK 0x70000000L 201*85c391abSBen Li #define IH_RB_CNTL__WPTR_OVERFLOW_CLEAR_MASK 0x80000000L 202*85c391abSBen Li //IH_RB_RPTR 203*85c391abSBen Li #define IH_RB_RPTR__OFFSET__SHIFT 0x2 204*85c391abSBen Li #define IH_RB_RPTR__OFFSET_MASK 0x0003FFFCL 205*85c391abSBen Li //IH_RB_WPTR 206*85c391abSBen Li #define IH_RB_WPTR__RB_OVERFLOW__SHIFT 0x0 207*85c391abSBen Li #define IH_RB_WPTR__OFFSET__SHIFT 0x2 208*85c391abSBen Li #define IH_RB_WPTR__RB_LEFT_NONE__SHIFT 0x12 209*85c391abSBen Li #define IH_RB_WPTR__RB_MAY_OVERFLOW__SHIFT 0x13 210*85c391abSBen Li #define IH_RB_WPTR__RB_OVERFLOW_MASK 0x00000001L 211*85c391abSBen Li #define IH_RB_WPTR__OFFSET_MASK 0x0003FFFCL 212*85c391abSBen Li #define IH_RB_WPTR__RB_LEFT_NONE_MASK 0x00040000L 213*85c391abSBen Li #define IH_RB_WPTR__RB_MAY_OVERFLOW_MASK 0x00080000L 214*85c391abSBen Li //IH_RB_BASE 215*85c391abSBen Li #define IH_RB_BASE__ADDR__SHIFT 0x0 216*85c391abSBen Li #define IH_RB_BASE__ADDR_MASK 0xFFFFFFFFL 217*85c391abSBen Li //IH_RB_BASE_HI 218*85c391abSBen Li #define IH_RB_BASE_HI__ADDR__SHIFT 0x0 219*85c391abSBen Li #define IH_RB_BASE_HI__ADDR_MASK 0x000000FFL 220*85c391abSBen Li //IH_RB_WPTR_ADDR_HI 221*85c391abSBen Li #define IH_RB_WPTR_ADDR_HI__ADDR__SHIFT 0x0 222*85c391abSBen Li #define IH_RB_WPTR_ADDR_HI__ADDR_MASK 0x0000FFFFL 223*85c391abSBen Li //IH_RB_WPTR_ADDR_LO 224*85c391abSBen Li #define IH_RB_WPTR_ADDR_LO__ADDR__SHIFT 0x2 225*85c391abSBen Li #define IH_RB_WPTR_ADDR_LO__ADDR_MASK 0xFFFFFFFCL 226*85c391abSBen Li //IH_DOORBELL_RPTR 227*85c391abSBen Li #define IH_DOORBELL_RPTR__OFFSET__SHIFT 0x0 228*85c391abSBen Li #define IH_DOORBELL_RPTR__ENABLE__SHIFT 0x1c 229*85c391abSBen Li #define IH_DOORBELL_RPTR__OFFSET_MASK 0x03FFFFFFL 230*85c391abSBen Li #define IH_DOORBELL_RPTR__ENABLE_MASK 0x10000000L 231*85c391abSBen Li //IH_DOORBELL_RETRY_CAM 232*85c391abSBen Li #define IH_DOORBELL_RETRY_CAM__OFFSET__SHIFT 0x0 233*85c391abSBen Li #define IH_DOORBELL_RETRY_CAM__ENABLE__SHIFT 0x1c 234*85c391abSBen Li #define IH_DOORBELL_RETRY_CAM__OFFSET_MASK 0x03FFFFFFL 235*85c391abSBen Li #define IH_DOORBELL_RETRY_CAM__ENABLE_MASK 0x10000000L 236*85c391abSBen Li //IH_RB_CNTL_RING1 237*85c391abSBen Li #define IH_RB_CNTL_RING1__RB_ENABLE__SHIFT 0x0 238*85c391abSBen Li #define IH_RB_CNTL_RING1__RB_SIZE__SHIFT 0x1 239*85c391abSBen Li #define IH_RB_CNTL_RING1__RB_FULL_DRAIN_ENABLE__SHIFT 0x9 240*85c391abSBen Li #define IH_RB_CNTL_RING1__FULL_DRAIN_CLEAR__SHIFT 0xa 241*85c391abSBen Li #define IH_RB_CNTL_RING1__PAGE_RB_CLEAR__SHIFT 0xb 242*85c391abSBen Li #define IH_RB_CNTL_RING1__RB_USED_INT_THRESHOLD__SHIFT 0xc 243*85c391abSBen Li #define IH_RB_CNTL_RING1__WPTR_OVERFLOW_ENABLE__SHIFT 0x10 244*85c391abSBen Li #define IH_RB_CNTL_RING1__MC_SWAP__SHIFT 0x12 245*85c391abSBen Li #define IH_RB_CNTL_RING1__MC_SNOOP__SHIFT 0x14 246*85c391abSBen Li #define IH_RB_CNTL_RING1__MC_RO__SHIFT 0x16 247*85c391abSBen Li #define IH_RB_CNTL_RING1__MC_VMID__SHIFT 0x18 248*85c391abSBen Li #define IH_RB_CNTL_RING1__MC_SPACE__SHIFT 0x1c 249*85c391abSBen Li #define IH_RB_CNTL_RING1__WPTR_OVERFLOW_CLEAR__SHIFT 0x1f 250*85c391abSBen Li #define IH_RB_CNTL_RING1__RB_ENABLE_MASK 0x00000001L 251*85c391abSBen Li #define IH_RB_CNTL_RING1__RB_SIZE_MASK 0x0000003EL 252*85c391abSBen Li #define IH_RB_CNTL_RING1__RB_FULL_DRAIN_ENABLE_MASK 0x00000200L 253*85c391abSBen Li #define IH_RB_CNTL_RING1__FULL_DRAIN_CLEAR_MASK 0x00000400L 254*85c391abSBen Li #define IH_RB_CNTL_RING1__PAGE_RB_CLEAR_MASK 0x00000800L 255*85c391abSBen Li #define IH_RB_CNTL_RING1__RB_USED_INT_THRESHOLD_MASK 0x0000F000L 256*85c391abSBen Li #define IH_RB_CNTL_RING1__WPTR_OVERFLOW_ENABLE_MASK 0x00010000L 257*85c391abSBen Li #define IH_RB_CNTL_RING1__MC_SWAP_MASK 0x000C0000L 258*85c391abSBen Li #define IH_RB_CNTL_RING1__MC_SNOOP_MASK 0x00100000L 259*85c391abSBen Li #define IH_RB_CNTL_RING1__MC_RO_MASK 0x00400000L 260*85c391abSBen Li #define IH_RB_CNTL_RING1__MC_VMID_MASK 0x0F000000L 261*85c391abSBen Li #define IH_RB_CNTL_RING1__MC_SPACE_MASK 0x70000000L 262*85c391abSBen Li #define IH_RB_CNTL_RING1__WPTR_OVERFLOW_CLEAR_MASK 0x80000000L 263*85c391abSBen Li //IH_RB_RPTR_RING1 264*85c391abSBen Li #define IH_RB_RPTR_RING1__OFFSET__SHIFT 0x2 265*85c391abSBen Li #define IH_RB_RPTR_RING1__OFFSET_MASK 0x0003FFFCL 266*85c391abSBen Li //IH_RB_WPTR_RING1 267*85c391abSBen Li #define IH_RB_WPTR_RING1__RB_OVERFLOW__SHIFT 0x0 268*85c391abSBen Li #define IH_RB_WPTR_RING1__OFFSET__SHIFT 0x2 269*85c391abSBen Li #define IH_RB_WPTR_RING1__RB_LEFT_NONE__SHIFT 0x12 270*85c391abSBen Li #define IH_RB_WPTR_RING1__RB_MAY_OVERFLOW__SHIFT 0x13 271*85c391abSBen Li #define IH_RB_WPTR_RING1__RB_OVERFLOW_MASK 0x00000001L 272*85c391abSBen Li #define IH_RB_WPTR_RING1__OFFSET_MASK 0x0003FFFCL 273*85c391abSBen Li #define IH_RB_WPTR_RING1__RB_LEFT_NONE_MASK 0x00040000L 274*85c391abSBen Li #define IH_RB_WPTR_RING1__RB_MAY_OVERFLOW_MASK 0x00080000L 275*85c391abSBen Li //IH_RB_BASE_RING1 276*85c391abSBen Li #define IH_RB_BASE_RING1__ADDR__SHIFT 0x0 277*85c391abSBen Li #define IH_RB_BASE_RING1__ADDR_MASK 0xFFFFFFFFL 278*85c391abSBen Li //IH_RB_BASE_HI_RING1 279*85c391abSBen Li #define IH_RB_BASE_HI_RING1__ADDR__SHIFT 0x0 280*85c391abSBen Li #define IH_RB_BASE_HI_RING1__ADDR_MASK 0x000000FFL 281*85c391abSBen Li //IH_DOORBELL_RPTR_RING1 282*85c391abSBen Li #define IH_DOORBELL_RPTR_RING1__OFFSET__SHIFT 0x0 283*85c391abSBen Li #define IH_DOORBELL_RPTR_RING1__ENABLE__SHIFT 0x1c 284*85c391abSBen Li #define IH_DOORBELL_RPTR_RING1__OFFSET_MASK 0x03FFFFFFL 285*85c391abSBen Li #define IH_DOORBELL_RPTR_RING1__ENABLE_MASK 0x10000000L 286*85c391abSBen Li //IH_RETRY_CAM_ACK 287*85c391abSBen Li #define IH_RETRY_CAM_ACK__INDEX__SHIFT 0x0 288*85c391abSBen Li #define IH_RETRY_CAM_ACK__INDEX_MASK 0x000003FFL 289*85c391abSBen Li //IH_VERSION 290*85c391abSBen Li #define IH_VERSION__MINVER__SHIFT 0x0 291*85c391abSBen Li #define IH_VERSION__MAJVER__SHIFT 0x8 292*85c391abSBen Li #define IH_VERSION__REV__SHIFT 0x10 293*85c391abSBen Li #define IH_VERSION__MINVER_MASK 0x0000007FL 294*85c391abSBen Li #define IH_VERSION__MAJVER_MASK 0x00007F00L 295*85c391abSBen Li #define IH_VERSION__REV_MASK 0x003F0000L 296*85c391abSBen Li //IH_CNTL 297*85c391abSBen Li #define IH_CNTL__WPTR_WRITEBACK_TIMER__SHIFT 0x0 298*85c391abSBen Li #define IH_CNTL__IH_IDLE_HYSTERESIS_CNTL__SHIFT 0x6 299*85c391abSBen Li #define IH_CNTL__IH_FIFO_HIGHWATER__SHIFT 0x8 300*85c391abSBen Li #define IH_CNTL__MC_WR_CLEAN_CNT__SHIFT 0x14 301*85c391abSBen Li #define IH_CNTL__WPTR_WRITEBACK_TIMER_MASK 0x0000001FL 302*85c391abSBen Li #define IH_CNTL__IH_IDLE_HYSTERESIS_CNTL_MASK 0x000000C0L 303*85c391abSBen Li #define IH_CNTL__IH_FIFO_HIGHWATER_MASK 0x00007F00L 304*85c391abSBen Li #define IH_CNTL__MC_WR_CLEAN_CNT_MASK 0x01F00000L 305*85c391abSBen Li //IH_CLK_CTRL 306*85c391abSBen Li #define IH_CLK_CTRL__IH_PASID_LUT_MEM_CLK_SOFT_OVERRIDE__SHIFT 0x17 307*85c391abSBen Li #define IH_CLK_CTRL__MSI_STORM_COUNTER_CLK_SOFT_OVERRIDE__SHIFT 0x18 308*85c391abSBen Li #define IH_CLK_CTRL__IH_RETRY_INT_CAM_MEM_CLK_SOFT_OVERRIDE__SHIFT 0x19 309*85c391abSBen Li #define IH_CLK_CTRL__IH_BUFFER_MEM_CLK_SOFT_OVERRIDE__SHIFT 0x1a 310*85c391abSBen Li #define IH_CLK_CTRL__DBUS_MUX_CLK_SOFT_OVERRIDE__SHIFT 0x1b 311*85c391abSBen Li #define IH_CLK_CTRL__OSSSYS_SHARE_CLK_SOFT_OVERRIDE__SHIFT 0x1c 312*85c391abSBen Li #define IH_CLK_CTRL__LIMIT_SMN_CLK_SOFT_OVERRIDE__SHIFT 0x1d 313*85c391abSBen Li #define IH_CLK_CTRL__DYN_CLK_SOFT_OVERRIDE__SHIFT 0x1e 314*85c391abSBen Li #define IH_CLK_CTRL__REG_CLK_SOFT_OVERRIDE__SHIFT 0x1f 315*85c391abSBen Li #define IH_CLK_CTRL__IH_PASID_LUT_MEM_CLK_SOFT_OVERRIDE_MASK 0x00800000L 316*85c391abSBen Li #define IH_CLK_CTRL__MSI_STORM_COUNTER_CLK_SOFT_OVERRIDE_MASK 0x01000000L 317*85c391abSBen Li #define IH_CLK_CTRL__IH_RETRY_INT_CAM_MEM_CLK_SOFT_OVERRIDE_MASK 0x02000000L 318*85c391abSBen Li #define IH_CLK_CTRL__IH_BUFFER_MEM_CLK_SOFT_OVERRIDE_MASK 0x04000000L 319*85c391abSBen Li #define IH_CLK_CTRL__DBUS_MUX_CLK_SOFT_OVERRIDE_MASK 0x08000000L 320*85c391abSBen Li #define IH_CLK_CTRL__OSSSYS_SHARE_CLK_SOFT_OVERRIDE_MASK 0x10000000L 321*85c391abSBen Li #define IH_CLK_CTRL__LIMIT_SMN_CLK_SOFT_OVERRIDE_MASK 0x20000000L 322*85c391abSBen Li #define IH_CLK_CTRL__DYN_CLK_SOFT_OVERRIDE_MASK 0x40000000L 323*85c391abSBen Li #define IH_CLK_CTRL__REG_CLK_SOFT_OVERRIDE_MASK 0x80000000L 324*85c391abSBen Li //IH_STORM_CLIENT_LIST_CNTL 325*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT1_IS_STORM_CLIENT__SHIFT 0x1 326*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT2_IS_STORM_CLIENT__SHIFT 0x2 327*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT3_IS_STORM_CLIENT__SHIFT 0x3 328*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT4_IS_STORM_CLIENT__SHIFT 0x4 329*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT5_IS_STORM_CLIENT__SHIFT 0x5 330*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT6_IS_STORM_CLIENT__SHIFT 0x6 331*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT7_IS_STORM_CLIENT__SHIFT 0x7 332*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT8_IS_STORM_CLIENT__SHIFT 0x8 333*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT9_IS_STORM_CLIENT__SHIFT 0x9 334*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT10_IS_STORM_CLIENT__SHIFT 0xa 335*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT11_IS_STORM_CLIENT__SHIFT 0xb 336*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT12_IS_STORM_CLIENT__SHIFT 0xc 337*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT13_IS_STORM_CLIENT__SHIFT 0xd 338*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT14_IS_STORM_CLIENT__SHIFT 0xe 339*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT15_IS_STORM_CLIENT__SHIFT 0xf 340*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT16_IS_STORM_CLIENT__SHIFT 0x10 341*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT17_IS_STORM_CLIENT__SHIFT 0x11 342*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT18_IS_STORM_CLIENT__SHIFT 0x12 343*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT19_IS_STORM_CLIENT__SHIFT 0x13 344*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT20_IS_STORM_CLIENT__SHIFT 0x14 345*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT21_IS_STORM_CLIENT__SHIFT 0x15 346*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT22_IS_STORM_CLIENT__SHIFT 0x16 347*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT23_IS_STORM_CLIENT__SHIFT 0x17 348*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT24_IS_STORM_CLIENT__SHIFT 0x18 349*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT25_IS_STORM_CLIENT__SHIFT 0x19 350*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT26_IS_STORM_CLIENT__SHIFT 0x1a 351*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT27_IS_STORM_CLIENT__SHIFT 0x1b 352*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT28_IS_STORM_CLIENT__SHIFT 0x1c 353*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT29_IS_STORM_CLIENT__SHIFT 0x1d 354*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT30_IS_STORM_CLIENT__SHIFT 0x1e 355*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT31_IS_STORM_CLIENT__SHIFT 0x1f 356*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT1_IS_STORM_CLIENT_MASK 0x00000002L 357*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT2_IS_STORM_CLIENT_MASK 0x00000004L 358*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT3_IS_STORM_CLIENT_MASK 0x00000008L 359*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT4_IS_STORM_CLIENT_MASK 0x00000010L 360*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT5_IS_STORM_CLIENT_MASK 0x00000020L 361*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT6_IS_STORM_CLIENT_MASK 0x00000040L 362*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT7_IS_STORM_CLIENT_MASK 0x00000080L 363*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT8_IS_STORM_CLIENT_MASK 0x00000100L 364*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT9_IS_STORM_CLIENT_MASK 0x00000200L 365*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT10_IS_STORM_CLIENT_MASK 0x00000400L 366*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT11_IS_STORM_CLIENT_MASK 0x00000800L 367*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT12_IS_STORM_CLIENT_MASK 0x00001000L 368*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT13_IS_STORM_CLIENT_MASK 0x00002000L 369*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT14_IS_STORM_CLIENT_MASK 0x00004000L 370*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT15_IS_STORM_CLIENT_MASK 0x00008000L 371*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT16_IS_STORM_CLIENT_MASK 0x00010000L 372*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT17_IS_STORM_CLIENT_MASK 0x00020000L 373*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT18_IS_STORM_CLIENT_MASK 0x00040000L 374*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT19_IS_STORM_CLIENT_MASK 0x00080000L 375*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT20_IS_STORM_CLIENT_MASK 0x00100000L 376*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT21_IS_STORM_CLIENT_MASK 0x00200000L 377*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT22_IS_STORM_CLIENT_MASK 0x00400000L 378*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT23_IS_STORM_CLIENT_MASK 0x00800000L 379*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT24_IS_STORM_CLIENT_MASK 0x01000000L 380*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT25_IS_STORM_CLIENT_MASK 0x02000000L 381*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT26_IS_STORM_CLIENT_MASK 0x04000000L 382*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT27_IS_STORM_CLIENT_MASK 0x08000000L 383*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT28_IS_STORM_CLIENT_MASK 0x10000000L 384*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT29_IS_STORM_CLIENT_MASK 0x20000000L 385*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT30_IS_STORM_CLIENT_MASK 0x40000000L 386*85c391abSBen Li #define IH_STORM_CLIENT_LIST_CNTL__CLIENT31_IS_STORM_CLIENT_MASK 0x80000000L 387*85c391abSBen Li //IH_LIMIT_INT_RATE_CNTL 388*85c391abSBen Li #define IH_LIMIT_INT_RATE_CNTL__LIMIT_ENABLE__SHIFT 0x0 389*85c391abSBen Li #define IH_LIMIT_INT_RATE_CNTL__PERF_INTERVAL__SHIFT 0x1 390*85c391abSBen Li #define IH_LIMIT_INT_RATE_CNTL__PERF_THRESHOLD__SHIFT 0x5 391*85c391abSBen Li #define IH_LIMIT_INT_RATE_CNTL__RETURN_DELAY__SHIFT 0x11 392*85c391abSBen Li #define IH_LIMIT_INT_RATE_CNTL__PERF_RESULT__SHIFT 0x15 393*85c391abSBen Li #define IH_LIMIT_INT_RATE_CNTL__LIMIT_ENABLE_MASK 0x00000001L 394*85c391abSBen Li #define IH_LIMIT_INT_RATE_CNTL__PERF_INTERVAL_MASK 0x0000001EL 395*85c391abSBen Li #define IH_LIMIT_INT_RATE_CNTL__PERF_THRESHOLD_MASK 0x0000FFE0L 396*85c391abSBen Li #define IH_LIMIT_INT_RATE_CNTL__RETURN_DELAY_MASK 0x001E0000L 397*85c391abSBen Li #define IH_LIMIT_INT_RATE_CNTL__PERF_RESULT_MASK 0xFFE00000L 398*85c391abSBen Li //IH_RETRY_INT_CAM_CNTL 399*85c391abSBen Li #define IH_RETRY_INT_CAM_CNTL__CAM_SIZE__SHIFT 0x0 400*85c391abSBen Li #define IH_RETRY_INT_CAM_CNTL__BACK_PRESSURE_SKID_VALUE__SHIFT 0x8 401*85c391abSBen Li #define IH_RETRY_INT_CAM_CNTL__PER_VF_ENTRY_SIZE__SHIFT 0x14 402*85c391abSBen Li #define IH_RETRY_INT_CAM_CNTL__CAM_SIZE_MASK 0x0000001FL 403*85c391abSBen Li #define IH_RETRY_INT_CAM_CNTL__BACK_PRESSURE_SKID_VALUE_MASK 0x00003F00L 404*85c391abSBen Li #define IH_RETRY_INT_CAM_CNTL__PER_VF_ENTRY_SIZE_MASK 0x00300000L 405*85c391abSBen Li //IH_MEM_POWER_CTRL 406*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_CTRL_EN__SHIFT 0x0 407*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_LS_EN__SHIFT 0x1 408*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_DS_EN__SHIFT 0x2 409*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_SD_EN__SHIFT 0x3 410*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_IDLE_HYSTERESIS__SHIFT 0x4 411*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_UP_RECOVER_DELAY__SHIFT 0x8 412*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_DOWN_ENTER_DELAY__SHIFT 0xe 413*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_CTRL_EN__SHIFT 0x10 414*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_LS_EN__SHIFT 0x11 415*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_DS_EN__SHIFT 0x12 416*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_SD_EN__SHIFT 0x13 417*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_IDLE_HYSTERESIS__SHIFT 0x14 418*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_UP_RECOVER_DELAY__SHIFT 0x18 419*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_DOWN_ENTER_DELAY__SHIFT 0x1e 420*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_CTRL_EN_MASK 0x00000001L 421*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_LS_EN_MASK 0x00000002L 422*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_DS_EN_MASK 0x00000004L 423*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_SD_EN_MASK 0x00000008L 424*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_IDLE_HYSTERESIS_MASK 0x00000070L 425*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_UP_RECOVER_DELAY_MASK 0x00003F00L 426*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_BUFFER_MEM_POWER_DOWN_ENTER_DELAY_MASK 0x0000C000L 427*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_CTRL_EN_MASK 0x00010000L 428*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_LS_EN_MASK 0x00020000L 429*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_DS_EN_MASK 0x00040000L 430*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_SD_EN_MASK 0x00080000L 431*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_IDLE_HYSTERESIS_MASK 0x00700000L 432*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_UP_RECOVER_DELAY_MASK 0x3F000000L 433*85c391abSBen Li #define IH_MEM_POWER_CTRL__IH_RETRY_INT_CAM_MEM_POWER_DOWN_ENTER_DELAY_MASK 0xC0000000L 434*85c391abSBen Li //IH_MEM_POWER_CTRL2 435*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_CTRL_EN__SHIFT 0x0 436*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_LS_EN__SHIFT 0x1 437*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_DS_EN__SHIFT 0x2 438*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_SD_EN__SHIFT 0x3 439*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_IDLE_HYSTERESIS__SHIFT 0x4 440*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_UP_RECOVER_DELAY__SHIFT 0x8 441*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_DOWN_ENTER_DELAY__SHIFT 0xe 442*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_CTRL_EN_MASK 0x00000001L 443*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_LS_EN_MASK 0x00000002L 444*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_DS_EN_MASK 0x00000004L 445*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_SD_EN_MASK 0x00000008L 446*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_IDLE_HYSTERESIS_MASK 0x00000070L 447*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_UP_RECOVER_DELAY_MASK 0x00003F00L 448*85c391abSBen Li #define IH_MEM_POWER_CTRL2__IH_PASID_LUT_MEM_POWER_DOWN_ENTER_DELAY_MASK 0x0000C000L 449*85c391abSBen Li //IH_CNTL2 450*85c391abSBen Li #define IH_CNTL2__SELF_IV_FORCE_WPTR_UPDATE_TIMEOUT__SHIFT 0x0 451*85c391abSBen Li #define IH_CNTL2__SELF_IV_FORCE_WPTR_UPDATE_ENABLE__SHIFT 0x8 452*85c391abSBen Li #define IH_CNTL2__SELF_IV_FORCE_WPTR_UPDATE_TIMEOUT_MASK 0x0000001FL 453*85c391abSBen Li #define IH_CNTL2__SELF_IV_FORCE_WPTR_UPDATE_ENABLE_MASK 0x00000100L 454*85c391abSBen Li //IH_STATUS 455*85c391abSBen Li #define IH_STATUS__IDLE__SHIFT 0x0 456*85c391abSBen Li #define IH_STATUS__INPUT_IDLE__SHIFT 0x1 457*85c391abSBen Li #define IH_STATUS__BUFFER_IDLE__SHIFT 0x2 458*85c391abSBen Li #define IH_STATUS__RB_FULL__SHIFT 0x3 459*85c391abSBen Li #define IH_STATUS__RB_FULL_DRAIN__SHIFT 0x4 460*85c391abSBen Li #define IH_STATUS__RB_OVERFLOW__SHIFT 0x5 461*85c391abSBen Li #define IH_STATUS__MC_WR_IDLE__SHIFT 0x6 462*85c391abSBen Li #define IH_STATUS__MC_WR_STALL__SHIFT 0x7 463*85c391abSBen Li #define IH_STATUS__MC_WR_CLEAN_PENDING__SHIFT 0x8 464*85c391abSBen Li #define IH_STATUS__MC_WR_CLEAN_STALL__SHIFT 0x9 465*85c391abSBen Li #define IH_STATUS__BIF_INTERRUPT_LINE__SHIFT 0xa 466*85c391abSBen Li #define IH_STATUS__SWITCH_READY__SHIFT 0xb 467*85c391abSBen Li #define IH_STATUS__RB1_FULL__SHIFT 0xc 468*85c391abSBen Li #define IH_STATUS__RB1_FULL_DRAIN__SHIFT 0xd 469*85c391abSBen Li #define IH_STATUS__RB1_OVERFLOW__SHIFT 0xe 470*85c391abSBen Li #define IH_STATUS__SELF_INT_GEN_IDLE__SHIFT 0x12 471*85c391abSBen Li #define IH_STATUS__RETRY_INT_CAM_IDLE__SHIFT 0x13 472*85c391abSBen Li #define IH_STATUS__ZSTATES_FENCE__SHIFT 0x14 473*85c391abSBen Li #define IH_STATUS__IH_BUFFER_MEM_POWER_GATED__SHIFT 0x15 474*85c391abSBen Li #define IH_STATUS__IH_RETRY_INT_CAM_MEM_POWER_GATED__SHIFT 0x16 475*85c391abSBen Li #define IH_STATUS__IH_PASID_LUT_MEM_POWER_GATED__SHIFT 0x17 476*85c391abSBen Li #define IH_STATUS__IDLE_MASK 0x00000001L 477*85c391abSBen Li #define IH_STATUS__INPUT_IDLE_MASK 0x00000002L 478*85c391abSBen Li #define IH_STATUS__BUFFER_IDLE_MASK 0x00000004L 479*85c391abSBen Li #define IH_STATUS__RB_FULL_MASK 0x00000008L 480*85c391abSBen Li #define IH_STATUS__RB_FULL_DRAIN_MASK 0x00000010L 481*85c391abSBen Li #define IH_STATUS__RB_OVERFLOW_MASK 0x00000020L 482*85c391abSBen Li #define IH_STATUS__MC_WR_IDLE_MASK 0x00000040L 483*85c391abSBen Li #define IH_STATUS__MC_WR_STALL_MASK 0x00000080L 484*85c391abSBen Li #define IH_STATUS__MC_WR_CLEAN_PENDING_MASK 0x00000100L 485*85c391abSBen Li #define IH_STATUS__MC_WR_CLEAN_STALL_MASK 0x00000200L 486*85c391abSBen Li #define IH_STATUS__BIF_INTERRUPT_LINE_MASK 0x00000400L 487*85c391abSBen Li #define IH_STATUS__SWITCH_READY_MASK 0x00000800L 488*85c391abSBen Li #define IH_STATUS__RB1_FULL_MASK 0x00001000L 489*85c391abSBen Li #define IH_STATUS__RB1_FULL_DRAIN_MASK 0x00002000L 490*85c391abSBen Li #define IH_STATUS__RB1_OVERFLOW_MASK 0x00004000L 491*85c391abSBen Li #define IH_STATUS__SELF_INT_GEN_IDLE_MASK 0x00040000L 492*85c391abSBen Li #define IH_STATUS__RETRY_INT_CAM_IDLE_MASK 0x00080000L 493*85c391abSBen Li #define IH_STATUS__ZSTATES_FENCE_MASK 0x00100000L 494*85c391abSBen Li #define IH_STATUS__IH_BUFFER_MEM_POWER_GATED_MASK 0x00200000L 495*85c391abSBen Li #define IH_STATUS__IH_RETRY_INT_CAM_MEM_POWER_GATED_MASK 0x00400000L 496*85c391abSBen Li #define IH_STATUS__IH_PASID_LUT_MEM_POWER_GATED_MASK 0x00800000L 497*85c391abSBen Li //IH_PERFMON_CNTL 498*85c391abSBen Li #define IH_PERFMON_CNTL__ENABLE0__SHIFT 0x0 499*85c391abSBen Li #define IH_PERFMON_CNTL__CLEAR0__SHIFT 0x1 500*85c391abSBen Li #define IH_PERFMON_CNTL__PERF_SEL0__SHIFT 0x2 501*85c391abSBen Li #define IH_PERFMON_CNTL__ENABLE1__SHIFT 0x10 502*85c391abSBen Li #define IH_PERFMON_CNTL__CLEAR1__SHIFT 0x11 503*85c391abSBen Li #define IH_PERFMON_CNTL__PERF_SEL1__SHIFT 0x12 504*85c391abSBen Li #define IH_PERFMON_CNTL__ENABLE0_MASK 0x00000001L 505*85c391abSBen Li #define IH_PERFMON_CNTL__CLEAR0_MASK 0x00000002L 506*85c391abSBen Li #define IH_PERFMON_CNTL__PERF_SEL0_MASK 0x00000FFCL 507*85c391abSBen Li #define IH_PERFMON_CNTL__ENABLE1_MASK 0x00010000L 508*85c391abSBen Li #define IH_PERFMON_CNTL__CLEAR1_MASK 0x00020000L 509*85c391abSBen Li #define IH_PERFMON_CNTL__PERF_SEL1_MASK 0x0FFC0000L 510*85c391abSBen Li //IH_PERFCOUNTER0_RESULT 511*85c391abSBen Li #define IH_PERFCOUNTER0_RESULT__PERF_COUNT__SHIFT 0x0 512*85c391abSBen Li #define IH_PERFCOUNTER0_RESULT__PERF_COUNT_MASK 0xFFFFFFFFL 513*85c391abSBen Li //IH_PERFCOUNTER1_RESULT 514*85c391abSBen Li #define IH_PERFCOUNTER1_RESULT__PERF_COUNT__SHIFT 0x0 515*85c391abSBen Li #define IH_PERFCOUNTER1_RESULT__PERF_COUNT_MASK 0xFFFFFFFFL 516*85c391abSBen Li //IH_DSM_MATCH_VALUE_BIT_31_0 517*85c391abSBen Li #define IH_DSM_MATCH_VALUE_BIT_31_0__VALUE__SHIFT 0x0 518*85c391abSBen Li #define IH_DSM_MATCH_VALUE_BIT_31_0__VALUE_MASK 0xFFFFFFFFL 519*85c391abSBen Li //IH_DSM_MATCH_VALUE_BIT_63_32 520*85c391abSBen Li #define IH_DSM_MATCH_VALUE_BIT_63_32__VALUE__SHIFT 0x0 521*85c391abSBen Li #define IH_DSM_MATCH_VALUE_BIT_63_32__VALUE_MASK 0xFFFFFFFFL 522*85c391abSBen Li //IH_DSM_MATCH_VALUE_BIT_95_64 523*85c391abSBen Li #define IH_DSM_MATCH_VALUE_BIT_95_64__VALUE__SHIFT 0x0 524*85c391abSBen Li #define IH_DSM_MATCH_VALUE_BIT_95_64__VALUE_MASK 0xFFFFFFFFL 525*85c391abSBen Li //IH_DSM_MATCH_FIELD_CONTROL 526*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__SRC_EN__SHIFT 0x0 527*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__FCNID_EN__SHIFT 0x1 528*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__TIMESTAMP_EN__SHIFT 0x2 529*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__RINGID_EN__SHIFT 0x3 530*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__VMID_EN__SHIFT 0x4 531*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__PASID_EN__SHIFT 0x5 532*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__CLIENT_ID_EN__SHIFT 0x6 533*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__SRC_EN_MASK 0x00000001L 534*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__FCNID_EN_MASK 0x00000002L 535*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__TIMESTAMP_EN_MASK 0x00000004L 536*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__RINGID_EN_MASK 0x00000008L 537*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__VMID_EN_MASK 0x00000010L 538*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__PASID_EN_MASK 0x00000020L 539*85c391abSBen Li #define IH_DSM_MATCH_FIELD_CONTROL__CLIENT_ID_EN_MASK 0x00000040L 540*85c391abSBen Li //IH_DSM_MATCH_DATA_CONTROL 541*85c391abSBen Li #define IH_DSM_MATCH_DATA_CONTROL__VALUE__SHIFT 0x0 542*85c391abSBen Li #define IH_DSM_MATCH_DATA_CONTROL__VALUE_MASK 0x0FFFFFFFL 543*85c391abSBen Li //IH_DSM_MATCH_FCN_ID 544*85c391abSBen Li #define IH_DSM_MATCH_FCN_ID__VF_ID__SHIFT 0x0 545*85c391abSBen Li #define IH_DSM_MATCH_FCN_ID__PF_VF__SHIFT 0x7 546*85c391abSBen Li #define IH_DSM_MATCH_FCN_ID__VF_ID_MASK 0x0000000FL 547*85c391abSBen Li #define IH_DSM_MATCH_FCN_ID__PF_VF_MASK 0x00000080L 548*85c391abSBen Li //IH_VF_RB_STATUS 549*85c391abSBen Li #define IH_VF_RB_STATUS__RB_FULL_DRAIN_VF__SHIFT 0x0 550*85c391abSBen Li #define IH_VF_RB_STATUS__RB_FULL_DRAIN_VF_MASK 0x0000FFFFL 551*85c391abSBen Li //IH_VF_RB_STATUS2 552*85c391abSBen Li #define IH_VF_RB_STATUS2__RB_FULL_VF__SHIFT 0x0 553*85c391abSBen Li #define IH_VF_RB_STATUS2__RB_FULL_VF_MASK 0x0000FFFFL 554*85c391abSBen Li //IH_VF_RB1_STATUS 555*85c391abSBen Li #define IH_VF_RB1_STATUS__RB_FULL_DRAIN_VF__SHIFT 0x0 556*85c391abSBen Li #define IH_VF_RB1_STATUS__RB_FULL_DRAIN_VF_MASK 0x0000FFFFL 557*85c391abSBen Li //IH_VF_RB1_STATUS2 558*85c391abSBen Li #define IH_VF_RB1_STATUS2__RB_FULL_VF__SHIFT 0x0 559*85c391abSBen Li #define IH_VF_RB1_STATUS2__RB_FULL_VF_MASK 0x0000FFFFL 560*85c391abSBen Li //IH_RB_STATUS 561*85c391abSBen Li #define IH_RB_STATUS__RB_FULL__SHIFT 0x0 562*85c391abSBen Li #define IH_RB_STATUS__RB_FULL_DRAIN__SHIFT 0x1 563*85c391abSBen Li #define IH_RB_STATUS__RB_OVERFLOW__SHIFT 0x2 564*85c391abSBen Li #define IH_RB_STATUS__RB1_FULL__SHIFT 0x4 565*85c391abSBen Li #define IH_RB_STATUS__RB1_FULL_DRAIN__SHIFT 0x5 566*85c391abSBen Li #define IH_RB_STATUS__RB1_OVERFLOW__SHIFT 0x6 567*85c391abSBen Li #define IH_RB_STATUS__RB_FULL_MASK 0x00000001L 568*85c391abSBen Li #define IH_RB_STATUS__RB_FULL_DRAIN_MASK 0x00000002L 569*85c391abSBen Li #define IH_RB_STATUS__RB_OVERFLOW_MASK 0x00000004L 570*85c391abSBen Li #define IH_RB_STATUS__RB1_FULL_MASK 0x00000010L 571*85c391abSBen Li #define IH_RB_STATUS__RB1_FULL_DRAIN_MASK 0x00000020L 572*85c391abSBen Li #define IH_RB_STATUS__RB1_OVERFLOW_MASK 0x00000040L 573*85c391abSBen Li //IH_INT_FLOOD_CNTL 574*85c391abSBen Li #define IH_INT_FLOOD_CNTL__HIGHWATER__SHIFT 0x0 575*85c391abSBen Li #define IH_INT_FLOOD_CNTL__FLOOD_CNTL_ENABLE__SHIFT 0x3 576*85c391abSBen Li #define IH_INT_FLOOD_CNTL__CLEAR_INT_FLOOD_STATUS__SHIFT 0x4 577*85c391abSBen Li #define IH_INT_FLOOD_CNTL__HIGHWATER_MASK 0x00000007L 578*85c391abSBen Li #define IH_INT_FLOOD_CNTL__FLOOD_CNTL_ENABLE_MASK 0x00000008L 579*85c391abSBen Li #define IH_INT_FLOOD_CNTL__CLEAR_INT_FLOOD_STATUS_MASK 0x00000010L 580*85c391abSBen Li //IH_RB0_INT_FLOOD_STATUS 581*85c391abSBen Li #define IH_RB0_INT_FLOOD_STATUS__RB_INT_DROPPED_VF__SHIFT 0x0 582*85c391abSBen Li #define IH_RB0_INT_FLOOD_STATUS__RB_INT_DROPPED__SHIFT 0x1f 583*85c391abSBen Li #define IH_RB0_INT_FLOOD_STATUS__RB_INT_DROPPED_VF_MASK 0x0000FFFFL 584*85c391abSBen Li #define IH_RB0_INT_FLOOD_STATUS__RB_INT_DROPPED_MASK 0x80000000L 585*85c391abSBen Li //IH_RB1_INT_FLOOD_STATUS 586*85c391abSBen Li #define IH_RB1_INT_FLOOD_STATUS__RB_INT_DROPPED_VF__SHIFT 0x0 587*85c391abSBen Li #define IH_RB1_INT_FLOOD_STATUS__RB_INT_DROPPED__SHIFT 0x1f 588*85c391abSBen Li #define IH_RB1_INT_FLOOD_STATUS__RB_INT_DROPPED_VF_MASK 0x0000FFFFL 589*85c391abSBen Li #define IH_RB1_INT_FLOOD_STATUS__RB_INT_DROPPED_MASK 0x80000000L 590*85c391abSBen Li //IH_INT_FLOOD_STATUS 591*85c391abSBen Li #define IH_INT_FLOOD_STATUS__INT_DROP_CNT__SHIFT 0x0 592*85c391abSBen Li #define IH_INT_FLOOD_STATUS__FIRST_DROP_INT_CLIENT_ID__SHIFT 0x8 593*85c391abSBen Li #define IH_INT_FLOOD_STATUS__FIRST_DROP_INT_SOURCE_ID__SHIFT 0x10 594*85c391abSBen Li #define IH_INT_FLOOD_STATUS__FIRST_DROP_INT_VF_ID__SHIFT 0x18 595*85c391abSBen Li #define IH_INT_FLOOD_STATUS__FIRST_DROP_INT_VF__SHIFT 0x1d 596*85c391abSBen Li #define IH_INT_FLOOD_STATUS__INT_DROPPED__SHIFT 0x1e 597*85c391abSBen Li #define IH_INT_FLOOD_STATUS__INT_DROP_CNT_MASK 0x000000FFL 598*85c391abSBen Li #define IH_INT_FLOOD_STATUS__FIRST_DROP_INT_CLIENT_ID_MASK 0x0000FF00L 599*85c391abSBen Li #define IH_INT_FLOOD_STATUS__FIRST_DROP_INT_SOURCE_ID_MASK 0x00FF0000L 600*85c391abSBen Li #define IH_INT_FLOOD_STATUS__FIRST_DROP_INT_VF_ID_MASK 0x0F000000L 601*85c391abSBen Li #define IH_INT_FLOOD_STATUS__FIRST_DROP_INT_VF_MASK 0x20000000L 602*85c391abSBen Li #define IH_INT_FLOOD_STATUS__INT_DROPPED_MASK 0x40000000L 603*85c391abSBen Li //IH_INT_FLAGS 604*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_0_FLAG__SHIFT 0x0 605*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_1_FLAG__SHIFT 0x1 606*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_2_FLAG__SHIFT 0x2 607*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_3_FLAG__SHIFT 0x3 608*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_4_FLAG__SHIFT 0x4 609*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_5_FLAG__SHIFT 0x5 610*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_6_FLAG__SHIFT 0x6 611*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_7_FLAG__SHIFT 0x7 612*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_8_FLAG__SHIFT 0x8 613*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_9_FLAG__SHIFT 0x9 614*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_10_FLAG__SHIFT 0xa 615*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_11_FLAG__SHIFT 0xb 616*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_12_FLAG__SHIFT 0xc 617*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_13_FLAG__SHIFT 0xd 618*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_14_FLAG__SHIFT 0xe 619*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_15_FLAG__SHIFT 0xf 620*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_16_FLAG__SHIFT 0x10 621*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_17_FLAG__SHIFT 0x11 622*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_18_FLAG__SHIFT 0x12 623*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_19_FLAG__SHIFT 0x13 624*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_20_FLAG__SHIFT 0x14 625*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_21_FLAG__SHIFT 0x15 626*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_22_FLAG__SHIFT 0x16 627*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_23_FLAG__SHIFT 0x17 628*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_24_FLAG__SHIFT 0x18 629*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_25_FLAG__SHIFT 0x19 630*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_26_FLAG__SHIFT 0x1a 631*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_27_FLAG__SHIFT 0x1b 632*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_28_FLAG__SHIFT 0x1c 633*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_29_FLAG__SHIFT 0x1d 634*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_30_FLAG__SHIFT 0x1e 635*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_31_FLAG__SHIFT 0x1f 636*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_0_FLAG_MASK 0x00000001L 637*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_1_FLAG_MASK 0x00000002L 638*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_2_FLAG_MASK 0x00000004L 639*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_3_FLAG_MASK 0x00000008L 640*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_4_FLAG_MASK 0x00000010L 641*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_5_FLAG_MASK 0x00000020L 642*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_6_FLAG_MASK 0x00000040L 643*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_7_FLAG_MASK 0x00000080L 644*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_8_FLAG_MASK 0x00000100L 645*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_9_FLAG_MASK 0x00000200L 646*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_10_FLAG_MASK 0x00000400L 647*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_11_FLAG_MASK 0x00000800L 648*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_12_FLAG_MASK 0x00001000L 649*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_13_FLAG_MASK 0x00002000L 650*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_14_FLAG_MASK 0x00004000L 651*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_15_FLAG_MASK 0x00008000L 652*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_16_FLAG_MASK 0x00010000L 653*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_17_FLAG_MASK 0x00020000L 654*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_18_FLAG_MASK 0x00040000L 655*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_19_FLAG_MASK 0x00080000L 656*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_20_FLAG_MASK 0x00100000L 657*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_21_FLAG_MASK 0x00200000L 658*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_22_FLAG_MASK 0x00400000L 659*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_23_FLAG_MASK 0x00800000L 660*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_24_FLAG_MASK 0x01000000L 661*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_25_FLAG_MASK 0x02000000L 662*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_26_FLAG_MASK 0x04000000L 663*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_27_FLAG_MASK 0x08000000L 664*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_28_FLAG_MASK 0x10000000L 665*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_29_FLAG_MASK 0x20000000L 666*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_30_FLAG_MASK 0x40000000L 667*85c391abSBen Li #define IH_INT_FLAGS__CLIENT_31_FLAG_MASK 0x80000000L 668*85c391abSBen Li //IH_LAST_INT_INFO0 669*85c391abSBen Li #define IH_LAST_INT_INFO0__CLIENT_ID__SHIFT 0x0 670*85c391abSBen Li #define IH_LAST_INT_INFO0__SOURCE_ID__SHIFT 0x8 671*85c391abSBen Li #define IH_LAST_INT_INFO0__RING_ID__SHIFT 0x10 672*85c391abSBen Li #define IH_LAST_INT_INFO0__VM_ID__SHIFT 0x18 673*85c391abSBen Li #define IH_LAST_INT_INFO0__VMID_TYPE__SHIFT 0x1f 674*85c391abSBen Li #define IH_LAST_INT_INFO0__CLIENT_ID_MASK 0x000000FFL 675*85c391abSBen Li #define IH_LAST_INT_INFO0__SOURCE_ID_MASK 0x0000FF00L 676*85c391abSBen Li #define IH_LAST_INT_INFO0__RING_ID_MASK 0x00FF0000L 677*85c391abSBen Li #define IH_LAST_INT_INFO0__VM_ID_MASK 0x0F000000L 678*85c391abSBen Li #define IH_LAST_INT_INFO0__VMID_TYPE_MASK 0x80000000L 679*85c391abSBen Li //IH_LAST_INT_INFO1 680*85c391abSBen Li #define IH_LAST_INT_INFO1__CONTEXT_ID__SHIFT 0x0 681*85c391abSBen Li #define IH_LAST_INT_INFO1__CONTEXT_ID_MASK 0xFFFFFFFFL 682*85c391abSBen Li //IH_LAST_INT_INFO2 683*85c391abSBen Li #define IH_LAST_INT_INFO2__PAS_ID__SHIFT 0x0 684*85c391abSBen Li #define IH_LAST_INT_INFO2__VF_ID__SHIFT 0x10 685*85c391abSBen Li #define IH_LAST_INT_INFO2__VF__SHIFT 0x17 686*85c391abSBen Li #define IH_LAST_INT_INFO2__PAS_ID_MASK 0x0000FFFFL 687*85c391abSBen Li #define IH_LAST_INT_INFO2__VF_ID_MASK 0x000F0000L 688*85c391abSBen Li #define IH_LAST_INT_INFO2__VF_MASK 0x00800000L 689*85c391abSBen Li //IH_SCRATCH 690*85c391abSBen Li #define IH_SCRATCH__DATA__SHIFT 0x0 691*85c391abSBen Li #define IH_SCRATCH__DATA_MASK 0xFFFFFFFFL 692*85c391abSBen Li //IH_CLIENT_CREDIT_ERROR 693*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLEAR__SHIFT 0x0 694*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_1_ERROR__SHIFT 0x1 695*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_2_ERROR__SHIFT 0x2 696*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_3_ERROR__SHIFT 0x3 697*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_4_ERROR__SHIFT 0x4 698*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_5_ERROR__SHIFT 0x5 699*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_6_ERROR__SHIFT 0x6 700*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_7_ERROR__SHIFT 0x7 701*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_8_ERROR__SHIFT 0x8 702*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_9_ERROR__SHIFT 0x9 703*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_10_ERROR__SHIFT 0xa 704*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_11_ERROR__SHIFT 0xb 705*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_12_ERROR__SHIFT 0xc 706*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_13_ERROR__SHIFT 0xd 707*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_14_ERROR__SHIFT 0xe 708*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_15_ERROR__SHIFT 0xf 709*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_16_ERROR__SHIFT 0x10 710*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_17_ERROR__SHIFT 0x11 711*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_18_ERROR__SHIFT 0x12 712*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_19_ERROR__SHIFT 0x13 713*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_20_ERROR__SHIFT 0x14 714*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_21_ERROR__SHIFT 0x15 715*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_22_ERROR__SHIFT 0x16 716*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_23_ERROR__SHIFT 0x17 717*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_24_ERROR__SHIFT 0x18 718*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_25_ERROR__SHIFT 0x19 719*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_26_ERROR__SHIFT 0x1a 720*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_27_ERROR__SHIFT 0x1b 721*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_28_ERROR__SHIFT 0x1c 722*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_29_ERROR__SHIFT 0x1d 723*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_30_ERROR__SHIFT 0x1e 724*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_31_ERROR__SHIFT 0x1f 725*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLEAR_MASK 0x00000001L 726*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_1_ERROR_MASK 0x00000002L 727*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_2_ERROR_MASK 0x00000004L 728*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_3_ERROR_MASK 0x00000008L 729*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_4_ERROR_MASK 0x00000010L 730*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_5_ERROR_MASK 0x00000020L 731*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_6_ERROR_MASK 0x00000040L 732*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_7_ERROR_MASK 0x00000080L 733*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_8_ERROR_MASK 0x00000100L 734*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_9_ERROR_MASK 0x00000200L 735*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_10_ERROR_MASK 0x00000400L 736*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_11_ERROR_MASK 0x00000800L 737*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_12_ERROR_MASK 0x00001000L 738*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_13_ERROR_MASK 0x00002000L 739*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_14_ERROR_MASK 0x00004000L 740*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_15_ERROR_MASK 0x00008000L 741*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_16_ERROR_MASK 0x00010000L 742*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_17_ERROR_MASK 0x00020000L 743*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_18_ERROR_MASK 0x00040000L 744*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_19_ERROR_MASK 0x00080000L 745*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_20_ERROR_MASK 0x00100000L 746*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_21_ERROR_MASK 0x00200000L 747*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_22_ERROR_MASK 0x00400000L 748*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_23_ERROR_MASK 0x00800000L 749*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_24_ERROR_MASK 0x01000000L 750*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_25_ERROR_MASK 0x02000000L 751*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_26_ERROR_MASK 0x04000000L 752*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_27_ERROR_MASK 0x08000000L 753*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_28_ERROR_MASK 0x10000000L 754*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_29_ERROR_MASK 0x20000000L 755*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_30_ERROR_MASK 0x40000000L 756*85c391abSBen Li #define IH_CLIENT_CREDIT_ERROR__CLIENT_31_ERROR_MASK 0x80000000L 757*85c391abSBen Li //IH_GPU_IOV_VIOLATION_LOG 758*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__VIOLATION_STATUS__SHIFT 0x0 759*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__MULTIPLE_VIOLATION_STATUS__SHIFT 0x1 760*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__ADDRESS__SHIFT 0x2 761*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__OPCODE__SHIFT 0x16 762*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__VF__SHIFT 0x17 763*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__VF_ID__SHIFT 0x18 764*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__VIOLATION_STATUS_MASK 0x00000001L 765*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__MULTIPLE_VIOLATION_STATUS_MASK 0x00000002L 766*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__ADDRESS_MASK 0x000FFFFCL 767*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__OPCODE_MASK 0x00400000L 768*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__VF_MASK 0x00800000L 769*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG__VF_ID_MASK 0x0F000000L 770*85c391abSBen Li //IH_GPU_IOV_VIOLATION_LOG2 771*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG2__INITIATOR_ID__SHIFT 0x0 772*85c391abSBen Li #define IH_GPU_IOV_VIOLATION_LOG2__INITIATOR_ID_MASK 0x000003FFL 773*85c391abSBen Li //IH_COOKIE_REC_VIOLATION_LOG 774*85c391abSBen Li #define IH_COOKIE_REC_VIOLATION_LOG__VIOLATION_STATUS__SHIFT 0x0 775*85c391abSBen Li #define IH_COOKIE_REC_VIOLATION_LOG__CLIENT_ID__SHIFT 0x8 776*85c391abSBen Li #define IH_COOKIE_REC_VIOLATION_LOG__INITIATOR_ID__SHIFT 0x10 777*85c391abSBen Li #define IH_COOKIE_REC_VIOLATION_LOG__VIOLATION_STATUS_MASK 0x00000001L 778*85c391abSBen Li #define IH_COOKIE_REC_VIOLATION_LOG__CLIENT_ID_MASK 0x0000FF00L 779*85c391abSBen Li #define IH_COOKIE_REC_VIOLATION_LOG__INITIATOR_ID_MASK 0x03FF0000L 780*85c391abSBen Li //IH_CREDIT_STATUS 781*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_1_CREDIT_RETURNED__SHIFT 0x1 782*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_2_CREDIT_RETURNED__SHIFT 0x2 783*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_3_CREDIT_RETURNED__SHIFT 0x3 784*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_4_CREDIT_RETURNED__SHIFT 0x4 785*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_5_CREDIT_RETURNED__SHIFT 0x5 786*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_6_CREDIT_RETURNED__SHIFT 0x6 787*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_7_CREDIT_RETURNED__SHIFT 0x7 788*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_8_CREDIT_RETURNED__SHIFT 0x8 789*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_9_CREDIT_RETURNED__SHIFT 0x9 790*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_10_CREDIT_RETURNED__SHIFT 0xa 791*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_11_CREDIT_RETURNED__SHIFT 0xb 792*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_12_CREDIT_RETURNED__SHIFT 0xc 793*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_13_CREDIT_RETURNED__SHIFT 0xd 794*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_14_CREDIT_RETURNED__SHIFT 0xe 795*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_15_CREDIT_RETURNED__SHIFT 0xf 796*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_16_CREDIT_RETURNED__SHIFT 0x10 797*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_17_CREDIT_RETURNED__SHIFT 0x11 798*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_18_CREDIT_RETURNED__SHIFT 0x12 799*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_19_CREDIT_RETURNED__SHIFT 0x13 800*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_20_CREDIT_RETURNED__SHIFT 0x14 801*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_21_CREDIT_RETURNED__SHIFT 0x15 802*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_22_CREDIT_RETURNED__SHIFT 0x16 803*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_23_CREDIT_RETURNED__SHIFT 0x17 804*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_24_CREDIT_RETURNED__SHIFT 0x18 805*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_25_CREDIT_RETURNED__SHIFT 0x19 806*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_26_CREDIT_RETURNED__SHIFT 0x1a 807*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_27_CREDIT_RETURNED__SHIFT 0x1b 808*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_28_CREDIT_RETURNED__SHIFT 0x1c 809*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_29_CREDIT_RETURNED__SHIFT 0x1d 810*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_30_CREDIT_RETURNED__SHIFT 0x1e 811*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_31_CREDIT_RETURNED__SHIFT 0x1f 812*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_1_CREDIT_RETURNED_MASK 0x00000002L 813*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_2_CREDIT_RETURNED_MASK 0x00000004L 814*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_3_CREDIT_RETURNED_MASK 0x00000008L 815*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_4_CREDIT_RETURNED_MASK 0x00000010L 816*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_5_CREDIT_RETURNED_MASK 0x00000020L 817*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_6_CREDIT_RETURNED_MASK 0x00000040L 818*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_7_CREDIT_RETURNED_MASK 0x00000080L 819*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_8_CREDIT_RETURNED_MASK 0x00000100L 820*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_9_CREDIT_RETURNED_MASK 0x00000200L 821*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_10_CREDIT_RETURNED_MASK 0x00000400L 822*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_11_CREDIT_RETURNED_MASK 0x00000800L 823*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_12_CREDIT_RETURNED_MASK 0x00001000L 824*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_13_CREDIT_RETURNED_MASK 0x00002000L 825*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_14_CREDIT_RETURNED_MASK 0x00004000L 826*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_15_CREDIT_RETURNED_MASK 0x00008000L 827*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_16_CREDIT_RETURNED_MASK 0x00010000L 828*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_17_CREDIT_RETURNED_MASK 0x00020000L 829*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_18_CREDIT_RETURNED_MASK 0x00040000L 830*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_19_CREDIT_RETURNED_MASK 0x00080000L 831*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_20_CREDIT_RETURNED_MASK 0x00100000L 832*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_21_CREDIT_RETURNED_MASK 0x00200000L 833*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_22_CREDIT_RETURNED_MASK 0x00400000L 834*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_23_CREDIT_RETURNED_MASK 0x00800000L 835*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_24_CREDIT_RETURNED_MASK 0x01000000L 836*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_25_CREDIT_RETURNED_MASK 0x02000000L 837*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_26_CREDIT_RETURNED_MASK 0x04000000L 838*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_27_CREDIT_RETURNED_MASK 0x08000000L 839*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_28_CREDIT_RETURNED_MASK 0x10000000L 840*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_29_CREDIT_RETURNED_MASK 0x20000000L 841*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_30_CREDIT_RETURNED_MASK 0x40000000L 842*85c391abSBen Li #define IH_CREDIT_STATUS__CLIENT_31_CREDIT_RETURNED_MASK 0x80000000L 843*85c391abSBen Li //IH_MMHUB_ERROR 844*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BRESP_01__SHIFT 0x1 845*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BRESP_10__SHIFT 0x2 846*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BRESP_11__SHIFT 0x3 847*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BUSER_NACK_01__SHIFT 0x5 848*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BUSER_NACK_10__SHIFT 0x6 849*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BUSER_NACK_11__SHIFT 0x7 850*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BRESP_01_MASK 0x00000002L 851*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BRESP_10_MASK 0x00000004L 852*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BRESP_11_MASK 0x00000008L 853*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BUSER_NACK_01_MASK 0x00000020L 854*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BUSER_NACK_10_MASK 0x00000040L 855*85c391abSBen Li #define IH_MMHUB_ERROR__IH_BUSER_NACK_11_MASK 0x00000080L 856*85c391abSBen Li //IH_VF_RB_STATUS3 857*85c391abSBen Li #define IH_VF_RB_STATUS3__RB_OVERFLOW_VF__SHIFT 0x0 858*85c391abSBen Li #define IH_VF_RB_STATUS3__RB_OVERFLOW_VF_MASK 0x0000FFFFL 859*85c391abSBen Li //IH_VF_RB_STATUS4 860*85c391abSBen Li #define IH_VF_RB_STATUS4__BIF_INTERRUPT_LINE_VF__SHIFT 0x0 861*85c391abSBen Li #define IH_VF_RB_STATUS4__BIF_INTERRUPT_LINE_VF_MASK 0x0000FFFFL 862*85c391abSBen Li //IH_VF_RB1_STATUS3 863*85c391abSBen Li #define IH_VF_RB1_STATUS3__RB_OVERFLOW_VF__SHIFT 0x0 864*85c391abSBen Li #define IH_VF_RB1_STATUS3__RB_OVERFLOW_VF_MASK 0x0000FFFFL 865*85c391abSBen Li //IH_MSI_STORM_CTRL 866*85c391abSBen Li #define IH_MSI_STORM_CTRL__DELAY__SHIFT 0x0 867*85c391abSBen Li #define IH_MSI_STORM_CTRL__DELAY_MASK 0x00000FFFL 868*85c391abSBen Li //IH_MSI_STORM_CLIENT_INDEX 869*85c391abSBen Li #define IH_MSI_STORM_CLIENT_INDEX__INDEX__SHIFT 0x0 870*85c391abSBen Li #define IH_MSI_STORM_CLIENT_INDEX__INDEX_MASK 0x00000007L 871*85c391abSBen Li //IH_MSI_STORM_CLIENT_DATA 872*85c391abSBen Li #define IH_MSI_STORM_CLIENT_DATA__CLIENT_ID__SHIFT 0x0 873*85c391abSBen Li #define IH_MSI_STORM_CLIENT_DATA__SOURCE_ID__SHIFT 0x8 874*85c391abSBen Li #define IH_MSI_STORM_CLIENT_DATA__SOURCE_ID_MATCH_ENABLE__SHIFT 0x10 875*85c391abSBen Li #define IH_MSI_STORM_CLIENT_DATA__UTCL2_PAGE_FAULT_MATCH_ENABLE__SHIFT 0x11 876*85c391abSBen Li #define IH_MSI_STORM_CLIENT_DATA__ENTRY_VALID__SHIFT 0x1f 877*85c391abSBen Li #define IH_MSI_STORM_CLIENT_DATA__CLIENT_ID_MASK 0x000000FFL 878*85c391abSBen Li #define IH_MSI_STORM_CLIENT_DATA__SOURCE_ID_MASK 0x0000FF00L 879*85c391abSBen Li #define IH_MSI_STORM_CLIENT_DATA__SOURCE_ID_MATCH_ENABLE_MASK 0x00010000L 880*85c391abSBen Li #define IH_MSI_STORM_CLIENT_DATA__UTCL2_PAGE_FAULT_MATCH_ENABLE_MASK 0x00020000L 881*85c391abSBen Li #define IH_MSI_STORM_CLIENT_DATA__ENTRY_VALID_MASK 0x80000000L 882*85c391abSBen Li //IH_REGISTER_LAST_PART2 883*85c391abSBen Li #define IH_REGISTER_LAST_PART2__RESERVED__SHIFT 0x0 884*85c391abSBen Li #define IH_REGISTER_LAST_PART2__RESERVED_MASK 0xFFFFFFFFL 885*85c391abSBen Li //SEM_MAILBOX 886*85c391abSBen Li #define SEM_MAILBOX__HOSTPORT__SHIFT 0x0 887*85c391abSBen Li #define SEM_MAILBOX__RESERVED__SHIFT 0x10 888*85c391abSBen Li #define SEM_MAILBOX__HOSTPORT_MASK 0x0000FFFFL 889*85c391abSBen Li #define SEM_MAILBOX__RESERVED_MASK 0xFFFF0000L 890*85c391abSBen Li //SEM_MAILBOX_CLEAR 891*85c391abSBen Li #define SEM_MAILBOX_CLEAR__CLEAR__SHIFT 0x0 892*85c391abSBen Li #define SEM_MAILBOX_CLEAR__RESERVED__SHIFT 0x10 893*85c391abSBen Li #define SEM_MAILBOX_CLEAR__CLEAR_MASK 0x0000FFFFL 894*85c391abSBen Li #define SEM_MAILBOX_CLEAR__RESERVED_MASK 0xFFFF0000L 895*85c391abSBen Li //SEM_REGISTER_LAST_PART2 896*85c391abSBen Li #define SEM_REGISTER_LAST_PART2__RESERVED__SHIFT 0x0 897*85c391abSBen Li #define SEM_REGISTER_LAST_PART2__RESERVED_MASK 0xFFFFFFFFL 898*85c391abSBen Li //IH_ACTIVE_FCN_ID 899*85c391abSBen Li #define IH_ACTIVE_FCN_ID__VF_ID__SHIFT 0x0 900*85c391abSBen Li #define IH_ACTIVE_FCN_ID__RESERVED__SHIFT 0x4 901*85c391abSBen Li #define IH_ACTIVE_FCN_ID__PF_VF__SHIFT 0x1f 902*85c391abSBen Li #define IH_ACTIVE_FCN_ID__VF_ID_MASK 0x0000000FL 903*85c391abSBen Li #define IH_ACTIVE_FCN_ID__RESERVED_MASK 0x7FFFFFF0L 904*85c391abSBen Li #define IH_ACTIVE_FCN_ID__PF_VF_MASK 0x80000000L 905*85c391abSBen Li //IH_VIRT_RESET_REQ 906*85c391abSBen Li #define IH_VIRT_RESET_REQ__VF__SHIFT 0x0 907*85c391abSBen Li #define IH_VIRT_RESET_REQ__PF__SHIFT 0x1f 908*85c391abSBen Li #define IH_VIRT_RESET_REQ__VF_MASK 0x0000FFFFL 909*85c391abSBen Li #define IH_VIRT_RESET_REQ__PF_MASK 0x80000000L 910*85c391abSBen Li //IH_CLIENT_CFG 911*85c391abSBen Li #define IH_CLIENT_CFG__TOTAL_CLIENT_NUM__SHIFT 0x0 912*85c391abSBen Li #define IH_CLIENT_CFG__TOTAL_CLIENT_NUM_MASK 0x0000003FL 913*85c391abSBen Li //IH_RING1_CLIENT_CFG_INDEX 914*85c391abSBen Li #define IH_RING1_CLIENT_CFG_INDEX__INDEX__SHIFT 0x0 915*85c391abSBen Li #define IH_RING1_CLIENT_CFG_INDEX__INDEX_MASK 0x00000007L 916*85c391abSBen Li //IH_RING1_CLIENT_CFG_DATA 917*85c391abSBen Li #define IH_RING1_CLIENT_CFG_DATA__CLIENT_ID__SHIFT 0x0 918*85c391abSBen Li #define IH_RING1_CLIENT_CFG_DATA__SOURCE_ID__SHIFT 0x8 919*85c391abSBen Li #define IH_RING1_CLIENT_CFG_DATA__SOURCE_ID_MATCH_ENABLE__SHIFT 0x10 920*85c391abSBen Li #define IH_RING1_CLIENT_CFG_DATA__CLIENT_ID_MASK 0x000000FFL 921*85c391abSBen Li #define IH_RING1_CLIENT_CFG_DATA__SOURCE_ID_MASK 0x0000FF00L 922*85c391abSBen Li #define IH_RING1_CLIENT_CFG_DATA__SOURCE_ID_MATCH_ENABLE_MASK 0x00010000L 923*85c391abSBen Li //IH_CLIENT_CFG_INDEX 924*85c391abSBen Li #define IH_CLIENT_CFG_INDEX__INDEX__SHIFT 0x0 925*85c391abSBen Li #define IH_CLIENT_CFG_INDEX__INDEX_MASK 0x0000001FL 926*85c391abSBen Li //IH_CLIENT_CFG_DATA 927*85c391abSBen Li #define IH_CLIENT_CFG_DATA__CLIENT_TYPE__SHIFT 0x12 928*85c391abSBen Li #define IH_CLIENT_CFG_DATA__VF_RB_SELECT__SHIFT 0x16 929*85c391abSBen Li #define IH_CLIENT_CFG_DATA__OVERWRITE_RING_ID_WITH_ACTIVE_FCN_ID__SHIFT 0x18 930*85c391abSBen Li #define IH_CLIENT_CFG_DATA__INTERFACE_TYPE__SHIFT 0x19 931*85c391abSBen Li #define IH_CLIENT_CFG_DATA__CLIENT_TYPE_MASK 0x000C0000L 932*85c391abSBen Li #define IH_CLIENT_CFG_DATA__VF_RB_SELECT_MASK 0x00C00000L 933*85c391abSBen Li #define IH_CLIENT_CFG_DATA__OVERWRITE_RING_ID_WITH_ACTIVE_FCN_ID_MASK 0x01000000L 934*85c391abSBen Li #define IH_CLIENT_CFG_DATA__INTERFACE_TYPE_MASK 0x02000000L 935*85c391abSBen Li //IH_CLIENT_CFG_DATA2 936*85c391abSBen Li #define IH_CLIENT_CFG_DATA2__CREDIT_RETURN_ADDR__SHIFT 0x0 937*85c391abSBen Li #define IH_CLIENT_CFG_DATA2__CREDIT_RETURN_ADDR_MASK 0xFFFFFFFFL 938*85c391abSBen Li //IH_CID_REMAP_INDEX 939*85c391abSBen Li #define IH_CID_REMAP_INDEX__INDEX__SHIFT 0x0 940*85c391abSBen Li #define IH_CID_REMAP_INDEX__INDEX_MASK 0x00000003L 941*85c391abSBen Li //IH_CID_REMAP_DATA 942*85c391abSBen Li #define IH_CID_REMAP_DATA__CLIENT_ID__SHIFT 0x0 943*85c391abSBen Li #define IH_CID_REMAP_DATA__INITIATOR_ID__SHIFT 0x8 944*85c391abSBen Li #define IH_CID_REMAP_DATA__CLIENT_ID_REMAP__SHIFT 0x18 945*85c391abSBen Li #define IH_CID_REMAP_DATA__CLIENT_ID_MASK 0x000000FFL 946*85c391abSBen Li #define IH_CID_REMAP_DATA__INITIATOR_ID_MASK 0x0003FF00L 947*85c391abSBen Li #define IH_CID_REMAP_DATA__CLIENT_ID_REMAP_MASK 0xFF000000L 948*85c391abSBen Li //IH_CHICKEN 949*85c391abSBen Li #define IH_CHICKEN__ACTIVE_FCN_ID_PROT_ENABLE__SHIFT 0x0 950*85c391abSBen Li #define IH_CHICKEN__DBGU_TRIGGER_ENABLE__SHIFT 0x1 951*85c391abSBen Li #define IH_CHICKEN__CROSS_TRIGGER_ENABLE__SHIFT 0x2 952*85c391abSBen Li #define IH_CHICKEN__MC_SPACE_FBPA_ENABLE__SHIFT 0x3 953*85c391abSBen Li #define IH_CHICKEN__MC_SPACE_GPA_ENABLE__SHIFT 0x4 954*85c391abSBen Li #define IH_CHICKEN__REG_FIREWALL_ENABLE__SHIFT 0x5 955*85c391abSBen Li #define IH_CHICKEN__ACTIVE_FCN_ID_PROT_ENABLE_MASK 0x00000001L 956*85c391abSBen Li #define IH_CHICKEN__DBGU_TRIGGER_ENABLE_MASK 0x00000002L 957*85c391abSBen Li #define IH_CHICKEN__CROSS_TRIGGER_ENABLE_MASK 0x00000004L 958*85c391abSBen Li #define IH_CHICKEN__MC_SPACE_FBPA_ENABLE_MASK 0x00000008L 959*85c391abSBen Li #define IH_CHICKEN__MC_SPACE_GPA_ENABLE_MASK 0x00000010L 960*85c391abSBen Li #define IH_CHICKEN__REG_FIREWALL_ENABLE_MASK 0x00000020L 961*85c391abSBen Li //IH_MMHUB_CNTL 962*85c391abSBen Li #define IH_MMHUB_CNTL__UNITID__SHIFT 0x0 963*85c391abSBen Li #define IH_MMHUB_CNTL__IV_TLVL__SHIFT 0x8 964*85c391abSBen Li #define IH_MMHUB_CNTL__WPTR_WB_TLVL__SHIFT 0xc 965*85c391abSBen Li #define IH_MMHUB_CNTL__UNITID_MASK 0x0000003FL 966*85c391abSBen Li #define IH_MMHUB_CNTL__IV_TLVL_MASK 0x00000F00L 967*85c391abSBen Li #define IH_MMHUB_CNTL__WPTR_WB_TLVL_MASK 0x0000F000L 968*85c391abSBen Li //IH_INT_DROP_CNTL 969*85c391abSBen Li #define IH_INT_DROP_CNTL__INT_DROP_EN__SHIFT 0x0 970*85c391abSBen Li #define IH_INT_DROP_CNTL__CLIENT_ID_MATCH_EN__SHIFT 0x1 971*85c391abSBen Li #define IH_INT_DROP_CNTL__SOURCE_ID_MATCH_EN__SHIFT 0x2 972*85c391abSBen Li #define IH_INT_DROP_CNTL__VF_ID_MATCH_EN__SHIFT 0x3 973*85c391abSBen Li #define IH_INT_DROP_CNTL__VF_MATCH_EN__SHIFT 0x4 974*85c391abSBen Li #define IH_INT_DROP_CNTL__CONTEXT_ID_MATCH_EN__SHIFT 0x5 975*85c391abSBen Li #define IH_INT_DROP_CNTL__INT_DROP_MODE__SHIFT 0x6 976*85c391abSBen Li #define IH_INT_DROP_CNTL__UTCL2_RETRY_INT_DROP_EN__SHIFT 0x8 977*85c391abSBen Li #define IH_INT_DROP_CNTL__INT_DROPPED__SHIFT 0x10 978*85c391abSBen Li #define IH_INT_DROP_CNTL__INT_DROP_EN_MASK 0x00000001L 979*85c391abSBen Li #define IH_INT_DROP_CNTL__CLIENT_ID_MATCH_EN_MASK 0x00000002L 980*85c391abSBen Li #define IH_INT_DROP_CNTL__SOURCE_ID_MATCH_EN_MASK 0x00000004L 981*85c391abSBen Li #define IH_INT_DROP_CNTL__VF_ID_MATCH_EN_MASK 0x00000008L 982*85c391abSBen Li #define IH_INT_DROP_CNTL__VF_MATCH_EN_MASK 0x00000010L 983*85c391abSBen Li #define IH_INT_DROP_CNTL__CONTEXT_ID_MATCH_EN_MASK 0x00000020L 984*85c391abSBen Li #define IH_INT_DROP_CNTL__INT_DROP_MODE_MASK 0x000000C0L 985*85c391abSBen Li #define IH_INT_DROP_CNTL__UTCL2_RETRY_INT_DROP_EN_MASK 0x00000100L 986*85c391abSBen Li #define IH_INT_DROP_CNTL__INT_DROPPED_MASK 0x00010000L 987*85c391abSBen Li //IH_INT_DROP_MATCH_VALUE0 988*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE0__CLIENT_ID_MATCH_VALUE__SHIFT 0x0 989*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE0__SOURCE_ID_MATCH_VALUE__SHIFT 0x8 990*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE0__VF_ID_MATCH_VALUE__SHIFT 0x10 991*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE0__VF_MATCH_VALUE__SHIFT 0x17 992*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE0__CONTEXT_ID_39_32_MATCH_VALUE__SHIFT 0x18 993*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE0__CLIENT_ID_MATCH_VALUE_MASK 0x000000FFL 994*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE0__SOURCE_ID_MATCH_VALUE_MASK 0x0000FF00L 995*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE0__VF_ID_MATCH_VALUE_MASK 0x001F0000L 996*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE0__VF_MATCH_VALUE_MASK 0x00800000L 997*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE0__CONTEXT_ID_39_32_MATCH_VALUE_MASK 0xFF000000L 998*85c391abSBen Li //IH_INT_DROP_MATCH_VALUE1 999*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE1__CONTEXT_ID_31_0_MATCH_VALUE__SHIFT 0x0 1000*85c391abSBen Li #define IH_INT_DROP_MATCH_VALUE1__CONTEXT_ID_31_0_MATCH_VALUE_MASK 0xFFFFFFFFL 1001*85c391abSBen Li //IH_INT_DROP_MATCH_MASK0 1002*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK0__CLIENT_ID_MATCH_MASK__SHIFT 0x0 1003*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK0__SOURCE_ID_MATCH_MASK__SHIFT 0x8 1004*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK0__VF_ID_MATCH_MASK__SHIFT 0x10 1005*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK0__VF_MATCH_MASK__SHIFT 0x17 1006*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK0__CONTEXT_ID_39_32_MATCH_MASK__SHIFT 0x18 1007*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK0__CLIENT_ID_MATCH_MASK_MASK 0x000000FFL 1008*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK0__SOURCE_ID_MATCH_MASK_MASK 0x0000FF00L 1009*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK0__VF_ID_MATCH_MASK_MASK 0x001F0000L 1010*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK0__VF_MATCH_MASK_MASK 0x00800000L 1011*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK0__CONTEXT_ID_39_32_MATCH_MASK_MASK 0xFF000000L 1012*85c391abSBen Li //IH_INT_DROP_MATCH_MASK1 1013*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK1__CONTEXT_ID_31_0_MATCH_MASK__SHIFT 0x0 1014*85c391abSBen Li #define IH_INT_DROP_MATCH_MASK1__CONTEXT_ID_31_0_MATCH_MASK_MASK 0xFFFFFFFFL 1015*85c391abSBen Li //IH_REGISTER_LAST_PART1 1016*85c391abSBen Li #define IH_REGISTER_LAST_PART1__RESERVED__SHIFT 0x0 1017*85c391abSBen Li #define IH_REGISTER_LAST_PART1__RESERVED_MASK 0xFFFFFFFFL 1018*85c391abSBen Li 1019*85c391abSBen Li #endif 1020