@@ -72,7 +72,7 @@ void amdgpu_amdkfd_device_probe(struct amdgpu_device *adev)
7272 if (!kfd_initialized )
7373 return ;
7474
75- adev -> kfd .dev = kgd2kfd_probe (( struct kgd_dev * ) adev , vf );
75+ adev -> kfd .dev = kgd2kfd_probe (adev , vf );
7676
7777 if (adev -> kfd .dev )
7878 amdgpu_amdkfd_total_mem_size += adev -> gmc .real_vram_size ;
@@ -233,19 +233,16 @@ int amdgpu_amdkfd_post_reset(struct amdgpu_device *adev)
233233 return r ;
234234}
235235
236- void amdgpu_amdkfd_gpu_reset (struct kgd_dev * kgd )
236+ void amdgpu_amdkfd_gpu_reset (struct amdgpu_device * adev )
237237{
238- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
239-
240238 if (amdgpu_device_should_recover_gpu (adev ))
241239 amdgpu_device_gpu_recover (adev , NULL );
242240}
243241
244- int amdgpu_amdkfd_alloc_gtt_mem (struct kgd_dev * kgd , size_t size ,
242+ int amdgpu_amdkfd_alloc_gtt_mem (struct amdgpu_device * adev , size_t size ,
245243 void * * mem_obj , uint64_t * gpu_addr ,
246244 void * * cpu_ptr , bool cp_mqd_gfx9 )
247245{
248- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
249246 struct amdgpu_bo * bo = NULL ;
250247 struct amdgpu_bo_param bp ;
251248 int r ;
@@ -314,7 +311,7 @@ int amdgpu_amdkfd_alloc_gtt_mem(struct kgd_dev *kgd, size_t size,
314311 return r ;
315312}
316313
317- void amdgpu_amdkfd_free_gtt_mem (struct kgd_dev * kgd , void * mem_obj )
314+ void amdgpu_amdkfd_free_gtt_mem (struct amdgpu_device * adev , void * mem_obj )
318315{
319316 struct amdgpu_bo * bo = (struct amdgpu_bo * ) mem_obj ;
320317
@@ -325,10 +322,9 @@ void amdgpu_amdkfd_free_gtt_mem(struct kgd_dev *kgd, void *mem_obj)
325322 amdgpu_bo_unref (& (bo ));
326323}
327324
328- int amdgpu_amdkfd_alloc_gws (struct kgd_dev * kgd , size_t size ,
325+ int amdgpu_amdkfd_alloc_gws (struct amdgpu_device * adev , size_t size ,
329326 void * * mem_obj )
330327{
331- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
332328 struct amdgpu_bo * bo = NULL ;
333329 struct amdgpu_bo_user * ubo ;
334330 struct amdgpu_bo_param bp ;
@@ -355,18 +351,16 @@ int amdgpu_amdkfd_alloc_gws(struct kgd_dev *kgd, size_t size,
355351 return 0 ;
356352}
357353
358- void amdgpu_amdkfd_free_gws (struct kgd_dev * kgd , void * mem_obj )
354+ void amdgpu_amdkfd_free_gws (struct amdgpu_device * adev , void * mem_obj )
359355{
360356 struct amdgpu_bo * bo = (struct amdgpu_bo * )mem_obj ;
361357
362358 amdgpu_bo_unref (& bo );
363359}
364360
365- uint32_t amdgpu_amdkfd_get_fw_version (struct kgd_dev * kgd ,
361+ uint32_t amdgpu_amdkfd_get_fw_version (struct amdgpu_device * adev ,
366362 enum kgd_engine_type type )
367363{
368- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
369-
370364 switch (type ) {
371365 case KGD_ENGINE_PFP :
372366 return adev -> gfx .pfp_fw_version ;
@@ -399,11 +393,9 @@ uint32_t amdgpu_amdkfd_get_fw_version(struct kgd_dev *kgd,
399393 return 0 ;
400394}
401395
402- void amdgpu_amdkfd_get_local_mem_info (struct kgd_dev * kgd ,
396+ void amdgpu_amdkfd_get_local_mem_info (struct amdgpu_device * adev ,
403397 struct kfd_local_mem_info * mem_info )
404398{
405- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
406-
407399 memset (mem_info , 0 , sizeof (* mem_info ));
408400
409401 mem_info -> local_mem_size_public = adev -> gmc .visible_vram_size ;
@@ -428,19 +420,15 @@ void amdgpu_amdkfd_get_local_mem_info(struct kgd_dev *kgd,
428420 mem_info -> mem_clk_max = 100 ;
429421}
430422
431- uint64_t amdgpu_amdkfd_get_gpu_clock_counter (struct kgd_dev * kgd )
423+ uint64_t amdgpu_amdkfd_get_gpu_clock_counter (struct amdgpu_device * adev )
432424{
433- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
434-
435425 if (adev -> gfx .funcs -> get_gpu_clock_counter )
436426 return adev -> gfx .funcs -> get_gpu_clock_counter (adev );
437427 return 0 ;
438428}
439429
440- uint32_t amdgpu_amdkfd_get_max_engine_clock_in_mhz (struct kgd_dev * kgd )
430+ uint32_t amdgpu_amdkfd_get_max_engine_clock_in_mhz (struct amdgpu_device * adev )
441431{
442- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
443-
444432 /* the sclk is in quantas of 10kHz */
445433 if (amdgpu_sriov_vf (adev ))
446434 return adev -> clock .default_sclk / 100 ;
@@ -450,9 +438,8 @@ uint32_t amdgpu_amdkfd_get_max_engine_clock_in_mhz(struct kgd_dev *kgd)
450438 return 100 ;
451439}
452440
453- void amdgpu_amdkfd_get_cu_info (struct kgd_dev * kgd , struct kfd_cu_info * cu_info )
441+ void amdgpu_amdkfd_get_cu_info (struct amdgpu_device * adev , struct kfd_cu_info * cu_info )
454442{
455- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
456443 struct amdgpu_cu_info acu_info = adev -> gfx .cu_info ;
457444
458445 memset (cu_info , 0 , sizeof (* cu_info ));
@@ -473,13 +460,12 @@ void amdgpu_amdkfd_get_cu_info(struct kgd_dev *kgd, struct kfd_cu_info *cu_info)
473460 cu_info -> lds_size = acu_info .lds_size ;
474461}
475462
476- int amdgpu_amdkfd_get_dmabuf_info (struct kgd_dev * kgd , int dma_buf_fd ,
477- struct kgd_dev * * dma_buf_kgd ,
463+ int amdgpu_amdkfd_get_dmabuf_info (struct amdgpu_device * adev , int dma_buf_fd ,
464+ struct amdgpu_device * * dmabuf_adev ,
478465 uint64_t * bo_size , void * metadata_buffer ,
479466 size_t buffer_size , uint32_t * metadata_size ,
480467 uint32_t * flags )
481468{
482- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
483469 struct dma_buf * dma_buf ;
484470 struct drm_gem_object * obj ;
485471 struct amdgpu_bo * bo ;
@@ -507,8 +493,8 @@ int amdgpu_amdkfd_get_dmabuf_info(struct kgd_dev *kgd, int dma_buf_fd,
507493 goto out_put ;
508494
509495 r = 0 ;
510- if (dma_buf_kgd )
511- * dma_buf_kgd = ( struct kgd_dev * ) adev ;
496+ if (dmabuf_adev )
497+ * dmabuf_adev = adev ;
512498 if (bo_size )
513499 * bo_size = amdgpu_bo_size (bo );
514500 if (metadata_buffer )
@@ -528,32 +514,18 @@ int amdgpu_amdkfd_get_dmabuf_info(struct kgd_dev *kgd, int dma_buf_fd,
528514 return r ;
529515}
530516
531- uint64_t amdgpu_amdkfd_get_vram_usage (struct kgd_dev * kgd )
517+ uint64_t amdgpu_amdkfd_get_vram_usage (struct amdgpu_device * adev )
532518{
533- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
534519 struct ttm_resource_manager * vram_man = ttm_manager_type (& adev -> mman .bdev , TTM_PL_VRAM );
535520
536521 return amdgpu_vram_mgr_usage (vram_man );
537522}
538523
539- uint64_t amdgpu_amdkfd_get_hive_id (struct kgd_dev * kgd )
540- {
541- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
542-
543- return adev -> gmc .xgmi .hive_id ;
544- }
545-
546- uint64_t amdgpu_amdkfd_get_unique_id (struct kgd_dev * kgd )
547- {
548- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
549-
550- return adev -> unique_id ;
551- }
552-
553- uint8_t amdgpu_amdkfd_get_xgmi_hops_count (struct kgd_dev * dst , struct kgd_dev * src )
524+ uint8_t amdgpu_amdkfd_get_xgmi_hops_count (struct amdgpu_device * dst ,
525+ struct amdgpu_device * src )
554526{
555- struct amdgpu_device * peer_adev = ( struct amdgpu_device * ) src ;
556- struct amdgpu_device * adev = ( struct amdgpu_device * ) dst ;
527+ struct amdgpu_device * peer_adev = src ;
528+ struct amdgpu_device * adev = dst ;
557529 int ret = amdgpu_xgmi_get_hops_count (adev , peer_adev );
558530
559531 if (ret < 0 ) {
@@ -565,16 +537,18 @@ uint8_t amdgpu_amdkfd_get_xgmi_hops_count(struct kgd_dev *dst, struct kgd_dev *s
565537 return (uint8_t )ret ;
566538}
567539
568- int amdgpu_amdkfd_get_xgmi_bandwidth_mbytes (struct kgd_dev * dst , struct kgd_dev * src , bool is_min )
540+ int amdgpu_amdkfd_get_xgmi_bandwidth_mbytes (struct amdgpu_device * dst ,
541+ struct amdgpu_device * src ,
542+ bool is_min )
569543{
570- struct amdgpu_device * adev = ( struct amdgpu_device * ) dst , * peer_adev ;
544+ struct amdgpu_device * adev = dst , * peer_adev ;
571545 int num_links ;
572546
573547 if (adev -> asic_type != CHIP_ALDEBARAN )
574548 return 0 ;
575549
576550 if (src )
577- peer_adev = ( struct amdgpu_device * ) src ;
551+ peer_adev = src ;
578552
579553 /* num links returns 0 for indirect peers since indirect route is unknown. */
580554 num_links = is_min ? 1 : amdgpu_xgmi_get_num_links (adev , peer_adev );
@@ -589,9 +563,8 @@ int amdgpu_amdkfd_get_xgmi_bandwidth_mbytes(struct kgd_dev *dst, struct kgd_dev
589563 return (num_links * 16 * 25000 )/BITS_PER_BYTE ;
590564}
591565
592- int amdgpu_amdkfd_get_pcie_bandwidth_mbytes (struct kgd_dev * dev , bool is_min )
566+ int amdgpu_amdkfd_get_pcie_bandwidth_mbytes (struct amdgpu_device * adev , bool is_min )
593567{
594- struct amdgpu_device * adev = (struct amdgpu_device * )dev ;
595568 int num_lanes_shift = (is_min ? ffs (adev -> pm .pcie_mlw_mask ) :
596569 fls (adev -> pm .pcie_mlw_mask )) - 1 ;
597570 int gen_speed_shift = (is_min ? ffs (adev -> pm .pcie_gen_mask &
@@ -647,39 +620,11 @@ int amdgpu_amdkfd_get_pcie_bandwidth_mbytes(struct kgd_dev *dev, bool is_min)
647620 return (num_lanes_factor * gen_speed_mbits_factor )/BITS_PER_BYTE ;
648621}
649622
650- uint64_t amdgpu_amdkfd_get_mmio_remap_phys_addr (struct kgd_dev * kgd )
651- {
652- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
653-
654- return adev -> rmmio_remap .bus_addr ;
655- }
656-
657- uint32_t amdgpu_amdkfd_get_num_gws (struct kgd_dev * kgd )
658- {
659- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
660-
661- return adev -> gds .gws_size ;
662- }
663-
664- uint32_t amdgpu_amdkfd_get_asic_rev_id (struct kgd_dev * kgd )
665- {
666- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
667-
668- return adev -> rev_id ;
669- }
670-
671- int amdgpu_amdkfd_get_noretry (struct kgd_dev * kgd )
672- {
673- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
674-
675- return adev -> gmc .noretry ;
676- }
677-
678- int amdgpu_amdkfd_submit_ib (struct kgd_dev * kgd , enum kgd_engine_type engine ,
623+ int amdgpu_amdkfd_submit_ib (struct amdgpu_device * adev ,
624+ enum kgd_engine_type engine ,
679625 uint32_t vmid , uint64_t gpu_addr ,
680626 uint32_t * ib_cmd , uint32_t ib_len )
681627{
682- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
683628 struct amdgpu_job * job ;
684629 struct amdgpu_ib * ib ;
685630 struct amdgpu_ring * ring ;
@@ -730,10 +675,8 @@ int amdgpu_amdkfd_submit_ib(struct kgd_dev *kgd, enum kgd_engine_type engine,
730675 return ret ;
731676}
732677
733- void amdgpu_amdkfd_set_compute_idle (struct kgd_dev * kgd , bool idle )
678+ void amdgpu_amdkfd_set_compute_idle (struct amdgpu_device * adev , bool idle )
734679{
735- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
736-
737680 amdgpu_dpm_switch_power_profile (adev ,
738681 PP_SMC_POWER_PROFILE_COMPUTE ,
739682 !idle );
@@ -747,10 +690,9 @@ bool amdgpu_amdkfd_is_kfd_vmid(struct amdgpu_device *adev, u32 vmid)
747690 return false;
748691}
749692
750- int amdgpu_amdkfd_flush_gpu_tlb_vmid (struct kgd_dev * kgd , uint16_t vmid )
693+ int amdgpu_amdkfd_flush_gpu_tlb_vmid (struct amdgpu_device * adev ,
694+ uint16_t vmid )
751695{
752- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
753-
754696 if (adev -> family == AMDGPU_FAMILY_AI ) {
755697 int i ;
756698
@@ -763,10 +705,9 @@ int amdgpu_amdkfd_flush_gpu_tlb_vmid(struct kgd_dev *kgd, uint16_t vmid)
763705 return 0 ;
764706}
765707
766- int amdgpu_amdkfd_flush_gpu_tlb_pasid (struct kgd_dev * kgd , uint16_t pasid ,
767- enum TLB_FLUSH_TYPE flush_type )
708+ int amdgpu_amdkfd_flush_gpu_tlb_pasid (struct amdgpu_device * adev ,
709+ uint16_t pasid , enum TLB_FLUSH_TYPE flush_type )
768710{
769- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
770711 bool all_hub = false;
771712
772713 if (adev -> family == AMDGPU_FAMILY_AI )
@@ -775,21 +716,18 @@ int amdgpu_amdkfd_flush_gpu_tlb_pasid(struct kgd_dev *kgd, uint16_t pasid,
775716 return amdgpu_gmc_flush_gpu_tlb_pasid (adev , pasid , flush_type , all_hub );
776717}
777718
778- bool amdgpu_amdkfd_have_atomics_support (struct kgd_dev * kgd )
719+ bool amdgpu_amdkfd_have_atomics_support (struct amdgpu_device * adev )
779720{
780- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
781-
782721 return adev -> have_atomics_support ;
783722}
784723
785- void amdgpu_amdkfd_ras_poison_consumption_handler (struct kgd_dev * kgd )
724+ void amdgpu_amdkfd_ras_poison_consumption_handler (struct amdgpu_device * adev )
786725{
787- struct amdgpu_device * adev = (struct amdgpu_device * )kgd ;
788726 struct ras_err_data err_data = {0 , 0 , 0 , NULL };
789727
790728 /* CPU MCA will handle page retirement if connected_to_cpu is 1 */
791729 if (!adev -> gmc .xgmi .connected_to_cpu )
792730 amdgpu_umc_process_ras_data_cb (adev , & err_data , NULL );
793731 else
794- amdgpu_amdkfd_gpu_reset (kgd );
732+ amdgpu_amdkfd_gpu_reset (adev );
795733}
0 commit comments