On Wed, Nov 30, 2016 at 2:01 AM, Xiangliang Yu <xiangliang...@amd.com> wrote:
> Vi_structs.h has defined vi_mqd, drop redundant vi_mqd define.
>
> Signed-off-by: Monk Linu <monk....@amd.com>
> Signed-off-by: Xiangliang Yu <xiangliang...@amd.com>

Patches 1, 2, 5:
Reviewed-by: Alex Deucher <alexander.deuc...@amd.com>

> ---
>  drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 266 
> +---------------------------------
>  1 file changed, 3 insertions(+), 263 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c 
> b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> index 5054f83..e1b6614 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> @@ -25,6 +25,7 @@
>  #include "amdgpu.h"
>  #include "amdgpu_gfx.h"
>  #include "vi.h"
> +#include "vi_structs.h"
>  #include "vid.h"
>  #include "amdgpu_ucode.h"
>  #include "amdgpu_atombios.h"
> @@ -4470,267 +4471,6 @@ static int gfx_v8_0_cp_compute_load_microcode(struct 
> amdgpu_device *adev)
>         return 0;
>  }
>
> -struct vi_mqd {
> -       uint32_t header;  /* ordinal0 */
> -       uint32_t compute_dispatch_initiator;  /* ordinal1 */
> -       uint32_t compute_dim_x;  /* ordinal2 */
> -       uint32_t compute_dim_y;  /* ordinal3 */
> -       uint32_t compute_dim_z;  /* ordinal4 */
> -       uint32_t compute_start_x;  /* ordinal5 */
> -       uint32_t compute_start_y;  /* ordinal6 */
> -       uint32_t compute_start_z;  /* ordinal7 */
> -       uint32_t compute_num_thread_x;  /* ordinal8 */
> -       uint32_t compute_num_thread_y;  /* ordinal9 */
> -       uint32_t compute_num_thread_z;  /* ordinal10 */
> -       uint32_t compute_pipelinestat_enable;  /* ordinal11 */
> -       uint32_t compute_perfcount_enable;  /* ordinal12 */
> -       uint32_t compute_pgm_lo;  /* ordinal13 */
> -       uint32_t compute_pgm_hi;  /* ordinal14 */
> -       uint32_t compute_tba_lo;  /* ordinal15 */
> -       uint32_t compute_tba_hi;  /* ordinal16 */
> -       uint32_t compute_tma_lo;  /* ordinal17 */
> -       uint32_t compute_tma_hi;  /* ordinal18 */
> -       uint32_t compute_pgm_rsrc1;  /* ordinal19 */
> -       uint32_t compute_pgm_rsrc2;  /* ordinal20 */
> -       uint32_t compute_vmid;  /* ordinal21 */
> -       uint32_t compute_resource_limits;  /* ordinal22 */
> -       uint32_t compute_static_thread_mgmt_se0;  /* ordinal23 */
> -       uint32_t compute_static_thread_mgmt_se1;  /* ordinal24 */
> -       uint32_t compute_tmpring_size;  /* ordinal25 */
> -       uint32_t compute_static_thread_mgmt_se2;  /* ordinal26 */
> -       uint32_t compute_static_thread_mgmt_se3;  /* ordinal27 */
> -       uint32_t compute_restart_x;  /* ordinal28 */
> -       uint32_t compute_restart_y;  /* ordinal29 */
> -       uint32_t compute_restart_z;  /* ordinal30 */
> -       uint32_t compute_thread_trace_enable;  /* ordinal31 */
> -       uint32_t compute_misc_reserved;  /* ordinal32 */
> -       uint32_t compute_dispatch_id;  /* ordinal33 */
> -       uint32_t compute_threadgroup_id;  /* ordinal34 */
> -       uint32_t compute_relaunch;  /* ordinal35 */
> -       uint32_t compute_wave_restore_addr_lo;  /* ordinal36 */
> -       uint32_t compute_wave_restore_addr_hi;  /* ordinal37 */
> -       uint32_t compute_wave_restore_control;  /* ordinal38 */
> -       uint32_t reserved9;  /* ordinal39 */
> -       uint32_t reserved10;  /* ordinal40 */
> -       uint32_t reserved11;  /* ordinal41 */
> -       uint32_t reserved12;  /* ordinal42 */
> -       uint32_t reserved13;  /* ordinal43 */
> -       uint32_t reserved14;  /* ordinal44 */
> -       uint32_t reserved15;  /* ordinal45 */
> -       uint32_t reserved16;  /* ordinal46 */
> -       uint32_t reserved17;  /* ordinal47 */
> -       uint32_t reserved18;  /* ordinal48 */
> -       uint32_t reserved19;  /* ordinal49 */
> -       uint32_t reserved20;  /* ordinal50 */
> -       uint32_t reserved21;  /* ordinal51 */
> -       uint32_t reserved22;  /* ordinal52 */
> -       uint32_t reserved23;  /* ordinal53 */
> -       uint32_t reserved24;  /* ordinal54 */
> -       uint32_t reserved25;  /* ordinal55 */
> -       uint32_t reserved26;  /* ordinal56 */
> -       uint32_t reserved27;  /* ordinal57 */
> -       uint32_t reserved28;  /* ordinal58 */
> -       uint32_t reserved29;  /* ordinal59 */
> -       uint32_t reserved30;  /* ordinal60 */
> -       uint32_t reserved31;  /* ordinal61 */
> -       uint32_t reserved32;  /* ordinal62 */
> -       uint32_t reserved33;  /* ordinal63 */
> -       uint32_t reserved34;  /* ordinal64 */
> -       uint32_t compute_user_data_0;  /* ordinal65 */
> -       uint32_t compute_user_data_1;  /* ordinal66 */
> -       uint32_t compute_user_data_2;  /* ordinal67 */
> -       uint32_t compute_user_data_3;  /* ordinal68 */
> -       uint32_t compute_user_data_4;  /* ordinal69 */
> -       uint32_t compute_user_data_5;  /* ordinal70 */
> -       uint32_t compute_user_data_6;  /* ordinal71 */
> -       uint32_t compute_user_data_7;  /* ordinal72 */
> -       uint32_t compute_user_data_8;  /* ordinal73 */
> -       uint32_t compute_user_data_9;  /* ordinal74 */
> -       uint32_t compute_user_data_10;  /* ordinal75 */
> -       uint32_t compute_user_data_11;  /* ordinal76 */
> -       uint32_t compute_user_data_12;  /* ordinal77 */
> -       uint32_t compute_user_data_13;  /* ordinal78 */
> -       uint32_t compute_user_data_14;  /* ordinal79 */
> -       uint32_t compute_user_data_15;  /* ordinal80 */
> -       uint32_t cp_compute_csinvoc_count_lo;  /* ordinal81 */
> -       uint32_t cp_compute_csinvoc_count_hi;  /* ordinal82 */
> -       uint32_t reserved35;  /* ordinal83 */
> -       uint32_t reserved36;  /* ordinal84 */
> -       uint32_t reserved37;  /* ordinal85 */
> -       uint32_t cp_mqd_query_time_lo;  /* ordinal86 */
> -       uint32_t cp_mqd_query_time_hi;  /* ordinal87 */
> -       uint32_t cp_mqd_connect_start_time_lo;  /* ordinal88 */
> -       uint32_t cp_mqd_connect_start_time_hi;  /* ordinal89 */
> -       uint32_t cp_mqd_connect_end_time_lo;  /* ordinal90 */
> -       uint32_t cp_mqd_connect_end_time_hi;  /* ordinal91 */
> -       uint32_t cp_mqd_connect_end_wf_count;  /* ordinal92 */
> -       uint32_t cp_mqd_connect_end_pq_rptr;  /* ordinal93 */
> -       uint32_t cp_mqd_connect_end_pq_wptr;  /* ordinal94 */
> -       uint32_t cp_mqd_connect_end_ib_rptr;  /* ordinal95 */
> -       uint32_t reserved38;  /* ordinal96 */
> -       uint32_t reserved39;  /* ordinal97 */
> -       uint32_t cp_mqd_save_start_time_lo;  /* ordinal98 */
> -       uint32_t cp_mqd_save_start_time_hi;  /* ordinal99 */
> -       uint32_t cp_mqd_save_end_time_lo;  /* ordinal100 */
> -       uint32_t cp_mqd_save_end_time_hi;  /* ordinal101 */
> -       uint32_t cp_mqd_restore_start_time_lo;  /* ordinal102 */
> -       uint32_t cp_mqd_restore_start_time_hi;  /* ordinal103 */
> -       uint32_t cp_mqd_restore_end_time_lo;  /* ordinal104 */
> -       uint32_t cp_mqd_restore_end_time_hi;  /* ordinal105 */
> -       uint32_t reserved40;  /* ordinal106 */
> -       uint32_t reserved41;  /* ordinal107 */
> -       uint32_t gds_cs_ctxsw_cnt0;  /* ordinal108 */
> -       uint32_t gds_cs_ctxsw_cnt1;  /* ordinal109 */
> -       uint32_t gds_cs_ctxsw_cnt2;  /* ordinal110 */
> -       uint32_t gds_cs_ctxsw_cnt3;  /* ordinal111 */
> -       uint32_t reserved42;  /* ordinal112 */
> -       uint32_t reserved43;  /* ordinal113 */
> -       uint32_t cp_pq_exe_status_lo;  /* ordinal114 */
> -       uint32_t cp_pq_exe_status_hi;  /* ordinal115 */
> -       uint32_t cp_packet_id_lo;  /* ordinal116 */
> -       uint32_t cp_packet_id_hi;  /* ordinal117 */
> -       uint32_t cp_packet_exe_status_lo;  /* ordinal118 */
> -       uint32_t cp_packet_exe_status_hi;  /* ordinal119 */
> -       uint32_t gds_save_base_addr_lo;  /* ordinal120 */
> -       uint32_t gds_save_base_addr_hi;  /* ordinal121 */
> -       uint32_t gds_save_mask_lo;  /* ordinal122 */
> -       uint32_t gds_save_mask_hi;  /* ordinal123 */
> -       uint32_t ctx_save_base_addr_lo;  /* ordinal124 */
> -       uint32_t ctx_save_base_addr_hi;  /* ordinal125 */
> -       uint32_t reserved44;  /* ordinal126 */
> -       uint32_t reserved45;  /* ordinal127 */
> -       uint32_t cp_mqd_base_addr_lo;  /* ordinal128 */
> -       uint32_t cp_mqd_base_addr_hi;  /* ordinal129 */
> -       uint32_t cp_hqd_active;  /* ordinal130 */
> -       uint32_t cp_hqd_vmid;  /* ordinal131 */
> -       uint32_t cp_hqd_persistent_state;  /* ordinal132 */
> -       uint32_t cp_hqd_pipe_priority;  /* ordinal133 */
> -       uint32_t cp_hqd_queue_priority;  /* ordinal134 */
> -       uint32_t cp_hqd_quantum;  /* ordinal135 */
> -       uint32_t cp_hqd_pq_base_lo;  /* ordinal136 */
> -       uint32_t cp_hqd_pq_base_hi;  /* ordinal137 */
> -       uint32_t cp_hqd_pq_rptr;  /* ordinal138 */
> -       uint32_t cp_hqd_pq_rptr_report_addr_lo;  /* ordinal139 */
> -       uint32_t cp_hqd_pq_rptr_report_addr_hi;  /* ordinal140 */
> -       uint32_t cp_hqd_pq_wptr_poll_addr;  /* ordinal141 */
> -       uint32_t cp_hqd_pq_wptr_poll_addr_hi;  /* ordinal142 */
> -       uint32_t cp_hqd_pq_doorbell_control;  /* ordinal143 */
> -       uint32_t cp_hqd_pq_wptr;  /* ordinal144 */
> -       uint32_t cp_hqd_pq_control;  /* ordinal145 */
> -       uint32_t cp_hqd_ib_base_addr_lo;  /* ordinal146 */
> -       uint32_t cp_hqd_ib_base_addr_hi;  /* ordinal147 */
> -       uint32_t cp_hqd_ib_rptr;  /* ordinal148 */
> -       uint32_t cp_hqd_ib_control;  /* ordinal149 */
> -       uint32_t cp_hqd_iq_timer;  /* ordinal150 */
> -       uint32_t cp_hqd_iq_rptr;  /* ordinal151 */
> -       uint32_t cp_hqd_dequeue_request;  /* ordinal152 */
> -       uint32_t cp_hqd_dma_offload;  /* ordinal153 */
> -       uint32_t cp_hqd_sema_cmd;  /* ordinal154 */
> -       uint32_t cp_hqd_msg_type;  /* ordinal155 */
> -       uint32_t cp_hqd_atomic0_preop_lo;  /* ordinal156 */
> -       uint32_t cp_hqd_atomic0_preop_hi;  /* ordinal157 */
> -       uint32_t cp_hqd_atomic1_preop_lo;  /* ordinal158 */
> -       uint32_t cp_hqd_atomic1_preop_hi;  /* ordinal159 */
> -       uint32_t cp_hqd_hq_status0;  /* ordinal160 */
> -       uint32_t cp_hqd_hq_control0;  /* ordinal161 */
> -       uint32_t cp_mqd_control;  /* ordinal162 */
> -       uint32_t cp_hqd_hq_status1;  /* ordinal163 */
> -       uint32_t cp_hqd_hq_control1;  /* ordinal164 */
> -       uint32_t cp_hqd_eop_base_addr_lo;  /* ordinal165 */
> -       uint32_t cp_hqd_eop_base_addr_hi;  /* ordinal166 */
> -       uint32_t cp_hqd_eop_control;  /* ordinal167 */
> -       uint32_t cp_hqd_eop_rptr;  /* ordinal168 */
> -       uint32_t cp_hqd_eop_wptr;  /* ordinal169 */
> -       uint32_t cp_hqd_eop_done_events;  /* ordinal170 */
> -       uint32_t cp_hqd_ctx_save_base_addr_lo;  /* ordinal171 */
> -       uint32_t cp_hqd_ctx_save_base_addr_hi;  /* ordinal172 */
> -       uint32_t cp_hqd_ctx_save_control;  /* ordinal173 */
> -       uint32_t cp_hqd_cntl_stack_offset;  /* ordinal174 */
> -       uint32_t cp_hqd_cntl_stack_size;  /* ordinal175 */
> -       uint32_t cp_hqd_wg_state_offset;  /* ordinal176 */
> -       uint32_t cp_hqd_ctx_save_size;  /* ordinal177 */
> -       uint32_t cp_hqd_gds_resource_state;  /* ordinal178 */
> -       uint32_t cp_hqd_error;  /* ordinal179 */
> -       uint32_t cp_hqd_eop_wptr_mem;  /* ordinal180 */
> -       uint32_t cp_hqd_eop_dones;  /* ordinal181 */
> -       uint32_t reserved46;  /* ordinal182 */
> -       uint32_t reserved47;  /* ordinal183 */
> -       uint32_t reserved48;  /* ordinal184 */
> -       uint32_t reserved49;  /* ordinal185 */
> -       uint32_t reserved50;  /* ordinal186 */
> -       uint32_t reserved51;  /* ordinal187 */
> -       uint32_t reserved52;  /* ordinal188 */
> -       uint32_t reserved53;  /* ordinal189 */
> -       uint32_t reserved54;  /* ordinal190 */
> -       uint32_t reserved55;  /* ordinal191 */
> -       uint32_t iqtimer_pkt_header;  /* ordinal192 */
> -       uint32_t iqtimer_pkt_dw0;  /* ordinal193 */
> -       uint32_t iqtimer_pkt_dw1;  /* ordinal194 */
> -       uint32_t iqtimer_pkt_dw2;  /* ordinal195 */
> -       uint32_t iqtimer_pkt_dw3;  /* ordinal196 */
> -       uint32_t iqtimer_pkt_dw4;  /* ordinal197 */
> -       uint32_t iqtimer_pkt_dw5;  /* ordinal198 */
> -       uint32_t iqtimer_pkt_dw6;  /* ordinal199 */
> -       uint32_t iqtimer_pkt_dw7;  /* ordinal200 */
> -       uint32_t iqtimer_pkt_dw8;  /* ordinal201 */
> -       uint32_t iqtimer_pkt_dw9;  /* ordinal202 */
> -       uint32_t iqtimer_pkt_dw10;  /* ordinal203 */
> -       uint32_t iqtimer_pkt_dw11;  /* ordinal204 */
> -       uint32_t iqtimer_pkt_dw12;  /* ordinal205 */
> -       uint32_t iqtimer_pkt_dw13;  /* ordinal206 */
> -       uint32_t iqtimer_pkt_dw14;  /* ordinal207 */
> -       uint32_t iqtimer_pkt_dw15;  /* ordinal208 */
> -       uint32_t iqtimer_pkt_dw16;  /* ordinal209 */
> -       uint32_t iqtimer_pkt_dw17;  /* ordinal210 */
> -       uint32_t iqtimer_pkt_dw18;  /* ordinal211 */
> -       uint32_t iqtimer_pkt_dw19;  /* ordinal212 */
> -       uint32_t iqtimer_pkt_dw20;  /* ordinal213 */
> -       uint32_t iqtimer_pkt_dw21;  /* ordinal214 */
> -       uint32_t iqtimer_pkt_dw22;  /* ordinal215 */
> -       uint32_t iqtimer_pkt_dw23;  /* ordinal216 */
> -       uint32_t iqtimer_pkt_dw24;  /* ordinal217 */
> -       uint32_t iqtimer_pkt_dw25;  /* ordinal218 */
> -       uint32_t iqtimer_pkt_dw26;  /* ordinal219 */
> -       uint32_t iqtimer_pkt_dw27;  /* ordinal220 */
> -       uint32_t iqtimer_pkt_dw28;  /* ordinal221 */
> -       uint32_t iqtimer_pkt_dw29;  /* ordinal222 */
> -       uint32_t iqtimer_pkt_dw30;  /* ordinal223 */
> -       uint32_t iqtimer_pkt_dw31;  /* ordinal224 */
> -       uint32_t reserved56;  /* ordinal225 */
> -       uint32_t reserved57;  /* ordinal226 */
> -       uint32_t reserved58;  /* ordinal227 */
> -       uint32_t set_resources_header;  /* ordinal228 */
> -       uint32_t set_resources_dw1;  /* ordinal229 */
> -       uint32_t set_resources_dw2;  /* ordinal230 */
> -       uint32_t set_resources_dw3;  /* ordinal231 */
> -       uint32_t set_resources_dw4;  /* ordinal232 */
> -       uint32_t set_resources_dw5;  /* ordinal233 */
> -       uint32_t set_resources_dw6;  /* ordinal234 */
> -       uint32_t set_resources_dw7;  /* ordinal235 */
> -       uint32_t reserved59;  /* ordinal236 */
> -       uint32_t reserved60;  /* ordinal237 */
> -       uint32_t reserved61;  /* ordinal238 */
> -       uint32_t reserved62;  /* ordinal239 */
> -       uint32_t reserved63;  /* ordinal240 */
> -       uint32_t reserved64;  /* ordinal241 */
> -       uint32_t reserved65;  /* ordinal242 */
> -       uint32_t reserved66;  /* ordinal243 */
> -       uint32_t reserved67;  /* ordinal244 */
> -       uint32_t reserved68;  /* ordinal245 */
> -       uint32_t reserved69;  /* ordinal246 */
> -       uint32_t reserved70;  /* ordinal247 */
> -       uint32_t reserved71;  /* ordinal248 */
> -       uint32_t reserved72;  /* ordinal249 */
> -       uint32_t reserved73;  /* ordinal250 */
> -       uint32_t reserved74;  /* ordinal251 */
> -       uint32_t reserved75;  /* ordinal252 */
> -       uint32_t reserved76;  /* ordinal253 */
> -       uint32_t reserved77;  /* ordinal254 */
> -       uint32_t reserved78;  /* ordinal255 */
> -
> -       uint32_t reserved_t[256]; /* Reserve 256 dword buffer used by ucode */
> -};
> -
>  static void gfx_v8_0_cp_compute_fini(struct amdgpu_device *adev)
>  {
>         int i, r;
> @@ -4915,9 +4655,9 @@ static int gfx_v8_0_cp_compute_resume(struct 
> amdgpu_device *adev)
>
>                 /* only used if 
> CP_PQ_WPTR_POLL_CNTL.CP_PQ_WPTR_POLL_CNTL__EN_MASK=1 */
>                 wb_gpu_addr = adev->wb.gpu_addr + (ring->wptr_offs * 4);
> -               mqd->cp_hqd_pq_wptr_poll_addr = wb_gpu_addr & 0xfffffffc;
> +               mqd->cp_hqd_pq_wptr_poll_addr_lo = wb_gpu_addr & 0xfffffffc;
>                 mqd->cp_hqd_pq_wptr_poll_addr_hi = upper_32_bits(wb_gpu_addr) 
> & 0xffff;
> -               WREG32(mmCP_HQD_PQ_WPTR_POLL_ADDR, 
> mqd->cp_hqd_pq_wptr_poll_addr);
> +               WREG32(mmCP_HQD_PQ_WPTR_POLL_ADDR, 
> mqd->cp_hqd_pq_wptr_poll_addr_lo);
>                 WREG32(mmCP_HQD_PQ_WPTR_POLL_ADDR_HI,
>                        mqd->cp_hqd_pq_wptr_poll_addr_hi);
>
> --
> 2.7.4
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to