/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2020-2021, The Linux Foundation. All rights reserved.
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
*/
#ifndef __ADRENO_GEN7_0_0_SNAPSHOT_H
#define __ADRENO_GEN7_0_0_SNAPSHOT_H
#include "a6xx_gpu_state.h"
static const u32 gen7_0_0_debugbus_blocks[] = {
A7XX_DBGBUS_CP_0_0,
A7XX_DBGBUS_CP_0_1,
A7XX_DBGBUS_RBBM,
A7XX_DBGBUS_HLSQ,
A7XX_DBGBUS_UCHE_0,
A7XX_DBGBUS_TESS_BR,
A7XX_DBGBUS_TESS_BV,
A7XX_DBGBUS_PC_BR,
A7XX_DBGBUS_PC_BV,
A7XX_DBGBUS_VFDP_BR,
A7XX_DBGBUS_VFDP_BV,
A7XX_DBGBUS_VPC_BR,
A7XX_DBGBUS_VPC_BV,
A7XX_DBGBUS_TSE_BR,
A7XX_DBGBUS_TSE_BV,
A7XX_DBGBUS_RAS_BR,
A7XX_DBGBUS_RAS_BV,
A7XX_DBGBUS_VSC,
A7XX_DBGBUS_COM_0,
A7XX_DBGBUS_LRZ_BR,
A7XX_DBGBUS_LRZ_BV,
A7XX_DBGBUS_UFC_0,
A7XX_DBGBUS_UFC_1,
A7XX_DBGBUS_GMU_GX,
A7XX_DBGBUS_DBGC,
A7XX_DBGBUS_GPC_BR,
A7XX_DBGBUS_GPC_BV,
A7XX_DBGBUS_LARC,
A7XX_DBGBUS_HLSQ_SPTP,
A7XX_DBGBUS_RB_0,
A7XX_DBGBUS_RB_1,
A7XX_DBGBUS_RB_2,
A7XX_DBGBUS_RB_3,
A7XX_DBGBUS_UCHE_WRAPPER,
A7XX_DBGBUS_CCU_0,
A7XX_DBGBUS_CCU_1,
A7XX_DBGBUS_CCU_2,
A7XX_DBGBUS_CCU_3,
A7XX_DBGBUS_VFD_BR_0,
A7XX_DBGBUS_VFD_BR_1,
A7XX_DBGBUS_VFD_BR_2,
A7XX_DBGBUS_VFD_BR_3,
A7XX_DBGBUS_VFD_BR_4,
A7XX_DBGBUS_VFD_BR_5,
A7XX_DBGBUS_VFD_BR_6,
A7XX_DBGBUS_VFD_BR_7,
A7XX_DBGBUS_VFD_BV_0,
A7XX_DBGBUS_VFD_BV_1,
A7XX_DBGBUS_VFD_BV_2,
A7XX_DBGBUS_VFD_BV_3,
A7XX_DBGBUS_USP_0,
A7XX_DBGBUS_USP_1,
A7XX_DBGBUS_USP_2,
A7XX_DBGBUS_USP_3,
A7XX_DBGBUS_TP_0,
A7XX_DBGBUS_TP_1,
A7XX_DBGBUS_TP_2,
A7XX_DBGBUS_TP_3,
A7XX_DBGBUS_TP_4,
A7XX_DBGBUS_TP_5,
A7XX_DBGBUS_TP_6,
A7XX_DBGBUS_TP_7,
A7XX_DBGBUS_USPTP_0,
A7XX_DBGBUS_USPTP_1,
A7XX_DBGBUS_USPTP_2,
A7XX_DBGBUS_USPTP_3,
A7XX_DBGBUS_USPTP_4,
A7XX_DBGBUS_USPTP_5,
A7XX_DBGBUS_USPTP_6,
A7XX_DBGBUS_USPTP_7,
};
static const struct gen7_shader_block gen7_0_0_shader_blocks[] = {
{A7XX_TP0_TMO_DATA, 0 x200, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_TP0_SMO_DATA, 0 x80, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_TP0_MIPMAP_BASE_DATA, 0 x3c0, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_INST_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_INST_DATA_1, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_0_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_1_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_2_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_3_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_4_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_5_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_6_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_7_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_CB_RAM, 0 x390, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_INST_TAG, 0 x90, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_INST_DATA_2, 0 x200, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_TMO_TAG, 0 x80, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_SMO_TAG, 0 x80, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_STATE_DATA, 0 x40, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_HWAVE_RAM, 0 x100, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_L0_INST_BUF, 0 x50, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_8_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_9_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_10_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_11_DATA, 0 x800, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_SP_LB_12_DATA, 0 x200, 4 , 2 , A7XX_PIPE_BR, A7XX_USPTP},
{A7XX_HLSQ_CVS_BE_CTXT_BUF_RAM_TAG, 0 x10, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CVS_BE_CTXT_BUF_RAM_TAG, 0 x10, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CPS_BE_CTXT_BUF_RAM_TAG, 0 x10, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_GFX_CVS_BE_CTXT_BUF_RAM, 0 x300, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_GFX_CVS_BE_CTXT_BUF_RAM, 0 x300, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_GFX_CPS_BE_CTXT_BUF_RAM, 0 x300, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CHUNK_CVS_RAM, 0 x1c0, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CHUNK_CVS_RAM, 0 x1c0, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CHUNK_CPS_RAM, 0 x300, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CHUNK_CPS_RAM, 0 x300, 1 , 1 , A7XX_PIPE_LPAC, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CHUNK_CVS_RAM_TAG, 0 x40, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CHUNK_CVS_RAM_TAG, 0 x40, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CHUNK_CPS_RAM_TAG, 0 x40, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CHUNK_CPS_RAM_TAG, 0 x40, 1 , 1 , A7XX_PIPE_LPAC, A7XX_HLSQ_STATE},
{A7XX_HLSQ_ICB_CVS_CB_BASE_TAG, 0 x10, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_ICB_CVS_CB_BASE_TAG, 0 x10, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_ICB_CPS_CB_BASE_TAG, 0 x10, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_ICB_CPS_CB_BASE_TAG, 0 x10, 1 , 1 , A7XX_PIPE_LPAC, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CVS_MISC_RAM, 0 x280, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CVS_MISC_RAM, 0 x280, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CPS_MISC_RAM, 0 x800, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CPS_MISC_RAM, 0 x800, 1 , 1 , A7XX_PIPE_LPAC, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CPS_MISC_RAM_1, 0 x200, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_INST_RAM, 0 x800, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_INST_RAM, 0 x800, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_INST_RAM, 0 x800, 1 , 1 , A7XX_PIPE_LPAC, A7XX_HLSQ_STATE},
{A7XX_HLSQ_GFX_CVS_CONST_RAM, 0 x800, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_GFX_CVS_CONST_RAM, 0 x800, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_GFX_CPS_CONST_RAM, 0 x800, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_GFX_CPS_CONST_RAM, 0 x800, 1 , 1 , A7XX_PIPE_LPAC, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CVS_MISC_RAM_TAG, 0 x10, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CVS_MISC_RAM_TAG, 0 x10, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CPS_MISC_RAM_TAG, 0 x10, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_CPS_MISC_RAM_TAG, 0 x10, 1 , 1 , A7XX_PIPE_LPAC, A7XX_HLSQ_STATE},
{A7XX_HLSQ_INST_RAM_TAG, 0 x80, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_INST_RAM_TAG, 0 x80, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_INST_RAM_TAG, 0 x80, 1 , 1 , A7XX_PIPE_LPAC, A7XX_HLSQ_STATE},
{A7XX_HLSQ_GFX_CVS_CONST_RAM_TAG, 0 x64, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_GFX_CVS_CONST_RAM_TAG, 0 x64, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_GFX_CPS_CONST_RAM_TAG, 0 x64, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_GFX_CPS_CONST_RAM_TAG, 0 x64, 1 , 1 , A7XX_PIPE_LPAC, A7XX_HLSQ_STATE},
{A7XX_HLSQ_INST_RAM_1, 0 x800, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_STPROC_META, 0 x10, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_BV_BE_META, 0 x10, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_BV_BE_META, 0 x10, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_DATAPATH_META, 0 x20, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_FRONTEND_META, 0 x40, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_FRONTEND_META, 0 x40, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_FRONTEND_META, 0 x40, 1 , 1 , A7XX_PIPE_LPAC, A7XX_HLSQ_STATE},
{A7XX_HLSQ_INDIRECT_META, 0 x10, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_BACKEND_META, 0 x40, 1 , 1 , A7XX_PIPE_BR, A7XX_HLSQ_STATE},
{A7XX_HLSQ_BACKEND_META, 0 x40, 1 , 1 , A7XX_PIPE_BV, A7XX_HLSQ_STATE},
{A7XX_HLSQ_BACKEND_META, 0 x40, 1 , 1 , A7XX_PIPE_LPAC, A7XX_HLSQ_STATE},
};
static const u32 gen7_0_0_pre_crashdumper_gpu_registers[] = {
0 x00210, 0 x00210, 0 x00212, 0 x00213, 0 x03c00, 0 x03c0b, 0 x03c40, 0 x03c42,
0 x03c45, 0 x03c47, 0 x03c49, 0 x03c4a, 0 x03cc0, 0 x03cd1,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_pre_crashdumper_gpu_registers), 8 ));
static const u32 gen7_0_0_post_crashdumper_registers[] = {
0 x00535, 0 x00535, 0 x0f400, 0 x0f400, 0 x0f800, 0 x0f803, 0 x0fc00, 0 x0fc01,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_post_crashdumper_registers), 8 ));
static const u32 gen7_0_0_gpu_registers[] = {
0 x00000, 0 x00000, 0 x00002, 0 x00002, 0 x00011, 0 x00012, 0 x00016, 0 x0001b,
0 x0001f, 0 x00032, 0 x00038, 0 x0003c, 0 x00042, 0 x00042, 0 x00044, 0 x00044,
0 x00047, 0 x00047, 0 x00049, 0 x0004a, 0 x0004c, 0 x0004c, 0 x00050, 0 x00050,
0 x00056, 0 x00056, 0 x00073, 0 x00075, 0 x000ad, 0 x000ae, 0 x000b0, 0 x000b0,
0 x000b4, 0 x000b4, 0 x000b8, 0 x000b8, 0 x000bc, 0 x000bc, 0 x000c0, 0 x000c0,
0 x000c4, 0 x000c4, 0 x000c8, 0 x000c8, 0 x000cc, 0 x000cc, 0 x000d0, 0 x000d0,
0 x000d4, 0 x000d4, 0 x000d8, 0 x000d8, 0 x000dc, 0 x000dc, 0 x000e0, 0 x000e0,
0 x000e4, 0 x000e4, 0 x000e8, 0 x000e8, 0 x000ec, 0 x000ec, 0 x000f0, 0 x000f0,
0 x000f4, 0 x000f4, 0 x000f8, 0 x000f8, 0 x00100, 0 x00100, 0 x00104, 0 x0010b,
0 x0010f, 0 x0011d, 0 x0012f, 0 x0012f, 0 x00200, 0 x0020d, 0 x00211, 0 x00211,
0 x00215, 0 x00243, 0 x00260, 0 x00268, 0 x00272, 0 x00274, 0 x00281, 0 x0028d,
0 x00300, 0 x00401, 0 x00410, 0 x00451, 0 x00460, 0 x004a3, 0 x004c0, 0 x004d1,
0 x00500, 0 x00500, 0 x00507, 0 x0050b, 0 x0050f, 0 x0050f, 0 x00511, 0 x00511,
0 x00533, 0 x00534, 0 x00536, 0 x00536, 0 x00540, 0 x00555, 0 x00564, 0 x00567,
0 x00574, 0 x00577, 0 x005fb, 0 x005ff, 0 x00800, 0 x00808, 0 x00810, 0 x00813,
0 x00820, 0 x00821, 0 x00823, 0 x00827, 0 x00830, 0 x00834, 0 x0083f, 0 x00841,
0 x00843, 0 x00847, 0 x0084f, 0 x00886, 0 x008a0, 0 x008ab, 0 x008c0, 0 x008c0,
0 x008c4, 0 x008c5, 0 x008d0, 0 x008dd, 0 x008e0, 0 x008e6, 0 x008f0, 0 x008f3,
0 x00900, 0 x00903, 0 x00908, 0 x00911, 0 x00928, 0 x0093e, 0 x00942, 0 x0094d,
0 x00980, 0 x00984, 0 x0098d, 0 x0098f, 0 x009b0, 0 x009b4, 0 x009c2, 0 x009c9,
0 x009ce, 0 x009d7, 0 x009e0, 0 x009e7, 0 x00a00, 0 x00a00, 0 x00a02, 0 x00a03,
0 x00a10, 0 x00a4f, 0 x00a61, 0 x00a9f, 0 x00ad0, 0 x00adb, 0 x00b00, 0 x00b31,
0 x00b35, 0 x00b3c, 0 x00b40, 0 x00b40, 0 x00c00, 0 x00c00, 0 x00c02, 0 x00c04,
0 x00c06, 0 x00c06, 0 x00c10, 0 x00cd9, 0 x00ce0, 0 x00d0c, 0 x00df0, 0 x00df4,
0 x00e01, 0 x00e02, 0 x00e07, 0 x00e0e, 0 x00e10, 0 x00e13, 0 x00e17, 0 x00e19,
0 x00e1b, 0 x00e2b, 0 x00e30, 0 x00e32, 0 x00e38, 0 x00e3c,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_gpu_registers), 8 ));
static const u32 gen7_0_0_gmu_registers[] = {
0 x10001, 0 x10001, 0 x10003, 0 x10003, 0 x10401, 0 x10401, 0 x10403, 0 x10403,
0 x10801, 0 x10801, 0 x10803, 0 x10803, 0 x10c01, 0 x10c01, 0 x10c03, 0 x10c03,
0 x11001, 0 x11001, 0 x11003, 0 x11003, 0 x11401, 0 x11401, 0 x11403, 0 x11403,
0 x11801, 0 x11801, 0 x11803, 0 x11803, 0 x11c01, 0 x11c01, 0 x11c03, 0 x11c03,
0 x1f400, 0 x1f40d, 0 x1f40f, 0 x1f411, 0 x1f500, 0 x1f500, 0 x1f507, 0 x1f507,
0 x1f509, 0 x1f50b, 0 x1f800, 0 x1f804, 0 x1f807, 0 x1f808, 0 x1f80b, 0 x1f80c,
0 x1f80f, 0 x1f80f, 0 x1f811, 0 x1f811, 0 x1f813, 0 x1f817, 0 x1f819, 0 x1f81c,
0 x1f824, 0 x1f82a, 0 x1f82d, 0 x1f830, 0 x1f840, 0 x1f853, 0 x1f860, 0 x1f860,
0 x1f870, 0 x1f879, 0 x1f87f, 0 x1f87f, 0 x1f888, 0 x1f889, 0 x1f8a0, 0 x1f8a2,
0 x1f8a4, 0 x1f8af, 0 x1f8c0, 0 x1f8c1, 0 x1f8c3, 0 x1f8c4, 0 x1f8d0, 0 x1f8d0,
0 x1f8ec, 0 x1f8ec, 0 x1f8f0, 0 x1f8f1, 0 x1f910, 0 x1f914, 0 x1f920, 0 x1f921,
0 x1f924, 0 x1f925, 0 x1f928, 0 x1f929, 0 x1f92c, 0 x1f92d, 0 x1f940, 0 x1f940,
0 x1f942, 0 x1f944, 0 x1f948, 0 x1f94a, 0 x1f94f, 0 x1f951, 0 x1f958, 0 x1f95a,
0 x1f95d, 0 x1f95d, 0 x1f962, 0 x1f962, 0 x1f964, 0 x1f96b, 0 x1f970, 0 x1f979,
0 x1f980, 0 x1f981, 0 x1f984, 0 x1f986, 0 x1f992, 0 x1f993, 0 x1f996, 0 x1f99e,
0 x1f9c0, 0 x1f9c0, 0 x1f9c5, 0 x1f9d4, 0 x1f9f0, 0 x1f9f1, 0 x1f9f8, 0 x1f9fa,
0 x1fa00, 0 x1fa03, 0 x20000, 0 x20005, 0 x20008, 0 x2000c, 0 x20010, 0 x20012,
0 x20018, 0 x20018, 0 x20020, 0 x20023, 0 x20030, 0 x20031, 0 x23801, 0 x23801,
0 x23803, 0 x23803, 0 x23805, 0 x23805, 0 x23807, 0 x23807, 0 x23809, 0 x23809,
0 x2380b, 0 x2380b, 0 x2380d, 0 x2380d, 0 x2380f, 0 x2380f, 0 x23811, 0 x23811,
0 x23813, 0 x23813, 0 x23815, 0 x23815, 0 x23817, 0 x23817, 0 x23819, 0 x23819,
0 x2381b, 0 x2381b, 0 x2381d, 0 x2381d, 0 x2381f, 0 x23820, 0 x23822, 0 x23822,
0 x23824, 0 x23824, 0 x23826, 0 x23826, 0 x23828, 0 x23828, 0 x2382a, 0 x2382a,
0 x2382c, 0 x2382c, 0 x2382e, 0 x2382e, 0 x23830, 0 x23830, 0 x23832, 0 x23832,
0 x23834, 0 x23834, 0 x23836, 0 x23836, 0 x23838, 0 x23838, 0 x2383a, 0 x2383a,
0 x2383c, 0 x2383c, 0 x2383e, 0 x2383e, 0 x23840, 0 x23847, 0 x23b00, 0 x23b01,
0 x23b03, 0 x23b03, 0 x23b05, 0 x23b0e, 0 x23b10, 0 x23b13, 0 x23b15, 0 x23b16,
0 x23b20, 0 x23b20, 0 x23b28, 0 x23b28, 0 x23b30, 0 x23b30,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_gmu_registers), 8 ));
static const u32 gen7_0_0_gmugx_registers[] = {
0 x1a400, 0 x1a41f, 0 x1a440, 0 x1a45f, 0 x1a480, 0 x1a49f, 0 x1a4c0, 0 x1a4df,
0 x1a500, 0 x1a51f, 0 x1a540, 0 x1a55f, 0 x1a580, 0 x1a59f, 0 x1a5c0, 0 x1a5df,
0 x1a780, 0 x1a781, 0 x1a783, 0 x1a785, 0 x1a787, 0 x1a789, 0 x1a78b, 0 x1a78d,
0 x1a78f, 0 x1a791, 0 x1a793, 0 x1a795, 0 x1a797, 0 x1a799, 0 x1a79b, 0 x1a79b,
0 x1a7c0, 0 x1a7c1, 0 x1a7c4, 0 x1a7c5, 0 x1a7c8, 0 x1a7c9, 0 x1a7cc, 0 x1a7cd,
0 x1a7d0, 0 x1a7d1, 0 x1a7d4, 0 x1a7d5, 0 x1a7d8, 0 x1a7d9, 0 x1a7fc, 0 x1a7fd,
0 x1a800, 0 x1a802, 0 x1a804, 0 x1a804, 0 x1a816, 0 x1a816, 0 x1a81e, 0 x1a81e,
0 x1a826, 0 x1a826, 0 x1a82e, 0 x1a82e, 0 x1a836, 0 x1a836, 0 x1a83e, 0 x1a83e,
0 x1a846, 0 x1a846, 0 x1a860, 0 x1a862, 0 x1a864, 0 x1a867, 0 x1a870, 0 x1a870,
0 x1a883, 0 x1a884, 0 x1a8c0, 0 x1a8c2, 0 x1a8c4, 0 x1a8c7, 0 x1a8d0, 0 x1a8d3,
0 x1a900, 0 x1a92b, 0 x1a940, 0 x1a940,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_gmugx_registers), 8 ));
static const u32 gen7_0_0_noncontext_pipe_br_registers[] = {
0 x00887, 0 x0088c, 0 x08600, 0 x08600, 0 x08602, 0 x08602, 0 x08610, 0 x0861b,
0 x08620, 0 x08620, 0 x08630, 0 x08630, 0 x08637, 0 x08639, 0 x08640, 0 x08640,
0 x09600, 0 x09600, 0 x09602, 0 x09603, 0 x0960a, 0 x09616, 0 x09624, 0 x0963a,
0 x09640, 0 x09640, 0 x09e00, 0 x09e00, 0 x09e02, 0 x09e07, 0 x09e0a, 0 x09e16,
0 x09e19, 0 x09e19, 0 x09e1c, 0 x09e1c, 0 x09e20, 0 x09e25, 0 x09e30, 0 x09e31,
0 x09e40, 0 x09e51, 0 x09e64, 0 x09e64, 0 x09e70, 0 x09e72, 0 x09e78, 0 x09e79,
0 x09e80, 0 x09fff, 0 x0a600, 0 x0a600, 0 x0a603, 0 x0a603, 0 x0a610, 0 x0a61f,
0 x0a630, 0 x0a631, 0 x0a638, 0 x0a638,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_noncontext_pipe_br_registers), 8 ));
static const u32 gen7_0_0_noncontext_pipe_bv_registers[] = {
0 x00887, 0 x0088c, 0 x08600, 0 x08600, 0 x08602, 0 x08602, 0 x08610, 0 x0861b,
0 x08620, 0 x08620, 0 x08630, 0 x08630, 0 x08637, 0 x08639, 0 x08640, 0 x08640,
0 x09600, 0 x09600, 0 x09602, 0 x09603, 0 x0960a, 0 x09616, 0 x09624, 0 x0963a,
0 x09640, 0 x09640, 0 x09e00, 0 x09e00, 0 x09e02, 0 x09e07, 0 x09e0a, 0 x09e16,
0 x09e19, 0 x09e19, 0 x09e1c, 0 x09e1c, 0 x09e20, 0 x09e25, 0 x09e30, 0 x09e31,
0 x09e40, 0 x09e51, 0 x09e64, 0 x09e64, 0 x09e70, 0 x09e72, 0 x09e78, 0 x09e79,
0 x09e80, 0 x09fff, 0 x0a600, 0 x0a600, 0 x0a603, 0 x0a603, 0 x0a610, 0 x0a61f,
0 x0a630, 0 x0a631, 0 x0a638, 0 x0a638,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_noncontext_pipe_bv_registers), 8 ));
static const u32 gen7_0_0_noncontext_pipe_lpac_registers[] = {
0 x00887, 0 x0088c, 0 x00f80, 0 x00f80,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_noncontext_pipe_lpac_registers), 8 ));
static const u32 gen7_0_0_noncontext_rb_rac_pipe_br_registers[] = {
0 x08e10, 0 x08e1c, 0 x08e20, 0 x08e25, 0 x08e51, 0 x08e5a,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_noncontext_rb_rac_pipe_br_registers), 8 ));
static const u32 gen7_0_0_noncontext_rb_rbp_pipe_br_registers[] = {
0 x08e01, 0 x08e01, 0 x08e04, 0 x08e04, 0 x08e06, 0 x08e09, 0 x08e0c, 0 x08e0c,
0 x08e28, 0 x08e28, 0 x08e2c, 0 x08e35, 0 x08e3b, 0 x08e3f, 0 x08e50, 0 x08e50,
0 x08e5b, 0 x08e5d, 0 x08e5f, 0 x08e5f, 0 x08e61, 0 x08e61, 0 x08e63, 0 x08e65,
0 x08e68, 0 x08e68, 0 x08e70, 0 x08e79, 0 x08e80, 0 x08e8f,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_noncontext_rb_rbp_pipe_br_registers), 8 ));
/* Block: GRAS Cluster: A7XX_CLUSTER_GRAS Pipeline: A7XX_PIPE_BR */
static const u32 gen7_0_0_gras_cluster_gras_pipe_br_registers[] = {
0 x08000, 0 x08008, 0 x08010, 0 x08092, 0 x08094, 0 x08099, 0 x0809b, 0 x0809d,
0 x080a0, 0 x080a7, 0 x080af, 0 x080f1, 0 x080f4, 0 x080f6, 0 x080f8, 0 x080fa,
0 x08100, 0 x08107, 0 x08109, 0 x0810b, 0 x08110, 0 x08110, 0 x08120, 0 x0813f,
0 x08400, 0 x08406, 0 x0840a, 0 x0840b,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_gras_cluster_gras_pipe_br_registers), 8 ));
/* Block: GRAS Cluster: A7XX_CLUSTER_GRAS Pipeline: A7XX_PIPE_BV */
static const u32 gen7_0_0_gras_cluster_gras_pipe_bv_registers[] = {
0 x08000, 0 x08008, 0 x08010, 0 x08092, 0 x08094, 0 x08099, 0 x0809b, 0 x0809d,
0 x080a0, 0 x080a7, 0 x080af, 0 x080f1, 0 x080f4, 0 x080f6, 0 x080f8, 0 x080fa,
0 x08100, 0 x08107, 0 x08109, 0 x0810b, 0 x08110, 0 x08110, 0 x08120, 0 x0813f,
0 x08400, 0 x08406, 0 x0840a, 0 x0840b,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_gras_cluster_gras_pipe_bv_registers), 8 ));
/* Block: PC Cluster: A7XX_CLUSTER_FE Pipeline: A7XX_PIPE_BR */
static const u32 gen7_0_0_pc_cluster_fe_pipe_br_registers[] = {
0 x09800, 0 x09804, 0 x09806, 0 x0980a, 0 x09810, 0 x09811, 0 x09884, 0 x09886,
0 x09b00, 0 x09b08,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_pc_cluster_fe_pipe_br_registers), 8 ));
/* Block: PC Cluster: A7XX_CLUSTER_FE Pipeline: A7XX_PIPE_BV */
static const u32 gen7_0_0_pc_cluster_fe_pipe_bv_registers[] = {
0 x09800, 0 x09804, 0 x09806, 0 x0980a, 0 x09810, 0 x09811, 0 x09884, 0 x09886,
0 x09b00, 0 x09b08,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_pc_cluster_fe_pipe_bv_registers), 8 ));
/* Block: RB_RAC Cluster: A7XX_CLUSTER_PS Pipeline: A7XX_PIPE_BR */
static const u32 gen7_0_0_rb_rac_cluster_ps_pipe_br_registers[] = {
0 x08802, 0 x08802, 0 x08804, 0 x08806, 0 x08809, 0 x0880a, 0 x0880e, 0 x08811,
0 x08818, 0 x0881e, 0 x08821, 0 x08821, 0 x08823, 0 x08826, 0 x08829, 0 x08829,
0 x0882b, 0 x0882e, 0 x08831, 0 x08831, 0 x08833, 0 x08836, 0 x08839, 0 x08839,
0 x0883b, 0 x0883e, 0 x08841, 0 x08841, 0 x08843, 0 x08846, 0 x08849, 0 x08849,
0 x0884b, 0 x0884e, 0 x08851, 0 x08851, 0 x08853, 0 x08856, 0 x08859, 0 x08859,
0 x0885b, 0 x0885e, 0 x08860, 0 x08864, 0 x08870, 0 x08870, 0 x08873, 0 x08876,
0 x08878, 0 x08879, 0 x08882, 0 x08885, 0 x08887, 0 x08889, 0 x08891, 0 x08891,
0 x08898, 0 x08898, 0 x088c0, 0 x088c1, 0 x088e5, 0 x088e5, 0 x088f4, 0 x088f5,
0 x08a00, 0 x08a05, 0 x08a10, 0 x08a15, 0 x08a20, 0 x08a25, 0 x08a30, 0 x08a35,
0 x08c00, 0 x08c01, 0 x08c18, 0 x08c1f, 0 x08c26, 0 x08c34,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_rb_rac_cluster_ps_pipe_br_registers), 8 ));
/* Block: RB_RBP Cluster: A7XX_CLUSTER_PS Pipeline: A7XX_PIPE_BR */
static const u32 gen7_0_0_rb_rbp_cluster_ps_pipe_br_registers[] = {
0 x08800, 0 x08801, 0 x08803, 0 x08803, 0 x0880b, 0 x0880d, 0 x08812, 0 x08812,
0 x08820, 0 x08820, 0 x08822, 0 x08822, 0 x08827, 0 x08828, 0 x0882a, 0 x0882a,
0 x0882f, 0 x08830, 0 x08832, 0 x08832, 0 x08837, 0 x08838, 0 x0883a, 0 x0883a,
0 x0883f, 0 x08840, 0 x08842, 0 x08842, 0 x08847, 0 x08848, 0 x0884a, 0 x0884a,
0 x0884f, 0 x08850, 0 x08852, 0 x08852, 0 x08857, 0 x08858, 0 x0885a, 0 x0885a,
0 x0885f, 0 x0885f, 0 x08865, 0 x08865, 0 x08871, 0 x08872, 0 x08877, 0 x08877,
0 x08880, 0 x08881, 0 x08886, 0 x08886, 0 x08890, 0 x08890, 0 x088d0, 0 x088e4,
0 x088e8, 0 x088ea, 0 x088f0, 0 x088f0, 0 x08900, 0 x0891a, 0 x08927, 0 x08928,
0 x08c17, 0 x08c17, 0 x08c20, 0 x08c25,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_rb_rbp_cluster_ps_pipe_br_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_BR Location: HLSQ_STATE */
static const u32 gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_state_registers[] = {
0 x0a980, 0 x0a980, 0 x0a982, 0 x0a984, 0 x0a99e, 0 x0a99e, 0 x0a9a7, 0 x0a9a7,
0 x0a9aa, 0 x0a9aa, 0 x0a9ae, 0 x0a9b0, 0 x0a9b3, 0 x0a9b5, 0 x0a9ba, 0 x0a9ba,
0 x0a9bc, 0 x0a9bc, 0 x0a9c4, 0 x0a9c4, 0 x0a9cd, 0 x0a9cd, 0 x0a9e0, 0 x0a9fc,
0 x0aa00, 0 x0aa00, 0 x0aa30, 0 x0aa31, 0 x0aa40, 0 x0aabf, 0 x0ab00, 0 x0ab03,
0 x0ab05, 0 x0ab05, 0 x0ab0a, 0 x0ab1b, 0 x0ab20, 0 x0ab20, 0 x0ab40, 0 x0abbf,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_state_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_LPAC Location: HLSQ_STATE */
static const u32 gen7_0_0_sp_cluster_sp_ps_pipe_lpac_hlsq_state_registers[] = {
0 x0a9b0, 0 x0a9b0, 0 x0a9b3, 0 x0a9b5, 0 x0a9ba, 0 x0a9ba, 0 x0a9bc, 0 x0a9bc,
0 x0a9c4, 0 x0a9c4, 0 x0a9cd, 0 x0a9cd, 0 x0a9e2, 0 x0a9e3, 0 x0a9e6, 0 x0a9fc,
0 x0aa00, 0 x0aa00, 0 x0aa31, 0 x0aa31, 0 x0ab00, 0 x0ab01,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_ps_pipe_lpac_hlsq_state_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_BR Location: HLSQ_DP */
static const u32 gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_dp_registers[] = {
0 x0a9b1, 0 x0a9b1, 0 x0a9c6, 0 x0a9cb, 0 x0a9d4, 0 x0a9df,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_dp_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_LPAC Location: HLSQ_DP */
static const u32 gen7_0_0_sp_cluster_sp_ps_pipe_lpac_hlsq_dp_registers[] = {
0 x0a9b1, 0 x0a9b1, 0 x0a9d4, 0 x0a9df,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_ps_pipe_lpac_hlsq_dp_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_BR Location: SP_TOP */
static const u32 gen7_0_0_sp_cluster_sp_ps_pipe_br_sp_top_registers[] = {
0 x0a980, 0 x0a980, 0 x0a982, 0 x0a984, 0 x0a99e, 0 x0a9a2, 0 x0a9a7, 0 x0a9a8,
0 x0a9aa, 0 x0a9aa, 0 x0a9ae, 0 x0a9ae, 0 x0a9b0, 0 x0a9b1, 0 x0a9b3, 0 x0a9b5,
0 x0a9ba, 0 x0a9bc, 0 x0a9e0, 0 x0a9f9, 0 x0aa00, 0 x0aa00, 0 x0ab00, 0 x0ab00,
0 x0ab02, 0 x0ab02, 0 x0ab04, 0 x0ab05, 0 x0ab0a, 0 x0ab1b, 0 x0ab20, 0 x0ab20,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_ps_pipe_br_sp_top_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_LPAC Location: SP_TOP */
static const u32 gen7_0_0_sp_cluster_sp_ps_pipe_lpac_sp_top_registers[] = {
0 x0a9b0, 0 x0a9b1, 0 x0a9b3, 0 x0a9b5, 0 x0a9ba, 0 x0a9bc, 0 x0a9e2, 0 x0a9e3,
0 x0a9e6, 0 x0a9f9, 0 x0aa00, 0 x0aa00, 0 x0ab00, 0 x0ab00,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_ps_pipe_lpac_sp_top_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_BR Location: uSPTP */
static const u32 gen7_0_0_sp_cluster_sp_ps_pipe_br_usptp_registers[] = {
0 x0a980, 0 x0a982, 0 x0a985, 0 x0a9a6, 0 x0a9a8, 0 x0a9a9, 0 x0a9ab, 0 x0a9ae,
0 x0a9b0, 0 x0a9b3, 0 x0a9b6, 0 x0a9b9, 0 x0a9bb, 0 x0a9bf, 0 x0a9c2, 0 x0a9c3,
0 x0a9cd, 0 x0a9cd, 0 x0a9d0, 0 x0a9d3, 0 x0aa30, 0 x0aa31, 0 x0aa40, 0 x0aabf,
0 x0ab00, 0 x0ab05, 0 x0ab21, 0 x0ab22, 0 x0ab40, 0 x0abbf,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_ps_pipe_br_usptp_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_LPAC Location: uSPTP */
static const u32 gen7_0_0_sp_cluster_sp_ps_pipe_lpac_usptp_registers[] = {
0 x0a9b0, 0 x0a9b3, 0 x0a9b6, 0 x0a9b9, 0 x0a9bb, 0 x0a9be, 0 x0a9c2, 0 x0a9c3,
0 x0a9cd, 0 x0a9cd, 0 x0a9d0, 0 x0a9d3, 0 x0aa31, 0 x0aa31, 0 x0ab00, 0 x0ab01,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_ps_pipe_lpac_usptp_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_VS Pipeline: A7XX_PIPE_BR Location: HLSQ_STATE */
static const u32 gen7_0_0_sp_cluster_sp_vs_pipe_br_hlsq_state_registers[] = {
0 x0a800, 0 x0a800, 0 x0a81b, 0 x0a81d, 0 x0a822, 0 x0a822, 0 x0a824, 0 x0a824,
0 x0a827, 0 x0a82a, 0 x0a830, 0 x0a830, 0 x0a833, 0 x0a835, 0 x0a83a, 0 x0a83a,
0 x0a83c, 0 x0a83c, 0 x0a83f, 0 x0a840, 0 x0a85b, 0 x0a85d, 0 x0a862, 0 x0a862,
0 x0a864, 0 x0a864, 0 x0a867, 0 x0a867, 0 x0a870, 0 x0a870, 0 x0a88c, 0 x0a88e,
0 x0a893, 0 x0a893, 0 x0a895, 0 x0a895, 0 x0a898, 0 x0a898, 0 x0a89a, 0 x0a89d,
0 x0a8a0, 0 x0a8af, 0 x0a8c0, 0 x0a8c3, 0 x0ab00, 0 x0ab03, 0 x0ab05, 0 x0ab05,
0 x0ab0a, 0 x0ab1b, 0 x0ab20, 0 x0ab20, 0 x0ab40, 0 x0abbf,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_vs_pipe_br_hlsq_state_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_VS Pipeline: A7XX_PIPE_BV Location: HLSQ_STATE */
static const u32 gen7_0_0_sp_cluster_sp_vs_pipe_bv_hlsq_state_registers[] = {
0 x0a800, 0 x0a800, 0 x0a81b, 0 x0a81d, 0 x0a822, 0 x0a822, 0 x0a824, 0 x0a824,
0 x0a827, 0 x0a82a, 0 x0a830, 0 x0a830, 0 x0a833, 0 x0a835, 0 x0a83a, 0 x0a83a,
0 x0a83c, 0 x0a83c, 0 x0a83f, 0 x0a840, 0 x0a85b, 0 x0a85d, 0 x0a862, 0 x0a862,
0 x0a864, 0 x0a864, 0 x0a867, 0 x0a867, 0 x0a870, 0 x0a870, 0 x0a88c, 0 x0a88e,
0 x0a893, 0 x0a893, 0 x0a895, 0 x0a895, 0 x0a898, 0 x0a898, 0 x0a89a, 0 x0a89d,
0 x0a8a0, 0 x0a8af, 0 x0a8c0, 0 x0a8c3, 0 x0ab00, 0 x0ab02, 0 x0ab0a, 0 x0ab1b,
0 x0ab20, 0 x0ab20, 0 x0ab40, 0 x0abbf,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_vs_pipe_bv_hlsq_state_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_VS Pipeline: A7XX_PIPE_BR Location: SP_TOP */
static const u32 gen7_0_0_sp_cluster_sp_vs_pipe_br_sp_top_registers[] = {
0 x0a800, 0 x0a800, 0 x0a81c, 0 x0a81d, 0 x0a822, 0 x0a824, 0 x0a830, 0 x0a831,
0 x0a834, 0 x0a835, 0 x0a83a, 0 x0a83c, 0 x0a840, 0 x0a840, 0 x0a85c, 0 x0a85d,
0 x0a862, 0 x0a864, 0 x0a870, 0 x0a871, 0 x0a88d, 0 x0a88e, 0 x0a893, 0 x0a895,
0 x0a8a0, 0 x0a8af, 0 x0ab00, 0 x0ab00, 0 x0ab02, 0 x0ab02, 0 x0ab04, 0 x0ab05,
0 x0ab0a, 0 x0ab1b, 0 x0ab20, 0 x0ab20,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_vs_pipe_br_sp_top_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_VS Pipeline: A7XX_PIPE_BV Location: SP_TOP */
static const u32 gen7_0_0_sp_cluster_sp_vs_pipe_bv_sp_top_registers[] = {
0 x0a800, 0 x0a800, 0 x0a81c, 0 x0a81d, 0 x0a822, 0 x0a824, 0 x0a830, 0 x0a831,
0 x0a834, 0 x0a835, 0 x0a83a, 0 x0a83c, 0 x0a840, 0 x0a840, 0 x0a85c, 0 x0a85d,
0 x0a862, 0 x0a864, 0 x0a870, 0 x0a871, 0 x0a88d, 0 x0a88e, 0 x0a893, 0 x0a895,
0 x0a8a0, 0 x0a8af, 0 x0ab00, 0 x0ab00, 0 x0ab02, 0 x0ab02, 0 x0ab0a, 0 x0ab1b,
0 x0ab20, 0 x0ab20,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_vs_pipe_bv_sp_top_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_VS Pipeline: A7XX_PIPE_BR Location: uSPTP */
static const u32 gen7_0_0_sp_cluster_sp_vs_pipe_br_usptp_registers[] = {
0 x0a800, 0 x0a81b, 0 x0a81e, 0 x0a821, 0 x0a823, 0 x0a827, 0 x0a830, 0 x0a833,
0 x0a836, 0 x0a839, 0 x0a83b, 0 x0a85b, 0 x0a85e, 0 x0a861, 0 x0a863, 0 x0a867,
0 x0a870, 0 x0a88c, 0 x0a88f, 0 x0a892, 0 x0a894, 0 x0a898, 0 x0a8c0, 0 x0a8c3,
0 x0ab00, 0 x0ab05, 0 x0ab21, 0 x0ab22, 0 x0ab40, 0 x0abbf,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_vs_pipe_br_usptp_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_VS Pipeline: A7XX_PIPE_BV Location: uSPTP */
static const u32 gen7_0_0_sp_cluster_sp_vs_pipe_bv_usptp_registers[] = {
0 x0a800, 0 x0a81b, 0 x0a81e, 0 x0a821, 0 x0a823, 0 x0a827, 0 x0a830, 0 x0a833,
0 x0a836, 0 x0a839, 0 x0a83b, 0 x0a85b, 0 x0a85e, 0 x0a861, 0 x0a863, 0 x0a867,
0 x0a870, 0 x0a88c, 0 x0a88f, 0 x0a892, 0 x0a894, 0 x0a898, 0 x0a8c0, 0 x0a8c3,
0 x0ab00, 0 x0ab02, 0 x0ab21, 0 x0ab22, 0 x0ab40, 0 x0abbf,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_vs_pipe_bv_usptp_registers), 8 ));
/* Block: TPL1 Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_BR */
static const u32 gen7_0_0_tpl1_cluster_sp_ps_pipe_br_registers[] = {
0 x0b180, 0 x0b183, 0 x0b190, 0 x0b195, 0 x0b2c0, 0 x0b2d5, 0 x0b300, 0 x0b307,
0 x0b309, 0 x0b309, 0 x0b310, 0 x0b310,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_tpl1_cluster_sp_ps_pipe_br_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_BV Location: HLSQ_STATE */
static const u32 gen7_0_0_sp_cluster_sp_ps_pipe_bv_hlsq_state_registers[] = {
0 x0ab00, 0 x0ab02, 0 x0ab0a, 0 x0ab1b, 0 x0ab20, 0 x0ab20, 0 x0ab40, 0 x0abbf,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_ps_pipe_bv_hlsq_state_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_BV Location: SP_TOP */
static const u32 gen7_0_0_sp_cluster_sp_ps_pipe_bv_sp_top_registers[] = {
0 x0ab00, 0 x0ab00, 0 x0ab02, 0 x0ab02, 0 x0ab0a, 0 x0ab1b, 0 x0ab20, 0 x0ab20,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_ps_pipe_bv_sp_top_registers), 8 ));
/* Block: SP Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_BV Location: uSPTP */
static const u32 gen7_0_0_sp_cluster_sp_ps_pipe_bv_usptp_registers[] = {
0 x0ab00, 0 x0ab02, 0 x0ab21, 0 x0ab22, 0 x0ab40, 0 x0abbf,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_cluster_sp_ps_pipe_bv_usptp_registers), 8 ));
/* Block: TPL1 Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_BV */
static const u32 gen7_0_0_tpl1_cluster_sp_ps_pipe_bv_registers[] = {
0 x0b300, 0 x0b307, 0 x0b309, 0 x0b309, 0 x0b310, 0 x0b310,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_tpl1_cluster_sp_ps_pipe_bv_registers), 8 ));
/* Block: TPL1 Cluster: A7XX_CLUSTER_SP_PS Pipeline: A7XX_PIPE_LPAC */
static const u32 gen7_0_0_tpl1_cluster_sp_ps_pipe_lpac_registers[] = {
0 x0b180, 0 x0b181, 0 x0b300, 0 x0b301, 0 x0b307, 0 x0b307, 0 x0b309, 0 x0b309,
0 x0b310, 0 x0b310,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_tpl1_cluster_sp_ps_pipe_lpac_registers), 8 ));
/* Block: TPL1 Cluster: A7XX_CLUSTER_SP_VS Pipeline: A7XX_PIPE_BR */
static const u32 gen7_0_0_tpl1_cluster_sp_vs_pipe_br_registers[] = {
0 x0b300, 0 x0b307, 0 x0b309, 0 x0b309, 0 x0b310, 0 x0b310,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_tpl1_cluster_sp_vs_pipe_br_registers), 8 ));
/* Block: TPL1 Cluster: A7XX_CLUSTER_SP_VS Pipeline: A7XX_PIPE_BV */
static const u32 gen7_0_0_tpl1_cluster_sp_vs_pipe_bv_registers[] = {
0 x0b300, 0 x0b307, 0 x0b309, 0 x0b309, 0 x0b310, 0 x0b310,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_tpl1_cluster_sp_vs_pipe_bv_registers), 8 ));
/* Block: VFD Cluster: A7XX_CLUSTER_FE Pipeline: A7XX_PIPE_BR */
static const u32 gen7_0_0_vfd_cluster_fe_pipe_br_registers[] = {
0 x0a000, 0 x0a009, 0 x0a00e, 0 x0a0ef,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_vfd_cluster_fe_pipe_br_registers), 8 ));
/* Block: VFD Cluster: A7XX_CLUSTER_FE Pipeline: A7XX_PIPE_BV */
static const u32 gen7_0_0_vfd_cluster_fe_pipe_bv_registers[] = {
0 x0a000, 0 x0a009, 0 x0a00e, 0 x0a0ef,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_vfd_cluster_fe_pipe_bv_registers), 8 ));
/* Block: VPC Cluster: A7XX_CLUSTER_FE Pipeline: A7XX_PIPE_BR */
static const u32 gen7_0_0_vpc_cluster_fe_pipe_br_registers[] = {
0 x09300, 0 x09307,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_vpc_cluster_fe_pipe_br_registers), 8 ));
/* Block: VPC Cluster: A7XX_CLUSTER_FE Pipeline: A7XX_PIPE_BV */
static const u32 gen7_0_0_vpc_cluster_fe_pipe_bv_registers[] = {
0 x09300, 0 x09307,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_vpc_cluster_fe_pipe_bv_registers), 8 ));
/* Block: VPC Cluster: A7XX_CLUSTER_PC_VS Pipeline: A7XX_PIPE_BR */
static const u32 gen7_0_0_vpc_cluster_pc_vs_pipe_br_registers[] = {
0 x09101, 0 x0910c, 0 x09300, 0 x09307,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_vpc_cluster_pc_vs_pipe_br_registers), 8 ));
/* Block: VPC Cluster: A7XX_CLUSTER_PC_VS Pipeline: A7XX_PIPE_BV */
static const u32 gen7_0_0_vpc_cluster_pc_vs_pipe_bv_registers[] = {
0 x09101, 0 x0910c, 0 x09300, 0 x09307,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_vpc_cluster_pc_vs_pipe_bv_registers), 8 ));
/* Block: VPC Cluster: A7XX_CLUSTER_VPC_PS Pipeline: A7XX_PIPE_BR */
static const u32 gen7_0_0_vpc_cluster_vpc_ps_pipe_br_registers[] = {
0 x09200, 0 x0920f, 0 x09212, 0 x09216, 0 x09218, 0 x09236, 0 x09300, 0 x09307,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_vpc_cluster_vpc_ps_pipe_br_registers), 8 ));
/* Block: VPC Cluster: A7XX_CLUSTER_VPC_PS Pipeline: A7XX_PIPE_BV */
static const u32 gen7_0_0_vpc_cluster_vpc_ps_pipe_bv_registers[] = {
0 x09200, 0 x0920f, 0 x09212, 0 x09216, 0 x09218, 0 x09236, 0 x09300, 0 x09307,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_vpc_cluster_vpc_ps_pipe_bv_registers), 8 ));
/* Block: SP Cluster: noncontext Pipeline: A7XX_PIPE_BR Location: HLSQ_STATE */
static const u32 gen7_0_0_sp_noncontext_pipe_br_hlsq_state_registers[] = {
0 x0ae52, 0 x0ae52, 0 x0ae60, 0 x0ae67, 0 x0ae69, 0 x0ae73,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_noncontext_pipe_br_hlsq_state_registers), 8 ));
/* Block: SP Cluster: noncontext Pipeline: A7XX_PIPE_BR Location: SP_TOP */
static const u32 gen7_0_0_sp_noncontext_pipe_br_sp_top_registers[] = {
0 x0ae00, 0 x0ae00, 0 x0ae02, 0 x0ae04, 0 x0ae06, 0 x0ae09, 0 x0ae0c, 0 x0ae0c,
0 x0ae0f, 0 x0ae0f, 0 x0ae28, 0 x0ae2b, 0 x0ae35, 0 x0ae35, 0 x0ae3a, 0 x0ae3f,
0 x0ae50, 0 x0ae52, 0 x0ae80, 0 x0aea3,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_noncontext_pipe_br_sp_top_registers), 8 ));
/* Block: SP Cluster: noncontext Pipeline: A7XX_PIPE_BR Location: uSPTP */
static const u32 gen7_0_0_sp_noncontext_pipe_br_usptp_registers[] = {
0 x0ae00, 0 x0ae00, 0 x0ae02, 0 x0ae04, 0 x0ae06, 0 x0ae09, 0 x0ae0c, 0 x0ae0c,
0 x0ae0f, 0 x0ae0f, 0 x0ae30, 0 x0ae32, 0 x0ae35, 0 x0ae35, 0 x0ae3a, 0 x0ae3b,
0 x0ae3e, 0 x0ae3f, 0 x0ae50, 0 x0ae52,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_noncontext_pipe_br_usptp_registers), 8 ));
/* Block: SP Cluster: noncontext Pipeline: A7XX_PIPE_LPAC Location: HLSQ_STATE */
static const u32 gen7_0_0_sp_noncontext_pipe_lpac_hlsq_state_registers[] = {
0 x0af88, 0 x0af8a,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_noncontext_pipe_lpac_hlsq_state_registers), 8 ));
/* Block: SP Cluster: noncontext Pipeline: A7XX_PIPE_LPAC Location: SP_TOP */
static const u32 gen7_0_0_sp_noncontext_pipe_lpac_sp_top_registers[] = {
0 x0af80, 0 x0af84,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_noncontext_pipe_lpac_sp_top_registers), 8 ));
/* Block: SP Cluster: noncontext Pipeline: A7XX_PIPE_LPAC Location: uSPTP */
static const u32 gen7_0_0_sp_noncontext_pipe_lpac_usptp_registers[] = {
0 x0af80, 0 x0af84, 0 x0af90, 0 x0af92,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_sp_noncontext_pipe_lpac_usptp_registers), 8 ));
/* Block: TPl1 Cluster: noncontext Pipeline: A7XX_PIPE_NONE */
static const u32 gen7_0_0_tpl1_noncontext_pipe_none_registers[] = {
0 x0b600, 0 x0b600, 0 x0b602, 0 x0b602, 0 x0b604, 0 x0b604, 0 x0b608, 0 x0b60c,
0 x0b60f, 0 x0b621, 0 x0b630, 0 x0b633,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_tpl1_noncontext_pipe_none_registers), 8 ));
/* Block: TPl1 Cluster: noncontext Pipeline: A7XX_PIPE_BR */
static const u32 gen7_0_0_tpl1_noncontext_pipe_br_registers[] = {
0 x0b600, 0 x0b600,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_tpl1_noncontext_pipe_br_registers), 8 ));
/* Block: TPl1 Cluster: noncontext Pipeline: A7XX_PIPE_LPAC */
static const u32 gen7_0_0_tpl1_noncontext_pipe_lpac_registers[] = {
0 x0b780, 0 x0b780,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_tpl1_noncontext_pipe_lpac_registers), 8 ));
static const struct gen7_sel_reg gen7_0_0_rb_rac_sel = {
.host_reg = REG_A6XX_RB_RB_SUB_BLOCK_SEL_CNTL_HOST,
.cd_reg = REG_A6XX_RB_RB_SUB_BLOCK_SEL_CNTL_CD,
.val = 0 x0,
};
static const struct gen7_sel_reg gen7_0_0_rb_rbp_sel = {
.host_reg = REG_A6XX_RB_RB_SUB_BLOCK_SEL_CNTL_HOST,
.cd_reg = REG_A6XX_RB_RB_SUB_BLOCK_SEL_CNTL_CD,
.val = 0 x9,
};
static const struct gen7_cluster_registers gen7_0_0_clusters[] = {
{ A7XX_CLUSTER_NONE, A7XX_PIPE_BR, STATE_NON_CONTEXT,
gen7_0_0_noncontext_pipe_br_registers, },
{ A7XX_CLUSTER_NONE, A7XX_PIPE_BV, STATE_NON_CONTEXT,
gen7_0_0_noncontext_pipe_bv_registers, },
{ A7XX_CLUSTER_NONE, A7XX_PIPE_LPAC, STATE_NON_CONTEXT,
gen7_0_0_noncontext_pipe_lpac_registers, },
{ A7XX_CLUSTER_NONE, A7XX_PIPE_BR, STATE_NON_CONTEXT,
gen7_0_0_noncontext_rb_rac_pipe_br_registers, &gen7_0_0_rb_rac_sel, },
{ A7XX_CLUSTER_NONE, A7XX_PIPE_BR, STATE_NON_CONTEXT,
gen7_0_0_noncontext_rb_rbp_pipe_br_registers, &gen7_0_0_rb_rbp_sel, },
{ A7XX_CLUSTER_GRAS, A7XX_PIPE_BR, STATE_FORCE_CTXT_0,
gen7_0_0_gras_cluster_gras_pipe_br_registers, },
{ A7XX_CLUSTER_GRAS, A7XX_PIPE_BV, STATE_FORCE_CTXT_0,
gen7_0_0_gras_cluster_gras_pipe_bv_registers, },
{ A7XX_CLUSTER_GRAS, A7XX_PIPE_BR, STATE_FORCE_CTXT_1,
gen7_0_0_gras_cluster_gras_pipe_br_registers, },
{ A7XX_CLUSTER_GRAS, A7XX_PIPE_BV, STATE_FORCE_CTXT_1,
gen7_0_0_gras_cluster_gras_pipe_bv_registers, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BR, STATE_FORCE_CTXT_0,
gen7_0_0_pc_cluster_fe_pipe_br_registers, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BV, STATE_FORCE_CTXT_0,
gen7_0_0_pc_cluster_fe_pipe_bv_registers, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BR, STATE_FORCE_CTXT_1,
gen7_0_0_pc_cluster_fe_pipe_br_registers, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BV, STATE_FORCE_CTXT_1,
gen7_0_0_pc_cluster_fe_pipe_bv_registers, },
{ A7XX_CLUSTER_PS, A7XX_PIPE_BR, STATE_FORCE_CTXT_0,
gen7_0_0_rb_rac_cluster_ps_pipe_br_registers, &gen7_0_0_rb_rac_sel, },
{ A7XX_CLUSTER_PS, A7XX_PIPE_BR, STATE_FORCE_CTXT_1,
gen7_0_0_rb_rac_cluster_ps_pipe_br_registers, &gen7_0_0_rb_rac_sel, },
{ A7XX_CLUSTER_PS, A7XX_PIPE_BR, STATE_FORCE_CTXT_0,
gen7_0_0_rb_rbp_cluster_ps_pipe_br_registers, &gen7_0_0_rb_rbp_sel, },
{ A7XX_CLUSTER_PS, A7XX_PIPE_BR, STATE_FORCE_CTXT_1,
gen7_0_0_rb_rbp_cluster_ps_pipe_br_registers, &gen7_0_0_rb_rbp_sel, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BR, STATE_FORCE_CTXT_0,
gen7_0_0_vfd_cluster_fe_pipe_br_registers, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BV, STATE_FORCE_CTXT_0,
gen7_0_0_vfd_cluster_fe_pipe_bv_registers, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BR, STATE_FORCE_CTXT_1,
gen7_0_0_vfd_cluster_fe_pipe_br_registers, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BV, STATE_FORCE_CTXT_1,
gen7_0_0_vfd_cluster_fe_pipe_bv_registers, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BR, STATE_FORCE_CTXT_0,
gen7_0_0_vpc_cluster_fe_pipe_br_registers, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BV, STATE_FORCE_CTXT_0,
gen7_0_0_vpc_cluster_fe_pipe_bv_registers, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BR, STATE_FORCE_CTXT_1,
gen7_0_0_vpc_cluster_fe_pipe_br_registers, },
{ A7XX_CLUSTER_FE, A7XX_PIPE_BV, STATE_FORCE_CTXT_1,
gen7_0_0_vpc_cluster_fe_pipe_bv_registers, },
{ A7XX_CLUSTER_PC_VS, A7XX_PIPE_BR, STATE_FORCE_CTXT_0,
gen7_0_0_vpc_cluster_pc_vs_pipe_br_registers, },
{ A7XX_CLUSTER_PC_VS, A7XX_PIPE_BV, STATE_FORCE_CTXT_0,
gen7_0_0_vpc_cluster_pc_vs_pipe_bv_registers, },
{ A7XX_CLUSTER_PC_VS, A7XX_PIPE_BR, STATE_FORCE_CTXT_1,
gen7_0_0_vpc_cluster_pc_vs_pipe_br_registers, },
{ A7XX_CLUSTER_PC_VS, A7XX_PIPE_BV, STATE_FORCE_CTXT_1,
gen7_0_0_vpc_cluster_pc_vs_pipe_bv_registers, },
{ A7XX_CLUSTER_VPC_PS, A7XX_PIPE_BR, STATE_FORCE_CTXT_0,
gen7_0_0_vpc_cluster_vpc_ps_pipe_br_registers, },
{ A7XX_CLUSTER_VPC_PS, A7XX_PIPE_BV, STATE_FORCE_CTXT_0,
gen7_0_0_vpc_cluster_vpc_ps_pipe_bv_registers, },
{ A7XX_CLUSTER_VPC_PS, A7XX_PIPE_BR, STATE_FORCE_CTXT_1,
gen7_0_0_vpc_cluster_vpc_ps_pipe_br_registers, },
{ A7XX_CLUSTER_VPC_PS, A7XX_PIPE_BV, STATE_FORCE_CTXT_1,
gen7_0_0_vpc_cluster_vpc_ps_pipe_bv_registers, },
};
static const struct gen7_sptp_cluster_registers gen7_0_0_sptp_clusters[] = {
{ A7XX_CLUSTER_NONE, A7XX_SP_NCTX_REG, A7XX_PIPE_BR, 0 , A7XX_HLSQ_STATE,
gen7_0_0_sp_noncontext_pipe_br_hlsq_state_registers, 0 xae00 },
{ A7XX_CLUSTER_NONE, A7XX_SP_NCTX_REG, A7XX_PIPE_BR, 0 , A7XX_SP_TOP,
gen7_0_0_sp_noncontext_pipe_br_sp_top_registers, 0 xae00 },
{ A7XX_CLUSTER_NONE, A7XX_SP_NCTX_REG, A7XX_PIPE_BR, 0 , A7XX_USPTP,
gen7_0_0_sp_noncontext_pipe_br_usptp_registers, 0 xae00 },
{ A7XX_CLUSTER_NONE, A7XX_SP_NCTX_REG, A7XX_PIPE_LPAC, 0 , A7XX_HLSQ_STATE,
gen7_0_0_sp_noncontext_pipe_lpac_hlsq_state_registers, 0 xaf80 },
{ A7XX_CLUSTER_NONE, A7XX_SP_NCTX_REG, A7XX_PIPE_LPAC, 0 , A7XX_SP_TOP,
gen7_0_0_sp_noncontext_pipe_lpac_sp_top_registers, 0 xaf80 },
{ A7XX_CLUSTER_NONE, A7XX_SP_NCTX_REG, A7XX_PIPE_LPAC, 0 , A7XX_USPTP,
gen7_0_0_sp_noncontext_pipe_lpac_usptp_registers, 0 xaf80 },
{ A7XX_CLUSTER_NONE, A7XX_TP0_NCTX_REG, A7XX_PIPE_BR, 0 , A7XX_USPTP,
gen7_0_0_tpl1_noncontext_pipe_br_registers, 0 xb600 },
{ A7XX_CLUSTER_NONE, A7XX_TP0_NCTX_REG, A7XX_PIPE_LPAC, 0 , A7XX_USPTP,
gen7_0_0_tpl1_noncontext_pipe_lpac_registers, 0 xb780 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX0_3D_CPS_REG, A7XX_PIPE_BR, 0 , A7XX_HLSQ_STATE,
gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_state_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX0_3D_CPS_REG, A7XX_PIPE_BR, 0 , A7XX_HLSQ_DP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_dp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX0_3D_CPS_REG, A7XX_PIPE_BR, 0 , A7XX_SP_TOP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_sp_top_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX0_3D_CPS_REG, A7XX_PIPE_BR, 0 , A7XX_USPTP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_usptp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX1_3D_CPS_REG, A7XX_PIPE_BR, 1 , A7XX_HLSQ_STATE,
gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_state_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX1_3D_CPS_REG, A7XX_PIPE_BR, 1 , A7XX_HLSQ_DP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_dp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX1_3D_CPS_REG, A7XX_PIPE_BR, 1 , A7XX_SP_TOP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_sp_top_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX1_3D_CPS_REG, A7XX_PIPE_BR, 1 , A7XX_USPTP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_usptp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX2_3D_CPS_REG, A7XX_PIPE_BR, 2 , A7XX_HLSQ_STATE,
gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_state_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX2_3D_CPS_REG, A7XX_PIPE_BR, 2 , A7XX_HLSQ_DP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_dp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX2_3D_CPS_REG, A7XX_PIPE_BR, 2 , A7XX_SP_TOP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_sp_top_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX2_3D_CPS_REG, A7XX_PIPE_BR, 2 , A7XX_USPTP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_usptp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX3_3D_CPS_REG, A7XX_PIPE_BR, 3 , A7XX_HLSQ_STATE,
gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_state_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX3_3D_CPS_REG, A7XX_PIPE_BR, 3 , A7XX_HLSQ_DP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_hlsq_dp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX3_3D_CPS_REG, A7XX_PIPE_BR, 3 , A7XX_SP_TOP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_sp_top_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX3_3D_CPS_REG, A7XX_PIPE_BR, 3 , A7XX_USPTP,
gen7_0_0_sp_cluster_sp_ps_pipe_br_usptp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX0_3D_CPS_REG, A7XX_PIPE_LPAC, 0 , A7XX_HLSQ_STATE,
gen7_0_0_sp_cluster_sp_ps_pipe_lpac_hlsq_state_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX0_3D_CPS_REG, A7XX_PIPE_LPAC, 0 , A7XX_HLSQ_DP,
gen7_0_0_sp_cluster_sp_ps_pipe_lpac_hlsq_dp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX0_3D_CPS_REG, A7XX_PIPE_LPAC, 0 , A7XX_SP_TOP,
gen7_0_0_sp_cluster_sp_ps_pipe_lpac_sp_top_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_SP_CTX0_3D_CPS_REG, A7XX_PIPE_LPAC, 0 , A7XX_USPTP,
gen7_0_0_sp_cluster_sp_ps_pipe_lpac_usptp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX0_3D_CVS_REG, A7XX_PIPE_BR, 0 , A7XX_HLSQ_STATE,
gen7_0_0_sp_cluster_sp_vs_pipe_br_hlsq_state_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX0_3D_CVS_REG, A7XX_PIPE_BV, 0 , A7XX_HLSQ_STATE,
gen7_0_0_sp_cluster_sp_vs_pipe_bv_hlsq_state_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX0_3D_CVS_REG, A7XX_PIPE_BR, 0 , A7XX_SP_TOP,
gen7_0_0_sp_cluster_sp_vs_pipe_br_sp_top_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX0_3D_CVS_REG, A7XX_PIPE_BV, 0 , A7XX_SP_TOP,
gen7_0_0_sp_cluster_sp_vs_pipe_bv_sp_top_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX0_3D_CVS_REG, A7XX_PIPE_BR, 0 , A7XX_USPTP,
gen7_0_0_sp_cluster_sp_vs_pipe_br_usptp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX0_3D_CVS_REG, A7XX_PIPE_BV, 0 , A7XX_USPTP,
gen7_0_0_sp_cluster_sp_vs_pipe_bv_usptp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX1_3D_CVS_REG, A7XX_PIPE_BR, 1 , A7XX_HLSQ_STATE,
gen7_0_0_sp_cluster_sp_vs_pipe_br_hlsq_state_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX1_3D_CVS_REG, A7XX_PIPE_BV, 1 , A7XX_HLSQ_STATE,
gen7_0_0_sp_cluster_sp_vs_pipe_bv_hlsq_state_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX1_3D_CVS_REG, A7XX_PIPE_BR, 1 , A7XX_SP_TOP,
gen7_0_0_sp_cluster_sp_vs_pipe_br_sp_top_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX1_3D_CVS_REG, A7XX_PIPE_BV, 1 , A7XX_SP_TOP,
gen7_0_0_sp_cluster_sp_vs_pipe_bv_sp_top_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX1_3D_CVS_REG, A7XX_PIPE_BR, 1 , A7XX_USPTP,
gen7_0_0_sp_cluster_sp_vs_pipe_br_usptp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_VS, A7XX_SP_CTX1_3D_CVS_REG, A7XX_PIPE_BV, 1 , A7XX_USPTP,
gen7_0_0_sp_cluster_sp_vs_pipe_bv_usptp_registers, 0 xa800 },
{ A7XX_CLUSTER_SP_PS, A7XX_TP0_CTX0_3D_CPS_REG, A7XX_PIPE_BR, 0 , A7XX_USPTP,
gen7_0_0_tpl1_cluster_sp_ps_pipe_br_registers, 0 xb000 },
{ A7XX_CLUSTER_SP_PS, A7XX_TP0_CTX1_3D_CPS_REG, A7XX_PIPE_BR, 1 , A7XX_USPTP,
gen7_0_0_tpl1_cluster_sp_ps_pipe_br_registers, 0 xb000 },
{ A7XX_CLUSTER_SP_PS, A7XX_TP0_CTX2_3D_CPS_REG, A7XX_PIPE_BR, 2 , A7XX_USPTP,
gen7_0_0_tpl1_cluster_sp_ps_pipe_br_registers, 0 xb000 },
{ A7XX_CLUSTER_SP_PS, A7XX_TP0_CTX3_3D_CPS_REG, A7XX_PIPE_BR, 3 , A7XX_USPTP,
gen7_0_0_tpl1_cluster_sp_ps_pipe_br_registers, 0 xb000 },
{ A7XX_CLUSTER_SP_PS, A7XX_TP0_CTX0_3D_CPS_REG, A7XX_PIPE_LPAC, 0 , A7XX_USPTP,
gen7_0_0_tpl1_cluster_sp_ps_pipe_lpac_registers, 0 xb000 },
{ A7XX_CLUSTER_SP_VS, A7XX_TP0_CTX0_3D_CVS_REG, A7XX_PIPE_BR, 0 , A7XX_USPTP,
gen7_0_0_tpl1_cluster_sp_vs_pipe_br_registers, 0 xb000 },
{ A7XX_CLUSTER_SP_VS, A7XX_TP0_CTX0_3D_CVS_REG, A7XX_PIPE_BV, 0 , A7XX_USPTP,
gen7_0_0_tpl1_cluster_sp_vs_pipe_bv_registers, 0 xb000 },
{ A7XX_CLUSTER_SP_VS, A7XX_TP0_CTX1_3D_CVS_REG, A7XX_PIPE_BR, 1 , A7XX_USPTP,
gen7_0_0_tpl1_cluster_sp_vs_pipe_br_registers, 0 xb000 },
{ A7XX_CLUSTER_SP_VS, A7XX_TP0_CTX1_3D_CVS_REG, A7XX_PIPE_BV, 1 , A7XX_USPTP,
gen7_0_0_tpl1_cluster_sp_vs_pipe_bv_registers, 0 xb000 },
};
static const u32 gen7_0_0_rscc_registers[] = {
0 x14000, 0 x14036, 0 x14040, 0 x14042, 0 x14080, 0 x14084, 0 x14089, 0 x1408c,
0 x14091, 0 x14094, 0 x14099, 0 x1409c, 0 x140a1, 0 x140a4, 0 x140a9, 0 x140ac,
0 x14100, 0 x14102, 0 x14114, 0 x14119, 0 x14124, 0 x1412e, 0 x14140, 0 x14143,
0 x14180, 0 x14197, 0 x14340, 0 x14342, 0 x14344, 0 x14347, 0 x1434c, 0 x14373,
0 x143ec, 0 x143ef, 0 x143f4, 0 x1441b, 0 x14494, 0 x14497, 0 x1449c, 0 x144c3,
0 x1453c, 0 x1453f, 0 x14544, 0 x1456b, 0 x145e4, 0 x145e7, 0 x145ec, 0 x14613,
0 x1468c, 0 x1468f, 0 x14694, 0 x146bb, 0 x14734, 0 x14737, 0 x1473c, 0 x14763,
0 x147dc, 0 x147df, 0 x147e4, 0 x1480b, 0 x14884, 0 x14887, 0 x1488c, 0 x148b3,
0 x1492c, 0 x1492f, 0 x14934, 0 x1495b, 0 x14f51, 0 x14f54,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_rscc_registers), 8 ));
static const u32 gen7_0_0_cpr_registers[] = {
0 x26800, 0 x26805, 0 x26808, 0 x2680c, 0 x26814, 0 x26814, 0 x2681c, 0 x2681c,
0 x26820, 0 x26838, 0 x26840, 0 x26840, 0 x26848, 0 x26848, 0 x26850, 0 x26850,
0 x26880, 0 x26898, 0 x26980, 0 x269b0, 0 x269c0, 0 x269c8, 0 x269e0, 0 x269ee,
0 x269fb, 0 x269ff, 0 x26a02, 0 x26a07, 0 x26a09, 0 x26a0b, 0 x26a10, 0 x26b0f,
0 x27440, 0 x27441, 0 x27444, 0 x27444, 0 x27480, 0 x274a2, 0 x274ac, 0 x274ac,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_cpr_registers), 8 ));
static const u32 gen7_0_0_gpucc_registers[] = {
0 x24000, 0 x2400e, 0 x24400, 0 x2440e, 0 x24800, 0 x24805, 0 x24c00, 0 x24cff,
0 x25800, 0 x25804, 0 x25c00, 0 x25c04, 0 x26000, 0 x26004, 0 x26400, 0 x26405,
0 x26414, 0 x2641d, 0 x2642a, 0 x26430, 0 x26432, 0 x26432, 0 x26441, 0 x26455,
0 x26466, 0 x26468, 0 x26478, 0 x2647a, 0 x26489, 0 x2648a, 0 x2649c, 0 x2649e,
0 x264a0, 0 x264a3, 0 x264b3, 0 x264b5, 0 x264c5, 0 x264c7, 0 x264d6, 0 x264d8,
0 x264e8, 0 x264e9, 0 x264f9, 0 x264fc, 0 x2650b, 0 x2650c, 0 x2651c, 0 x2651e,
0 x26540, 0 x26570, 0 x26600, 0 x26616, 0 x26620, 0 x2662d,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_gpucc_registers), 8 ));
static const u32 gen7_0_0_cx_misc_registers[] = {
0 x27800, 0 x27800, 0 x27810, 0 x27814, 0 x27820, 0 x27824, 0 x27832, 0 x27857,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_cx_misc_registers), 8 ));
static const u32 gen7_0_0_dpm_registers[] = {
0 x1aa00, 0 x1aa06, 0 x1aa09, 0 x1aa0a, 0 x1aa0c, 0 x1aa0d, 0 x1aa0f, 0 x1aa12,
0 x1aa14, 0 x1aa47, 0 x1aa50, 0 x1aa51,
UINT_MAX, UINT_MAX,
};
static_assert(IS_ALIGNED(sizeof (gen7_0_0_dpm_registers), 8 ));
static const struct gen7_reg_list gen7_0_0_reg_list[] = {
{ gen7_0_0_gpu_registers, NULL },
{ gen7_0_0_cx_misc_registers, NULL },
{ gen7_0_0_dpm_registers, NULL },
{ NULL, NULL },
};
static const u32 *gen7_0_0_external_core_regs[] = {
gen7_0_0_gpucc_registers,
gen7_0_0_cpr_registers,
};
#endif /*_ADRENO_GEN7_0_0_SNAPSHOT_H */
Messung V0.5 in Prozent C=94 H=99 G=96
¤ Dauer der Verarbeitung: 0.14 Sekunden
(vorverarbeitet am 2026-06-08)
¤
*© Formatika GbR, Deutschland