162306a36Sopenharmony_ci/* 262306a36Sopenharmony_ci * Copyright 2012-2016 Advanced Micro Devices, Inc. 362306a36Sopenharmony_ci * 462306a36Sopenharmony_ci * Permission is hereby granted, free of charge, to any person obtaining a 562306a36Sopenharmony_ci * copy of this software and associated documentation files (the "Software"), 662306a36Sopenharmony_ci * to deal in the Software without restriction, including without limitation 762306a36Sopenharmony_ci * the rights to use, copy, modify, merge, publish, distribute, sublicense, 862306a36Sopenharmony_ci * and/or sell copies of the Software, and to permit persons to whom the 962306a36Sopenharmony_ci * Software is furnished to do so, subject to the following conditions: 1062306a36Sopenharmony_ci * 1162306a36Sopenharmony_ci * The above copyright notice and this permission notice shall be included in 1262306a36Sopenharmony_ci * all copies or substantial portions of the Software. 1362306a36Sopenharmony_ci * 1462306a36Sopenharmony_ci * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 1562306a36Sopenharmony_ci * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 1662306a36Sopenharmony_ci * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 1762306a36Sopenharmony_ci * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR 1862306a36Sopenharmony_ci * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 1962306a36Sopenharmony_ci * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 2062306a36Sopenharmony_ci * OTHER DEALINGS IN THE SOFTWARE. 2162306a36Sopenharmony_ci * 2262306a36Sopenharmony_ci */ 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci#ifndef V9_STRUCTS_H_ 2562306a36Sopenharmony_ci#define V9_STRUCTS_H_ 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_cistruct v9_sdma_mqd { 2862306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_cntl; 2962306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_base; 3062306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_base_hi; 3162306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_rptr; 3262306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_rptr_hi; 3362306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_wptr; 3462306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_wptr_hi; 3562306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_wptr_poll_cntl; 3662306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_rptr_addr_hi; 3762306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_rptr_addr_lo; 3862306a36Sopenharmony_ci uint32_t sdmax_rlcx_ib_cntl; 3962306a36Sopenharmony_ci uint32_t sdmax_rlcx_ib_rptr; 4062306a36Sopenharmony_ci uint32_t sdmax_rlcx_ib_offset; 4162306a36Sopenharmony_ci uint32_t sdmax_rlcx_ib_base_lo; 4262306a36Sopenharmony_ci uint32_t sdmax_rlcx_ib_base_hi; 4362306a36Sopenharmony_ci uint32_t sdmax_rlcx_ib_size; 4462306a36Sopenharmony_ci uint32_t sdmax_rlcx_skip_cntl; 4562306a36Sopenharmony_ci uint32_t sdmax_rlcx_context_status; 4662306a36Sopenharmony_ci uint32_t sdmax_rlcx_doorbell; 4762306a36Sopenharmony_ci uint32_t sdmax_rlcx_status; 4862306a36Sopenharmony_ci uint32_t sdmax_rlcx_doorbell_log; 4962306a36Sopenharmony_ci uint32_t sdmax_rlcx_watermark; 5062306a36Sopenharmony_ci uint32_t sdmax_rlcx_doorbell_offset; 5162306a36Sopenharmony_ci uint32_t sdmax_rlcx_csa_addr_lo; 5262306a36Sopenharmony_ci uint32_t sdmax_rlcx_csa_addr_hi; 5362306a36Sopenharmony_ci uint32_t sdmax_rlcx_ib_sub_remain; 5462306a36Sopenharmony_ci uint32_t sdmax_rlcx_preempt; 5562306a36Sopenharmony_ci uint32_t sdmax_rlcx_dummy_reg; 5662306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_wptr_poll_addr_hi; 5762306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_wptr_poll_addr_lo; 5862306a36Sopenharmony_ci uint32_t sdmax_rlcx_rb_aql_cntl; 5962306a36Sopenharmony_ci uint32_t sdmax_rlcx_minor_ptr_update; 6062306a36Sopenharmony_ci uint32_t sdmax_rlcx_midcmd_data0; 6162306a36Sopenharmony_ci uint32_t sdmax_rlcx_midcmd_data1; 6262306a36Sopenharmony_ci uint32_t sdmax_rlcx_midcmd_data2; 6362306a36Sopenharmony_ci uint32_t sdmax_rlcx_midcmd_data3; 6462306a36Sopenharmony_ci uint32_t sdmax_rlcx_midcmd_data4; 6562306a36Sopenharmony_ci uint32_t sdmax_rlcx_midcmd_data5; 6662306a36Sopenharmony_ci uint32_t sdmax_rlcx_midcmd_data6; 6762306a36Sopenharmony_ci uint32_t sdmax_rlcx_midcmd_data7; 6862306a36Sopenharmony_ci uint32_t sdmax_rlcx_midcmd_data8; 6962306a36Sopenharmony_ci uint32_t sdmax_rlcx_midcmd_cntl; 7062306a36Sopenharmony_ci uint32_t reserved_42; 7162306a36Sopenharmony_ci uint32_t reserved_43; 7262306a36Sopenharmony_ci uint32_t reserved_44; 7362306a36Sopenharmony_ci uint32_t reserved_45; 7462306a36Sopenharmony_ci uint32_t reserved_46; 7562306a36Sopenharmony_ci uint32_t reserved_47; 7662306a36Sopenharmony_ci uint32_t reserved_48; 7762306a36Sopenharmony_ci uint32_t reserved_49; 7862306a36Sopenharmony_ci uint32_t reserved_50; 7962306a36Sopenharmony_ci uint32_t reserved_51; 8062306a36Sopenharmony_ci uint32_t reserved_52; 8162306a36Sopenharmony_ci uint32_t reserved_53; 8262306a36Sopenharmony_ci uint32_t reserved_54; 8362306a36Sopenharmony_ci uint32_t reserved_55; 8462306a36Sopenharmony_ci uint32_t reserved_56; 8562306a36Sopenharmony_ci uint32_t reserved_57; 8662306a36Sopenharmony_ci uint32_t reserved_58; 8762306a36Sopenharmony_ci uint32_t reserved_59; 8862306a36Sopenharmony_ci uint32_t reserved_60; 8962306a36Sopenharmony_ci uint32_t reserved_61; 9062306a36Sopenharmony_ci uint32_t reserved_62; 9162306a36Sopenharmony_ci uint32_t reserved_63; 9262306a36Sopenharmony_ci uint32_t reserved_64; 9362306a36Sopenharmony_ci uint32_t reserved_65; 9462306a36Sopenharmony_ci uint32_t reserved_66; 9562306a36Sopenharmony_ci uint32_t reserved_67; 9662306a36Sopenharmony_ci uint32_t reserved_68; 9762306a36Sopenharmony_ci uint32_t reserved_69; 9862306a36Sopenharmony_ci uint32_t reserved_70; 9962306a36Sopenharmony_ci uint32_t reserved_71; 10062306a36Sopenharmony_ci uint32_t reserved_72; 10162306a36Sopenharmony_ci uint32_t reserved_73; 10262306a36Sopenharmony_ci uint32_t reserved_74; 10362306a36Sopenharmony_ci uint32_t reserved_75; 10462306a36Sopenharmony_ci uint32_t reserved_76; 10562306a36Sopenharmony_ci uint32_t reserved_77; 10662306a36Sopenharmony_ci uint32_t reserved_78; 10762306a36Sopenharmony_ci uint32_t reserved_79; 10862306a36Sopenharmony_ci uint32_t reserved_80; 10962306a36Sopenharmony_ci uint32_t reserved_81; 11062306a36Sopenharmony_ci uint32_t reserved_82; 11162306a36Sopenharmony_ci uint32_t reserved_83; 11262306a36Sopenharmony_ci uint32_t reserved_84; 11362306a36Sopenharmony_ci uint32_t reserved_85; 11462306a36Sopenharmony_ci uint32_t reserved_86; 11562306a36Sopenharmony_ci uint32_t reserved_87; 11662306a36Sopenharmony_ci uint32_t reserved_88; 11762306a36Sopenharmony_ci uint32_t reserved_89; 11862306a36Sopenharmony_ci uint32_t reserved_90; 11962306a36Sopenharmony_ci uint32_t reserved_91; 12062306a36Sopenharmony_ci uint32_t reserved_92; 12162306a36Sopenharmony_ci uint32_t reserved_93; 12262306a36Sopenharmony_ci uint32_t reserved_94; 12362306a36Sopenharmony_ci uint32_t reserved_95; 12462306a36Sopenharmony_ci uint32_t reserved_96; 12562306a36Sopenharmony_ci uint32_t reserved_97; 12662306a36Sopenharmony_ci uint32_t reserved_98; 12762306a36Sopenharmony_ci uint32_t reserved_99; 12862306a36Sopenharmony_ci uint32_t reserved_100; 12962306a36Sopenharmony_ci uint32_t reserved_101; 13062306a36Sopenharmony_ci uint32_t reserved_102; 13162306a36Sopenharmony_ci uint32_t reserved_103; 13262306a36Sopenharmony_ci uint32_t reserved_104; 13362306a36Sopenharmony_ci uint32_t reserved_105; 13462306a36Sopenharmony_ci uint32_t reserved_106; 13562306a36Sopenharmony_ci uint32_t reserved_107; 13662306a36Sopenharmony_ci uint32_t reserved_108; 13762306a36Sopenharmony_ci uint32_t reserved_109; 13862306a36Sopenharmony_ci uint32_t reserved_110; 13962306a36Sopenharmony_ci uint32_t reserved_111; 14062306a36Sopenharmony_ci uint32_t reserved_112; 14162306a36Sopenharmony_ci uint32_t reserved_113; 14262306a36Sopenharmony_ci uint32_t reserved_114; 14362306a36Sopenharmony_ci uint32_t reserved_115; 14462306a36Sopenharmony_ci uint32_t reserved_116; 14562306a36Sopenharmony_ci uint32_t reserved_117; 14662306a36Sopenharmony_ci uint32_t reserved_118; 14762306a36Sopenharmony_ci uint32_t reserved_119; 14862306a36Sopenharmony_ci uint32_t reserved_120; 14962306a36Sopenharmony_ci uint32_t reserved_121; 15062306a36Sopenharmony_ci uint32_t reserved_122; 15162306a36Sopenharmony_ci uint32_t reserved_123; 15262306a36Sopenharmony_ci uint32_t reserved_124; 15362306a36Sopenharmony_ci uint32_t reserved_125; 15462306a36Sopenharmony_ci /* reserved_126,127: repurposed for driver-internal use */ 15562306a36Sopenharmony_ci uint32_t sdma_engine_id; 15662306a36Sopenharmony_ci uint32_t sdma_queue_id; 15762306a36Sopenharmony_ci}; 15862306a36Sopenharmony_ci 15962306a36Sopenharmony_cistruct v9_mqd { 16062306a36Sopenharmony_ci uint32_t header; 16162306a36Sopenharmony_ci uint32_t compute_dispatch_initiator; 16262306a36Sopenharmony_ci uint32_t compute_dim_x; 16362306a36Sopenharmony_ci uint32_t compute_dim_y; 16462306a36Sopenharmony_ci uint32_t compute_dim_z; 16562306a36Sopenharmony_ci uint32_t compute_start_x; 16662306a36Sopenharmony_ci uint32_t compute_start_y; 16762306a36Sopenharmony_ci uint32_t compute_start_z; 16862306a36Sopenharmony_ci uint32_t compute_num_thread_x; 16962306a36Sopenharmony_ci uint32_t compute_num_thread_y; 17062306a36Sopenharmony_ci uint32_t compute_num_thread_z; 17162306a36Sopenharmony_ci uint32_t compute_pipelinestat_enable; 17262306a36Sopenharmony_ci uint32_t compute_perfcount_enable; 17362306a36Sopenharmony_ci uint32_t compute_pgm_lo; 17462306a36Sopenharmony_ci uint32_t compute_pgm_hi; 17562306a36Sopenharmony_ci uint32_t compute_tba_lo; 17662306a36Sopenharmony_ci uint32_t compute_tba_hi; 17762306a36Sopenharmony_ci uint32_t compute_tma_lo; 17862306a36Sopenharmony_ci uint32_t compute_tma_hi; 17962306a36Sopenharmony_ci uint32_t compute_pgm_rsrc1; 18062306a36Sopenharmony_ci uint32_t compute_pgm_rsrc2; 18162306a36Sopenharmony_ci uint32_t compute_vmid; 18262306a36Sopenharmony_ci uint32_t compute_resource_limits; 18362306a36Sopenharmony_ci uint32_t compute_static_thread_mgmt_se0; 18462306a36Sopenharmony_ci uint32_t compute_static_thread_mgmt_se1; 18562306a36Sopenharmony_ci uint32_t compute_tmpring_size; 18662306a36Sopenharmony_ci uint32_t compute_static_thread_mgmt_se2; 18762306a36Sopenharmony_ci uint32_t compute_static_thread_mgmt_se3; 18862306a36Sopenharmony_ci uint32_t compute_restart_x; 18962306a36Sopenharmony_ci uint32_t compute_restart_y; 19062306a36Sopenharmony_ci uint32_t compute_restart_z; 19162306a36Sopenharmony_ci uint32_t compute_thread_trace_enable; 19262306a36Sopenharmony_ci uint32_t compute_misc_reserved; 19362306a36Sopenharmony_ci uint32_t compute_dispatch_id; 19462306a36Sopenharmony_ci uint32_t compute_threadgroup_id; 19562306a36Sopenharmony_ci uint32_t compute_relaunch; 19662306a36Sopenharmony_ci uint32_t compute_wave_restore_addr_lo; 19762306a36Sopenharmony_ci uint32_t compute_wave_restore_addr_hi; 19862306a36Sopenharmony_ci uint32_t compute_wave_restore_control; 19962306a36Sopenharmony_ci union { 20062306a36Sopenharmony_ci struct { 20162306a36Sopenharmony_ci uint32_t compute_static_thread_mgmt_se4; 20262306a36Sopenharmony_ci uint32_t compute_static_thread_mgmt_se5; 20362306a36Sopenharmony_ci uint32_t compute_static_thread_mgmt_se6; 20462306a36Sopenharmony_ci uint32_t compute_static_thread_mgmt_se7; 20562306a36Sopenharmony_ci }; 20662306a36Sopenharmony_ci struct { 20762306a36Sopenharmony_ci uint32_t compute_current_logic_xcc_id; // offset: 39 (0x27) 20862306a36Sopenharmony_ci uint32_t compute_restart_cg_tg_id; // offset: 40 (0x28) 20962306a36Sopenharmony_ci uint32_t compute_tg_chunk_size; // offset: 41 (0x29) 21062306a36Sopenharmony_ci uint32_t compute_restore_tg_chunk_size; // offset: 42 (0x2A) 21162306a36Sopenharmony_ci }; 21262306a36Sopenharmony_ci }; 21362306a36Sopenharmony_ci uint32_t reserved_43; 21462306a36Sopenharmony_ci uint32_t reserved_44; 21562306a36Sopenharmony_ci uint32_t reserved_45; 21662306a36Sopenharmony_ci uint32_t reserved_46; 21762306a36Sopenharmony_ci uint32_t reserved_47; 21862306a36Sopenharmony_ci uint32_t reserved_48; 21962306a36Sopenharmony_ci uint32_t reserved_49; 22062306a36Sopenharmony_ci uint32_t reserved_50; 22162306a36Sopenharmony_ci uint32_t reserved_51; 22262306a36Sopenharmony_ci uint32_t reserved_52; 22362306a36Sopenharmony_ci uint32_t reserved_53; 22462306a36Sopenharmony_ci uint32_t reserved_54; 22562306a36Sopenharmony_ci uint32_t reserved_55; 22662306a36Sopenharmony_ci uint32_t reserved_56; 22762306a36Sopenharmony_ci uint32_t reserved_57; 22862306a36Sopenharmony_ci uint32_t reserved_58; 22962306a36Sopenharmony_ci uint32_t reserved_59; 23062306a36Sopenharmony_ci uint32_t reserved_60; 23162306a36Sopenharmony_ci uint32_t reserved_61; 23262306a36Sopenharmony_ci uint32_t reserved_62; 23362306a36Sopenharmony_ci uint32_t reserved_63; 23462306a36Sopenharmony_ci uint32_t reserved_64; 23562306a36Sopenharmony_ci uint32_t compute_user_data_0; 23662306a36Sopenharmony_ci uint32_t compute_user_data_1; 23762306a36Sopenharmony_ci uint32_t compute_user_data_2; 23862306a36Sopenharmony_ci uint32_t compute_user_data_3; 23962306a36Sopenharmony_ci uint32_t compute_user_data_4; 24062306a36Sopenharmony_ci uint32_t compute_user_data_5; 24162306a36Sopenharmony_ci uint32_t compute_user_data_6; 24262306a36Sopenharmony_ci uint32_t compute_user_data_7; 24362306a36Sopenharmony_ci uint32_t compute_user_data_8; 24462306a36Sopenharmony_ci uint32_t compute_user_data_9; 24562306a36Sopenharmony_ci uint32_t compute_user_data_10; 24662306a36Sopenharmony_ci uint32_t compute_user_data_11; 24762306a36Sopenharmony_ci uint32_t compute_user_data_12; 24862306a36Sopenharmony_ci uint32_t compute_user_data_13; 24962306a36Sopenharmony_ci uint32_t compute_user_data_14; 25062306a36Sopenharmony_ci uint32_t compute_user_data_15; 25162306a36Sopenharmony_ci uint32_t cp_compute_csinvoc_count_lo; 25262306a36Sopenharmony_ci uint32_t cp_compute_csinvoc_count_hi; 25362306a36Sopenharmony_ci uint32_t reserved_83; 25462306a36Sopenharmony_ci uint32_t reserved_84; 25562306a36Sopenharmony_ci uint32_t reserved_85; 25662306a36Sopenharmony_ci uint32_t cp_mqd_query_time_lo; 25762306a36Sopenharmony_ci uint32_t cp_mqd_query_time_hi; 25862306a36Sopenharmony_ci uint32_t cp_mqd_connect_start_time_lo; 25962306a36Sopenharmony_ci uint32_t cp_mqd_connect_start_time_hi; 26062306a36Sopenharmony_ci uint32_t cp_mqd_connect_end_time_lo; 26162306a36Sopenharmony_ci uint32_t cp_mqd_connect_end_time_hi; 26262306a36Sopenharmony_ci uint32_t cp_mqd_connect_end_wf_count; 26362306a36Sopenharmony_ci uint32_t cp_mqd_connect_end_pq_rptr; 26462306a36Sopenharmony_ci uint32_t cp_mqd_connect_end_pq_wptr; 26562306a36Sopenharmony_ci uint32_t cp_mqd_connect_end_ib_rptr; 26662306a36Sopenharmony_ci uint32_t cp_mqd_readindex_lo; 26762306a36Sopenharmony_ci uint32_t cp_mqd_readindex_hi; 26862306a36Sopenharmony_ci uint32_t cp_mqd_save_start_time_lo; 26962306a36Sopenharmony_ci uint32_t cp_mqd_save_start_time_hi; 27062306a36Sopenharmony_ci uint32_t cp_mqd_save_end_time_lo; 27162306a36Sopenharmony_ci uint32_t cp_mqd_save_end_time_hi; 27262306a36Sopenharmony_ci uint32_t cp_mqd_restore_start_time_lo; 27362306a36Sopenharmony_ci uint32_t cp_mqd_restore_start_time_hi; 27462306a36Sopenharmony_ci uint32_t cp_mqd_restore_end_time_lo; 27562306a36Sopenharmony_ci uint32_t cp_mqd_restore_end_time_hi; 27662306a36Sopenharmony_ci uint32_t disable_queue; 27762306a36Sopenharmony_ci uint32_t reserved_107; 27862306a36Sopenharmony_ci uint32_t gds_cs_ctxsw_cnt0; 27962306a36Sopenharmony_ci uint32_t gds_cs_ctxsw_cnt1; 28062306a36Sopenharmony_ci uint32_t gds_cs_ctxsw_cnt2; 28162306a36Sopenharmony_ci uint32_t gds_cs_ctxsw_cnt3; 28262306a36Sopenharmony_ci uint32_t reserved_112; 28362306a36Sopenharmony_ci uint32_t reserved_113; 28462306a36Sopenharmony_ci uint32_t cp_pq_exe_status_lo; 28562306a36Sopenharmony_ci uint32_t cp_pq_exe_status_hi; 28662306a36Sopenharmony_ci uint32_t cp_packet_id_lo; 28762306a36Sopenharmony_ci uint32_t cp_packet_id_hi; 28862306a36Sopenharmony_ci uint32_t cp_packet_exe_status_lo; 28962306a36Sopenharmony_ci uint32_t cp_packet_exe_status_hi; 29062306a36Sopenharmony_ci uint32_t gds_save_base_addr_lo; 29162306a36Sopenharmony_ci uint32_t gds_save_base_addr_hi; 29262306a36Sopenharmony_ci uint32_t gds_save_mask_lo; 29362306a36Sopenharmony_ci uint32_t gds_save_mask_hi; 29462306a36Sopenharmony_ci uint32_t ctx_save_base_addr_lo; 29562306a36Sopenharmony_ci uint32_t ctx_save_base_addr_hi; 29662306a36Sopenharmony_ci uint32_t dynamic_cu_mask_addr_lo; 29762306a36Sopenharmony_ci uint32_t dynamic_cu_mask_addr_hi; 29862306a36Sopenharmony_ci uint32_t cp_mqd_base_addr_lo; 29962306a36Sopenharmony_ci uint32_t cp_mqd_base_addr_hi; 30062306a36Sopenharmony_ci uint32_t cp_hqd_active; 30162306a36Sopenharmony_ci uint32_t cp_hqd_vmid; 30262306a36Sopenharmony_ci uint32_t cp_hqd_persistent_state; 30362306a36Sopenharmony_ci uint32_t cp_hqd_pipe_priority; 30462306a36Sopenharmony_ci uint32_t cp_hqd_queue_priority; 30562306a36Sopenharmony_ci uint32_t cp_hqd_quantum; 30662306a36Sopenharmony_ci uint32_t cp_hqd_pq_base_lo; 30762306a36Sopenharmony_ci uint32_t cp_hqd_pq_base_hi; 30862306a36Sopenharmony_ci uint32_t cp_hqd_pq_rptr; 30962306a36Sopenharmony_ci uint32_t cp_hqd_pq_rptr_report_addr_lo; 31062306a36Sopenharmony_ci uint32_t cp_hqd_pq_rptr_report_addr_hi; 31162306a36Sopenharmony_ci uint32_t cp_hqd_pq_wptr_poll_addr_lo; 31262306a36Sopenharmony_ci uint32_t cp_hqd_pq_wptr_poll_addr_hi; 31362306a36Sopenharmony_ci uint32_t cp_hqd_pq_doorbell_control; 31462306a36Sopenharmony_ci uint32_t reserved_144; 31562306a36Sopenharmony_ci uint32_t cp_hqd_pq_control; 31662306a36Sopenharmony_ci uint32_t cp_hqd_ib_base_addr_lo; 31762306a36Sopenharmony_ci uint32_t cp_hqd_ib_base_addr_hi; 31862306a36Sopenharmony_ci uint32_t cp_hqd_ib_rptr; 31962306a36Sopenharmony_ci uint32_t cp_hqd_ib_control; 32062306a36Sopenharmony_ci uint32_t cp_hqd_iq_timer; 32162306a36Sopenharmony_ci uint32_t cp_hqd_iq_rptr; 32262306a36Sopenharmony_ci uint32_t cp_hqd_dequeue_request; 32362306a36Sopenharmony_ci uint32_t cp_hqd_dma_offload; 32462306a36Sopenharmony_ci uint32_t cp_hqd_sema_cmd; 32562306a36Sopenharmony_ci uint32_t cp_hqd_msg_type; 32662306a36Sopenharmony_ci uint32_t cp_hqd_atomic0_preop_lo; 32762306a36Sopenharmony_ci uint32_t cp_hqd_atomic0_preop_hi; 32862306a36Sopenharmony_ci uint32_t cp_hqd_atomic1_preop_lo; 32962306a36Sopenharmony_ci uint32_t cp_hqd_atomic1_preop_hi; 33062306a36Sopenharmony_ci uint32_t cp_hqd_hq_status0; 33162306a36Sopenharmony_ci uint32_t cp_hqd_hq_control0; 33262306a36Sopenharmony_ci uint32_t cp_mqd_control; 33362306a36Sopenharmony_ci uint32_t cp_hqd_hq_status1; 33462306a36Sopenharmony_ci uint32_t cp_hqd_hq_control1; 33562306a36Sopenharmony_ci uint32_t cp_hqd_eop_base_addr_lo; 33662306a36Sopenharmony_ci uint32_t cp_hqd_eop_base_addr_hi; 33762306a36Sopenharmony_ci uint32_t cp_hqd_eop_control; 33862306a36Sopenharmony_ci uint32_t cp_hqd_eop_rptr; 33962306a36Sopenharmony_ci uint32_t cp_hqd_eop_wptr; 34062306a36Sopenharmony_ci uint32_t cp_hqd_eop_done_events; 34162306a36Sopenharmony_ci uint32_t cp_hqd_ctx_save_base_addr_lo; 34262306a36Sopenharmony_ci uint32_t cp_hqd_ctx_save_base_addr_hi; 34362306a36Sopenharmony_ci uint32_t cp_hqd_ctx_save_control; 34462306a36Sopenharmony_ci uint32_t cp_hqd_cntl_stack_offset; 34562306a36Sopenharmony_ci uint32_t cp_hqd_cntl_stack_size; 34662306a36Sopenharmony_ci uint32_t cp_hqd_wg_state_offset; 34762306a36Sopenharmony_ci uint32_t cp_hqd_ctx_save_size; 34862306a36Sopenharmony_ci uint32_t cp_hqd_gds_resource_state; 34962306a36Sopenharmony_ci uint32_t cp_hqd_error; 35062306a36Sopenharmony_ci uint32_t cp_hqd_eop_wptr_mem; 35162306a36Sopenharmony_ci uint32_t cp_hqd_aql_control; 35262306a36Sopenharmony_ci uint32_t cp_hqd_pq_wptr_lo; 35362306a36Sopenharmony_ci uint32_t cp_hqd_pq_wptr_hi; 35462306a36Sopenharmony_ci uint32_t reserved_184; 35562306a36Sopenharmony_ci uint32_t reserved_185; 35662306a36Sopenharmony_ci uint32_t reserved_186; 35762306a36Sopenharmony_ci uint32_t reserved_187; 35862306a36Sopenharmony_ci uint32_t reserved_188; 35962306a36Sopenharmony_ci uint32_t reserved_189; 36062306a36Sopenharmony_ci uint32_t reserved_190; 36162306a36Sopenharmony_ci uint32_t reserved_191; 36262306a36Sopenharmony_ci uint32_t iqtimer_pkt_header; 36362306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw0; 36462306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw1; 36562306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw2; 36662306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw3; 36762306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw4; 36862306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw5; 36962306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw6; 37062306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw7; 37162306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw8; 37262306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw9; 37362306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw10; 37462306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw11; 37562306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw12; 37662306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw13; 37762306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw14; 37862306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw15; 37962306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw16; 38062306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw17; 38162306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw18; 38262306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw19; 38362306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw20; 38462306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw21; 38562306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw22; 38662306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw23; 38762306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw24; 38862306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw25; 38962306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw26; 39062306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw27; 39162306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw28; 39262306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw29; 39362306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw30; 39462306a36Sopenharmony_ci uint32_t iqtimer_pkt_dw31; 39562306a36Sopenharmony_ci union { 39662306a36Sopenharmony_ci struct { 39762306a36Sopenharmony_ci uint32_t reserved_225; 39862306a36Sopenharmony_ci uint32_t reserved_226; 39962306a36Sopenharmony_ci }; 40062306a36Sopenharmony_ci struct { 40162306a36Sopenharmony_ci uint32_t pm4_target_xcc_in_xcp; // offset: 225 (0xE1) 40262306a36Sopenharmony_ci uint32_t cp_mqd_stride_size; // offset: 226 (0xE2) 40362306a36Sopenharmony_ci }; 40462306a36Sopenharmony_ci }; 40562306a36Sopenharmony_ci uint32_t reserved_227; 40662306a36Sopenharmony_ci uint32_t set_resources_header; 40762306a36Sopenharmony_ci uint32_t set_resources_dw1; 40862306a36Sopenharmony_ci uint32_t set_resources_dw2; 40962306a36Sopenharmony_ci uint32_t set_resources_dw3; 41062306a36Sopenharmony_ci uint32_t set_resources_dw4; 41162306a36Sopenharmony_ci uint32_t set_resources_dw5; 41262306a36Sopenharmony_ci uint32_t set_resources_dw6; 41362306a36Sopenharmony_ci uint32_t set_resources_dw7; 41462306a36Sopenharmony_ci uint32_t reserved_236; 41562306a36Sopenharmony_ci uint32_t reserved_237; 41662306a36Sopenharmony_ci uint32_t reserved_238; 41762306a36Sopenharmony_ci uint32_t reserved_239; 41862306a36Sopenharmony_ci uint32_t queue_doorbell_id0; 41962306a36Sopenharmony_ci uint32_t queue_doorbell_id1; 42062306a36Sopenharmony_ci uint32_t queue_doorbell_id2; 42162306a36Sopenharmony_ci uint32_t queue_doorbell_id3; 42262306a36Sopenharmony_ci uint32_t queue_doorbell_id4; 42362306a36Sopenharmony_ci uint32_t queue_doorbell_id5; 42462306a36Sopenharmony_ci uint32_t queue_doorbell_id6; 42562306a36Sopenharmony_ci uint32_t queue_doorbell_id7; 42662306a36Sopenharmony_ci uint32_t queue_doorbell_id8; 42762306a36Sopenharmony_ci uint32_t queue_doorbell_id9; 42862306a36Sopenharmony_ci uint32_t queue_doorbell_id10; 42962306a36Sopenharmony_ci uint32_t queue_doorbell_id11; 43062306a36Sopenharmony_ci uint32_t queue_doorbell_id12; 43162306a36Sopenharmony_ci uint32_t queue_doorbell_id13; 43262306a36Sopenharmony_ci uint32_t queue_doorbell_id14; 43362306a36Sopenharmony_ci uint32_t queue_doorbell_id15; 43462306a36Sopenharmony_ci uint32_t reserved_256; 43562306a36Sopenharmony_ci uint32_t reserved_257; 43662306a36Sopenharmony_ci uint32_t reserved_258; 43762306a36Sopenharmony_ci uint32_t reserved_259; 43862306a36Sopenharmony_ci uint32_t reserved_260; 43962306a36Sopenharmony_ci uint32_t reserved_261; 44062306a36Sopenharmony_ci uint32_t reserved_262; 44162306a36Sopenharmony_ci uint32_t reserved_263; 44262306a36Sopenharmony_ci uint32_t reserved_264; 44362306a36Sopenharmony_ci uint32_t reserved_265; 44462306a36Sopenharmony_ci uint32_t reserved_266; 44562306a36Sopenharmony_ci uint32_t reserved_267; 44662306a36Sopenharmony_ci uint32_t reserved_268; 44762306a36Sopenharmony_ci uint32_t reserved_269; 44862306a36Sopenharmony_ci uint32_t reserved_270; 44962306a36Sopenharmony_ci uint32_t reserved_271; 45062306a36Sopenharmony_ci uint32_t reserved_272; 45162306a36Sopenharmony_ci uint32_t reserved_273; 45262306a36Sopenharmony_ci uint32_t reserved_274; 45362306a36Sopenharmony_ci uint32_t reserved_275; 45462306a36Sopenharmony_ci uint32_t reserved_276; 45562306a36Sopenharmony_ci uint32_t reserved_277; 45662306a36Sopenharmony_ci uint32_t reserved_278; 45762306a36Sopenharmony_ci uint32_t reserved_279; 45862306a36Sopenharmony_ci uint32_t reserved_280; 45962306a36Sopenharmony_ci uint32_t reserved_281; 46062306a36Sopenharmony_ci uint32_t reserved_282; 46162306a36Sopenharmony_ci uint32_t reserved_283; 46262306a36Sopenharmony_ci uint32_t reserved_284; 46362306a36Sopenharmony_ci uint32_t reserved_285; 46462306a36Sopenharmony_ci uint32_t reserved_286; 46562306a36Sopenharmony_ci uint32_t reserved_287; 46662306a36Sopenharmony_ci uint32_t reserved_288; 46762306a36Sopenharmony_ci uint32_t reserved_289; 46862306a36Sopenharmony_ci uint32_t reserved_290; 46962306a36Sopenharmony_ci uint32_t reserved_291; 47062306a36Sopenharmony_ci uint32_t reserved_292; 47162306a36Sopenharmony_ci uint32_t reserved_293; 47262306a36Sopenharmony_ci uint32_t reserved_294; 47362306a36Sopenharmony_ci uint32_t reserved_295; 47462306a36Sopenharmony_ci uint32_t reserved_296; 47562306a36Sopenharmony_ci uint32_t reserved_297; 47662306a36Sopenharmony_ci uint32_t reserved_298; 47762306a36Sopenharmony_ci uint32_t reserved_299; 47862306a36Sopenharmony_ci uint32_t reserved_300; 47962306a36Sopenharmony_ci uint32_t reserved_301; 48062306a36Sopenharmony_ci uint32_t reserved_302; 48162306a36Sopenharmony_ci uint32_t reserved_303; 48262306a36Sopenharmony_ci uint32_t reserved_304; 48362306a36Sopenharmony_ci uint32_t reserved_305; 48462306a36Sopenharmony_ci uint32_t reserved_306; 48562306a36Sopenharmony_ci uint32_t reserved_307; 48662306a36Sopenharmony_ci uint32_t reserved_308; 48762306a36Sopenharmony_ci uint32_t reserved_309; 48862306a36Sopenharmony_ci uint32_t reserved_310; 48962306a36Sopenharmony_ci uint32_t reserved_311; 49062306a36Sopenharmony_ci uint32_t reserved_312; 49162306a36Sopenharmony_ci uint32_t reserved_313; 49262306a36Sopenharmony_ci uint32_t reserved_314; 49362306a36Sopenharmony_ci uint32_t reserved_315; 49462306a36Sopenharmony_ci uint32_t reserved_316; 49562306a36Sopenharmony_ci uint32_t reserved_317; 49662306a36Sopenharmony_ci uint32_t reserved_318; 49762306a36Sopenharmony_ci uint32_t reserved_319; 49862306a36Sopenharmony_ci uint32_t reserved_320; 49962306a36Sopenharmony_ci uint32_t reserved_321; 50062306a36Sopenharmony_ci uint32_t reserved_322; 50162306a36Sopenharmony_ci uint32_t reserved_323; 50262306a36Sopenharmony_ci uint32_t reserved_324; 50362306a36Sopenharmony_ci uint32_t reserved_325; 50462306a36Sopenharmony_ci uint32_t reserved_326; 50562306a36Sopenharmony_ci uint32_t reserved_327; 50662306a36Sopenharmony_ci uint32_t reserved_328; 50762306a36Sopenharmony_ci uint32_t reserved_329; 50862306a36Sopenharmony_ci uint32_t reserved_330; 50962306a36Sopenharmony_ci uint32_t reserved_331; 51062306a36Sopenharmony_ci uint32_t reserved_332; 51162306a36Sopenharmony_ci uint32_t reserved_333; 51262306a36Sopenharmony_ci uint32_t reserved_334; 51362306a36Sopenharmony_ci uint32_t reserved_335; 51462306a36Sopenharmony_ci uint32_t reserved_336; 51562306a36Sopenharmony_ci uint32_t reserved_337; 51662306a36Sopenharmony_ci uint32_t reserved_338; 51762306a36Sopenharmony_ci uint32_t reserved_339; 51862306a36Sopenharmony_ci uint32_t reserved_340; 51962306a36Sopenharmony_ci uint32_t reserved_341; 52062306a36Sopenharmony_ci uint32_t reserved_342; 52162306a36Sopenharmony_ci uint32_t reserved_343; 52262306a36Sopenharmony_ci uint32_t reserved_344; 52362306a36Sopenharmony_ci uint32_t reserved_345; 52462306a36Sopenharmony_ci uint32_t reserved_346; 52562306a36Sopenharmony_ci uint32_t reserved_347; 52662306a36Sopenharmony_ci uint32_t reserved_348; 52762306a36Sopenharmony_ci uint32_t reserved_349; 52862306a36Sopenharmony_ci uint32_t reserved_350; 52962306a36Sopenharmony_ci uint32_t reserved_351; 53062306a36Sopenharmony_ci uint32_t reserved_352; 53162306a36Sopenharmony_ci uint32_t reserved_353; 53262306a36Sopenharmony_ci uint32_t reserved_354; 53362306a36Sopenharmony_ci uint32_t reserved_355; 53462306a36Sopenharmony_ci uint32_t reserved_356; 53562306a36Sopenharmony_ci uint32_t reserved_357; 53662306a36Sopenharmony_ci uint32_t reserved_358; 53762306a36Sopenharmony_ci uint32_t reserved_359; 53862306a36Sopenharmony_ci uint32_t reserved_360; 53962306a36Sopenharmony_ci uint32_t reserved_361; 54062306a36Sopenharmony_ci uint32_t reserved_362; 54162306a36Sopenharmony_ci uint32_t reserved_363; 54262306a36Sopenharmony_ci uint32_t reserved_364; 54362306a36Sopenharmony_ci uint32_t reserved_365; 54462306a36Sopenharmony_ci uint32_t reserved_366; 54562306a36Sopenharmony_ci uint32_t reserved_367; 54662306a36Sopenharmony_ci uint32_t reserved_368; 54762306a36Sopenharmony_ci uint32_t reserved_369; 54862306a36Sopenharmony_ci uint32_t reserved_370; 54962306a36Sopenharmony_ci uint32_t reserved_371; 55062306a36Sopenharmony_ci uint32_t reserved_372; 55162306a36Sopenharmony_ci uint32_t reserved_373; 55262306a36Sopenharmony_ci uint32_t reserved_374; 55362306a36Sopenharmony_ci uint32_t reserved_375; 55462306a36Sopenharmony_ci uint32_t reserved_376; 55562306a36Sopenharmony_ci uint32_t reserved_377; 55662306a36Sopenharmony_ci uint32_t reserved_378; 55762306a36Sopenharmony_ci uint32_t reserved_379; 55862306a36Sopenharmony_ci uint32_t reserved_380; 55962306a36Sopenharmony_ci uint32_t reserved_381; 56062306a36Sopenharmony_ci uint32_t reserved_382; 56162306a36Sopenharmony_ci uint32_t reserved_383; 56262306a36Sopenharmony_ci uint32_t reserved_384; 56362306a36Sopenharmony_ci uint32_t reserved_385; 56462306a36Sopenharmony_ci uint32_t reserved_386; 56562306a36Sopenharmony_ci uint32_t reserved_387; 56662306a36Sopenharmony_ci uint32_t reserved_388; 56762306a36Sopenharmony_ci uint32_t reserved_389; 56862306a36Sopenharmony_ci uint32_t reserved_390; 56962306a36Sopenharmony_ci uint32_t reserved_391; 57062306a36Sopenharmony_ci uint32_t reserved_392; 57162306a36Sopenharmony_ci uint32_t reserved_393; 57262306a36Sopenharmony_ci uint32_t reserved_394; 57362306a36Sopenharmony_ci uint32_t reserved_395; 57462306a36Sopenharmony_ci uint32_t reserved_396; 57562306a36Sopenharmony_ci uint32_t reserved_397; 57662306a36Sopenharmony_ci uint32_t reserved_398; 57762306a36Sopenharmony_ci uint32_t reserved_399; 57862306a36Sopenharmony_ci uint32_t reserved_400; 57962306a36Sopenharmony_ci uint32_t reserved_401; 58062306a36Sopenharmony_ci uint32_t reserved_402; 58162306a36Sopenharmony_ci uint32_t reserved_403; 58262306a36Sopenharmony_ci uint32_t reserved_404; 58362306a36Sopenharmony_ci uint32_t reserved_405; 58462306a36Sopenharmony_ci uint32_t reserved_406; 58562306a36Sopenharmony_ci uint32_t reserved_407; 58662306a36Sopenharmony_ci uint32_t reserved_408; 58762306a36Sopenharmony_ci uint32_t reserved_409; 58862306a36Sopenharmony_ci uint32_t reserved_410; 58962306a36Sopenharmony_ci uint32_t reserved_411; 59062306a36Sopenharmony_ci uint32_t reserved_412; 59162306a36Sopenharmony_ci uint32_t reserved_413; 59262306a36Sopenharmony_ci uint32_t reserved_414; 59362306a36Sopenharmony_ci uint32_t reserved_415; 59462306a36Sopenharmony_ci uint32_t reserved_416; 59562306a36Sopenharmony_ci uint32_t reserved_417; 59662306a36Sopenharmony_ci uint32_t reserved_418; 59762306a36Sopenharmony_ci uint32_t reserved_419; 59862306a36Sopenharmony_ci uint32_t reserved_420; 59962306a36Sopenharmony_ci uint32_t reserved_421; 60062306a36Sopenharmony_ci uint32_t reserved_422; 60162306a36Sopenharmony_ci uint32_t reserved_423; 60262306a36Sopenharmony_ci uint32_t reserved_424; 60362306a36Sopenharmony_ci uint32_t reserved_425; 60462306a36Sopenharmony_ci uint32_t reserved_426; 60562306a36Sopenharmony_ci uint32_t reserved_427; 60662306a36Sopenharmony_ci uint32_t reserved_428; 60762306a36Sopenharmony_ci uint32_t reserved_429; 60862306a36Sopenharmony_ci uint32_t reserved_430; 60962306a36Sopenharmony_ci uint32_t reserved_431; 61062306a36Sopenharmony_ci uint32_t reserved_432; 61162306a36Sopenharmony_ci uint32_t reserved_433; 61262306a36Sopenharmony_ci uint32_t reserved_434; 61362306a36Sopenharmony_ci uint32_t reserved_435; 61462306a36Sopenharmony_ci uint32_t reserved_436; 61562306a36Sopenharmony_ci uint32_t reserved_437; 61662306a36Sopenharmony_ci uint32_t reserved_438; 61762306a36Sopenharmony_ci uint32_t reserved_439; 61862306a36Sopenharmony_ci uint32_t reserved_440; 61962306a36Sopenharmony_ci uint32_t reserved_441; 62062306a36Sopenharmony_ci uint32_t reserved_442; 62162306a36Sopenharmony_ci uint32_t reserved_443; 62262306a36Sopenharmony_ci uint32_t reserved_444; 62362306a36Sopenharmony_ci uint32_t reserved_445; 62462306a36Sopenharmony_ci uint32_t reserved_446; 62562306a36Sopenharmony_ci uint32_t reserved_447; 62662306a36Sopenharmony_ci uint32_t reserved_448; 62762306a36Sopenharmony_ci uint32_t reserved_449; 62862306a36Sopenharmony_ci uint32_t reserved_450; 62962306a36Sopenharmony_ci uint32_t reserved_451; 63062306a36Sopenharmony_ci uint32_t reserved_452; 63162306a36Sopenharmony_ci uint32_t reserved_453; 63262306a36Sopenharmony_ci uint32_t reserved_454; 63362306a36Sopenharmony_ci uint32_t reserved_455; 63462306a36Sopenharmony_ci uint32_t reserved_456; 63562306a36Sopenharmony_ci uint32_t reserved_457; 63662306a36Sopenharmony_ci uint32_t reserved_458; 63762306a36Sopenharmony_ci uint32_t reserved_459; 63862306a36Sopenharmony_ci uint32_t reserved_460; 63962306a36Sopenharmony_ci uint32_t reserved_461; 64062306a36Sopenharmony_ci uint32_t reserved_462; 64162306a36Sopenharmony_ci uint32_t reserved_463; 64262306a36Sopenharmony_ci uint32_t reserved_464; 64362306a36Sopenharmony_ci uint32_t reserved_465; 64462306a36Sopenharmony_ci uint32_t reserved_466; 64562306a36Sopenharmony_ci uint32_t reserved_467; 64662306a36Sopenharmony_ci uint32_t reserved_468; 64762306a36Sopenharmony_ci uint32_t reserved_469; 64862306a36Sopenharmony_ci uint32_t reserved_470; 64962306a36Sopenharmony_ci uint32_t reserved_471; 65062306a36Sopenharmony_ci uint32_t reserved_472; 65162306a36Sopenharmony_ci uint32_t reserved_473; 65262306a36Sopenharmony_ci uint32_t reserved_474; 65362306a36Sopenharmony_ci uint32_t reserved_475; 65462306a36Sopenharmony_ci uint32_t reserved_476; 65562306a36Sopenharmony_ci uint32_t reserved_477; 65662306a36Sopenharmony_ci uint32_t reserved_478; 65762306a36Sopenharmony_ci uint32_t reserved_479; 65862306a36Sopenharmony_ci uint32_t reserved_480; 65962306a36Sopenharmony_ci uint32_t reserved_481; 66062306a36Sopenharmony_ci uint32_t reserved_482; 66162306a36Sopenharmony_ci uint32_t reserved_483; 66262306a36Sopenharmony_ci uint32_t reserved_484; 66362306a36Sopenharmony_ci uint32_t reserved_485; 66462306a36Sopenharmony_ci uint32_t reserved_486; 66562306a36Sopenharmony_ci uint32_t reserved_487; 66662306a36Sopenharmony_ci uint32_t reserved_488; 66762306a36Sopenharmony_ci uint32_t reserved_489; 66862306a36Sopenharmony_ci uint32_t reserved_490; 66962306a36Sopenharmony_ci uint32_t reserved_491; 67062306a36Sopenharmony_ci uint32_t reserved_492; 67162306a36Sopenharmony_ci uint32_t reserved_493; 67262306a36Sopenharmony_ci uint32_t reserved_494; 67362306a36Sopenharmony_ci uint32_t reserved_495; 67462306a36Sopenharmony_ci uint32_t reserved_496; 67562306a36Sopenharmony_ci uint32_t reserved_497; 67662306a36Sopenharmony_ci uint32_t reserved_498; 67762306a36Sopenharmony_ci uint32_t reserved_499; 67862306a36Sopenharmony_ci uint32_t reserved_500; 67962306a36Sopenharmony_ci uint32_t reserved_501; 68062306a36Sopenharmony_ci uint32_t reserved_502; 68162306a36Sopenharmony_ci uint32_t reserved_503; 68262306a36Sopenharmony_ci uint32_t reserved_504; 68362306a36Sopenharmony_ci uint32_t reserved_505; 68462306a36Sopenharmony_ci uint32_t reserved_506; 68562306a36Sopenharmony_ci uint32_t reserved_507; 68662306a36Sopenharmony_ci uint32_t reserved_508; 68762306a36Sopenharmony_ci uint32_t reserved_509; 68862306a36Sopenharmony_ci uint32_t reserved_510; 68962306a36Sopenharmony_ci uint32_t reserved_511; 69062306a36Sopenharmony_ci}; 69162306a36Sopenharmony_ci 69262306a36Sopenharmony_cistruct v9_mqd_allocation { 69362306a36Sopenharmony_ci struct v9_mqd mqd; 69462306a36Sopenharmony_ci uint32_t wptr_poll_mem; 69562306a36Sopenharmony_ci uint32_t rptr_report_mem; 69662306a36Sopenharmony_ci uint32_t dynamic_cu_mask; 69762306a36Sopenharmony_ci uint32_t dynamic_rb_mask; 69862306a36Sopenharmony_ci}; 69962306a36Sopenharmony_ci 70062306a36Sopenharmony_ci/* from vega10 all CSA format is shifted to chain ib compatible mode */ 70162306a36Sopenharmony_cistruct v9_ce_ib_state { 70262306a36Sopenharmony_ci /* section of non chained ib part */ 70362306a36Sopenharmony_ci uint32_t ce_ib_completion_status; 70462306a36Sopenharmony_ci uint32_t ce_constegnine_count; 70562306a36Sopenharmony_ci uint32_t ce_ibOffset_ib1; 70662306a36Sopenharmony_ci uint32_t ce_ibOffset_ib2; 70762306a36Sopenharmony_ci 70862306a36Sopenharmony_ci /* section of chained ib */ 70962306a36Sopenharmony_ci uint32_t ce_chainib_addrlo_ib1; 71062306a36Sopenharmony_ci uint32_t ce_chainib_addrlo_ib2; 71162306a36Sopenharmony_ci uint32_t ce_chainib_addrhi_ib1; 71262306a36Sopenharmony_ci uint32_t ce_chainib_addrhi_ib2; 71362306a36Sopenharmony_ci uint32_t ce_chainib_size_ib1; 71462306a36Sopenharmony_ci uint32_t ce_chainib_size_ib2; 71562306a36Sopenharmony_ci}; /* total 10 DWORD */ 71662306a36Sopenharmony_ci 71762306a36Sopenharmony_cistruct v9_de_ib_state { 71862306a36Sopenharmony_ci /* section of non chained ib part */ 71962306a36Sopenharmony_ci uint32_t ib_completion_status; 72062306a36Sopenharmony_ci uint32_t de_constEngine_count; 72162306a36Sopenharmony_ci uint32_t ib_offset_ib1; 72262306a36Sopenharmony_ci uint32_t ib_offset_ib2; 72362306a36Sopenharmony_ci 72462306a36Sopenharmony_ci /* section of chained ib */ 72562306a36Sopenharmony_ci uint32_t chain_ib_addrlo_ib1; 72662306a36Sopenharmony_ci uint32_t chain_ib_addrlo_ib2; 72762306a36Sopenharmony_ci uint32_t chain_ib_addrhi_ib1; 72862306a36Sopenharmony_ci uint32_t chain_ib_addrhi_ib2; 72962306a36Sopenharmony_ci uint32_t chain_ib_size_ib1; 73062306a36Sopenharmony_ci uint32_t chain_ib_size_ib2; 73162306a36Sopenharmony_ci 73262306a36Sopenharmony_ci /* section of non chained ib part */ 73362306a36Sopenharmony_ci uint32_t preamble_begin_ib1; 73462306a36Sopenharmony_ci uint32_t preamble_begin_ib2; 73562306a36Sopenharmony_ci uint32_t preamble_end_ib1; 73662306a36Sopenharmony_ci uint32_t preamble_end_ib2; 73762306a36Sopenharmony_ci 73862306a36Sopenharmony_ci /* section of chained ib */ 73962306a36Sopenharmony_ci uint32_t chain_ib_pream_addrlo_ib1; 74062306a36Sopenharmony_ci uint32_t chain_ib_pream_addrlo_ib2; 74162306a36Sopenharmony_ci uint32_t chain_ib_pream_addrhi_ib1; 74262306a36Sopenharmony_ci uint32_t chain_ib_pream_addrhi_ib2; 74362306a36Sopenharmony_ci 74462306a36Sopenharmony_ci /* section of non chained ib part */ 74562306a36Sopenharmony_ci uint32_t draw_indirect_baseLo; 74662306a36Sopenharmony_ci uint32_t draw_indirect_baseHi; 74762306a36Sopenharmony_ci uint32_t disp_indirect_baseLo; 74862306a36Sopenharmony_ci uint32_t disp_indirect_baseHi; 74962306a36Sopenharmony_ci uint32_t gds_backup_addrlo; 75062306a36Sopenharmony_ci uint32_t gds_backup_addrhi; 75162306a36Sopenharmony_ci uint32_t index_base_addrlo; 75262306a36Sopenharmony_ci uint32_t index_base_addrhi; 75362306a36Sopenharmony_ci uint32_t sample_cntl; 75462306a36Sopenharmony_ci}; /* Total of 27 DWORD */ 75562306a36Sopenharmony_ci 75662306a36Sopenharmony_cistruct v9_gfx_meta_data { 75762306a36Sopenharmony_ci /* 10 DWORD, address must be 4KB aligned */ 75862306a36Sopenharmony_ci struct v9_ce_ib_state ce_payload; 75962306a36Sopenharmony_ci uint32_t reserved1[54]; 76062306a36Sopenharmony_ci /* 27 DWORD, address must be 64B aligned */ 76162306a36Sopenharmony_ci struct v9_de_ib_state de_payload; 76262306a36Sopenharmony_ci /* PFP IB base address which get pre-empted */ 76362306a36Sopenharmony_ci uint32_t DeIbBaseAddrLo; 76462306a36Sopenharmony_ci uint32_t DeIbBaseAddrHi; 76562306a36Sopenharmony_ci uint32_t reserved2[931]; 76662306a36Sopenharmony_ci}; /* Total of 4K Bytes */ 76762306a36Sopenharmony_ci 76862306a36Sopenharmony_ci#endif /* V9_STRUCTS_H_ */ 769