1*5113495bSYour Name 2*5113495bSYour Name /* 3*5113495bSYour Name * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. 4*5113495bSYour Name * 5*5113495bSYour Name * Permission to use, copy, modify, and/or distribute this software for 6*5113495bSYour Name * any purpose with or without fee is hereby granted, provided that the 7*5113495bSYour Name * above copyright notice and this permission notice appear in all 8*5113495bSYour Name * copies. 9*5113495bSYour Name * 10*5113495bSYour Name * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL 11*5113495bSYour Name * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED 12*5113495bSYour Name * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE 13*5113495bSYour Name * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL 14*5113495bSYour Name * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR 15*5113495bSYour Name * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 16*5113495bSYour Name * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 17*5113495bSYour Name * PERFORMANCE OF THIS SOFTWARE. 18*5113495bSYour Name */ 19*5113495bSYour Name 20*5113495bSYour Name 21*5113495bSYour Name 22*5113495bSYour Name #ifndef _REO_FLUSH_CACHE_STATUS_H_ 23*5113495bSYour Name #define _REO_FLUSH_CACHE_STATUS_H_ 24*5113495bSYour Name #if !defined(__ASSEMBLER__) 25*5113495bSYour Name #endif 26*5113495bSYour Name 27*5113495bSYour Name #include "uniform_reo_status_header.h" 28*5113495bSYour Name 29*5113495bSYour Name #define NUM_OF_DWORDS_REO_FLUSH_CACHE_STATUS 25 30*5113495bSYour Name 31*5113495bSYour Name struct reo_flush_cache_status { 32*5113495bSYour Name struct uniform_reo_status_header status_header; 33*5113495bSYour Name uint32_t error_detected : 1, 34*5113495bSYour Name block_error_details : 2, 35*5113495bSYour Name reserved_2a : 5, 36*5113495bSYour Name cache_controller_flush_status_hit: 1, 37*5113495bSYour Name cache_controller_flush_status_desc_type: 3, 38*5113495bSYour Name cache_controller_flush_status_client_id: 4, 39*5113495bSYour Name cache_controller_flush_status_error: 2, 40*5113495bSYour Name cache_controller_flush_count : 8, 41*5113495bSYour Name reserved_2b : 6; 42*5113495bSYour Name uint32_t reserved_3a : 32; 43*5113495bSYour Name uint32_t reserved_4a : 32; 44*5113495bSYour Name uint32_t reserved_5a : 32; 45*5113495bSYour Name uint32_t reserved_6a : 32; 46*5113495bSYour Name uint32_t reserved_7a : 32; 47*5113495bSYour Name uint32_t reserved_8a : 32; 48*5113495bSYour Name uint32_t reserved_9a : 32; 49*5113495bSYour Name uint32_t reserved_10a : 32; 50*5113495bSYour Name uint32_t reserved_11a : 32; 51*5113495bSYour Name uint32_t reserved_12a : 32; 52*5113495bSYour Name uint32_t reserved_13a : 32; 53*5113495bSYour Name uint32_t reserved_14a : 32; 54*5113495bSYour Name uint32_t reserved_15a : 32; 55*5113495bSYour Name uint32_t reserved_16a : 32; 56*5113495bSYour Name uint32_t reserved_17a : 32; 57*5113495bSYour Name uint32_t reserved_18a : 32; 58*5113495bSYour Name uint32_t reserved_19a : 32; 59*5113495bSYour Name uint32_t reserved_20a : 32; 60*5113495bSYour Name uint32_t reserved_21a : 32; 61*5113495bSYour Name uint32_t reserved_22a : 32; 62*5113495bSYour Name uint32_t reserved_23a : 32; 63*5113495bSYour Name uint32_t reserved_24a : 28, 64*5113495bSYour Name looping_count : 4; 65*5113495bSYour Name }; 66*5113495bSYour Name 67*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_REO_STATUS_NUMBER_OFFSET 0x00000000 68*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_REO_STATUS_NUMBER_LSB 0 69*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_REO_STATUS_NUMBER_MASK 0x0000ffff 70*5113495bSYour Name 71*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_CMD_EXECUTION_TIME_OFFSET 0x00000000 72*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_CMD_EXECUTION_TIME_LSB 16 73*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_CMD_EXECUTION_TIME_MASK 0x03ff0000 74*5113495bSYour Name 75*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_REO_CMD_EXECUTION_STATUS_OFFSET 0x00000000 76*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_REO_CMD_EXECUTION_STATUS_LSB 26 77*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_REO_CMD_EXECUTION_STATUS_MASK 0x0c000000 78*5113495bSYour Name 79*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_RESERVED_0A_OFFSET 0x00000000 80*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_RESERVED_0A_LSB 28 81*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_0_STATUS_HEADER_RESERVED_0A_MASK 0xf0000000 82*5113495bSYour Name 83*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_1_STATUS_HEADER_TIMESTAMP_OFFSET 0x00000004 84*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_1_STATUS_HEADER_TIMESTAMP_LSB 0 85*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_1_STATUS_HEADER_TIMESTAMP_MASK 0xffffffff 86*5113495bSYour Name 87*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_ERROR_DETECTED_OFFSET 0x00000008 88*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_ERROR_DETECTED_LSB 0 89*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_ERROR_DETECTED_MASK 0x00000001 90*5113495bSYour Name 91*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_BLOCK_ERROR_DETAILS_OFFSET 0x00000008 92*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_BLOCK_ERROR_DETAILS_LSB 1 93*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_BLOCK_ERROR_DETAILS_MASK 0x00000006 94*5113495bSYour Name 95*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_RESERVED_2A_OFFSET 0x00000008 96*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_RESERVED_2A_LSB 3 97*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_RESERVED_2A_MASK 0x000000f8 98*5113495bSYour Name 99*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_HIT_OFFSET 0x00000008 100*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_HIT_LSB 8 101*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_HIT_MASK 0x00000100 102*5113495bSYour Name 103*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_DESC_TYPE_OFFSET 0x00000008 104*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_DESC_TYPE_LSB 9 105*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_DESC_TYPE_MASK 0x00000e00 106*5113495bSYour Name 107*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_CLIENT_ID_OFFSET 0x00000008 108*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_CLIENT_ID_LSB 12 109*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_CLIENT_ID_MASK 0x0000f000 110*5113495bSYour Name 111*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_ERROR_OFFSET 0x00000008 112*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_ERROR_LSB 16 113*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_STATUS_ERROR_MASK 0x00030000 114*5113495bSYour Name 115*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_COUNT_OFFSET 0x00000008 116*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_COUNT_LSB 18 117*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_CACHE_CONTROLLER_FLUSH_COUNT_MASK 0x03fc0000 118*5113495bSYour Name 119*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_RESERVED_2B_OFFSET 0x00000008 120*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_RESERVED_2B_LSB 26 121*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_2_RESERVED_2B_MASK 0xfc000000 122*5113495bSYour Name 123*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_3_RESERVED_3A_OFFSET 0x0000000c 124*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_3_RESERVED_3A_LSB 0 125*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_3_RESERVED_3A_MASK 0xffffffff 126*5113495bSYour Name 127*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_4_RESERVED_4A_OFFSET 0x00000010 128*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_4_RESERVED_4A_LSB 0 129*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_4_RESERVED_4A_MASK 0xffffffff 130*5113495bSYour Name 131*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_5_RESERVED_5A_OFFSET 0x00000014 132*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_5_RESERVED_5A_LSB 0 133*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_5_RESERVED_5A_MASK 0xffffffff 134*5113495bSYour Name 135*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_6_RESERVED_6A_OFFSET 0x00000018 136*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_6_RESERVED_6A_LSB 0 137*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_6_RESERVED_6A_MASK 0xffffffff 138*5113495bSYour Name 139*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_7_RESERVED_7A_OFFSET 0x0000001c 140*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_7_RESERVED_7A_LSB 0 141*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_7_RESERVED_7A_MASK 0xffffffff 142*5113495bSYour Name 143*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_8_RESERVED_8A_OFFSET 0x00000020 144*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_8_RESERVED_8A_LSB 0 145*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_8_RESERVED_8A_MASK 0xffffffff 146*5113495bSYour Name 147*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_9_RESERVED_9A_OFFSET 0x00000024 148*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_9_RESERVED_9A_LSB 0 149*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_9_RESERVED_9A_MASK 0xffffffff 150*5113495bSYour Name 151*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_10_RESERVED_10A_OFFSET 0x00000028 152*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_10_RESERVED_10A_LSB 0 153*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_10_RESERVED_10A_MASK 0xffffffff 154*5113495bSYour Name 155*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_11_RESERVED_11A_OFFSET 0x0000002c 156*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_11_RESERVED_11A_LSB 0 157*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_11_RESERVED_11A_MASK 0xffffffff 158*5113495bSYour Name 159*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_12_RESERVED_12A_OFFSET 0x00000030 160*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_12_RESERVED_12A_LSB 0 161*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_12_RESERVED_12A_MASK 0xffffffff 162*5113495bSYour Name 163*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_13_RESERVED_13A_OFFSET 0x00000034 164*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_13_RESERVED_13A_LSB 0 165*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_13_RESERVED_13A_MASK 0xffffffff 166*5113495bSYour Name 167*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_14_RESERVED_14A_OFFSET 0x00000038 168*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_14_RESERVED_14A_LSB 0 169*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_14_RESERVED_14A_MASK 0xffffffff 170*5113495bSYour Name 171*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_15_RESERVED_15A_OFFSET 0x0000003c 172*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_15_RESERVED_15A_LSB 0 173*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_15_RESERVED_15A_MASK 0xffffffff 174*5113495bSYour Name 175*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_16_RESERVED_16A_OFFSET 0x00000040 176*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_16_RESERVED_16A_LSB 0 177*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_16_RESERVED_16A_MASK 0xffffffff 178*5113495bSYour Name 179*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_17_RESERVED_17A_OFFSET 0x00000044 180*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_17_RESERVED_17A_LSB 0 181*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_17_RESERVED_17A_MASK 0xffffffff 182*5113495bSYour Name 183*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_18_RESERVED_18A_OFFSET 0x00000048 184*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_18_RESERVED_18A_LSB 0 185*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_18_RESERVED_18A_MASK 0xffffffff 186*5113495bSYour Name 187*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_19_RESERVED_19A_OFFSET 0x0000004c 188*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_19_RESERVED_19A_LSB 0 189*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_19_RESERVED_19A_MASK 0xffffffff 190*5113495bSYour Name 191*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_20_RESERVED_20A_OFFSET 0x00000050 192*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_20_RESERVED_20A_LSB 0 193*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_20_RESERVED_20A_MASK 0xffffffff 194*5113495bSYour Name 195*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_21_RESERVED_21A_OFFSET 0x00000054 196*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_21_RESERVED_21A_LSB 0 197*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_21_RESERVED_21A_MASK 0xffffffff 198*5113495bSYour Name 199*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_22_RESERVED_22A_OFFSET 0x00000058 200*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_22_RESERVED_22A_LSB 0 201*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_22_RESERVED_22A_MASK 0xffffffff 202*5113495bSYour Name 203*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_23_RESERVED_23A_OFFSET 0x0000005c 204*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_23_RESERVED_23A_LSB 0 205*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_23_RESERVED_23A_MASK 0xffffffff 206*5113495bSYour Name 207*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_24_RESERVED_24A_OFFSET 0x00000060 208*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_24_RESERVED_24A_LSB 0 209*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_24_RESERVED_24A_MASK 0x0fffffff 210*5113495bSYour Name 211*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_24_LOOPING_COUNT_OFFSET 0x00000060 212*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_24_LOOPING_COUNT_LSB 28 213*5113495bSYour Name #define REO_FLUSH_CACHE_STATUS_24_LOOPING_COUNT_MASK 0xf0000000 214*5113495bSYour Name 215*5113495bSYour Name #endif 216