[linux-next:master 9749/10134] drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c:290: warning: Function parameter or struct member 'vmhub' not described in 'gmc_v12_0_flush_gpu_tlb'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   f68868ba718e30594165879cc3020607165b0761
commit: 075b44aa210bd8be1c2c23ba742218fc4fc2bfa8 [9749/10134] drm/amdgpu: Add gmc v12_0 ip block support (v7)
config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20240501/202405012128.UZdRC5sp-lkp@xxxxxxxxx/config)
compiler: loongarch64-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240501/202405012128.UZdRC5sp-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202405012128.UZdRC5sp-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

>> drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c:290: warning: Function parameter or struct member 'vmhub' not described in 'gmc_v12_0_flush_gpu_tlb'
>> drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c:290: warning: Function parameter or struct member 'flush_type' not described in 'gmc_v12_0_flush_gpu_tlb'
>> drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c:330: warning: Function parameter or struct member 'flush_type' not described in 'gmc_v12_0_flush_gpu_tlb_pasid'
>> drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c:330: warning: Function parameter or struct member 'all_hub' not described in 'gmc_v12_0_flush_gpu_tlb_pasid'
>> drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c:330: warning: Function parameter or struct member 'inst' not described in 'gmc_v12_0_flush_gpu_tlb_pasid'


vim +290 drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c

   279	
   280	/**
   281	 * gmc_v12_0_flush_gpu_tlb - gart tlb flush callback
   282	 *
   283	 * @adev: amdgpu_device pointer
   284	 * @vmid: vm instance to flush
   285	 *
   286	 * Flush the TLB for the requested page table.
   287	 */
   288	static void gmc_v12_0_flush_gpu_tlb(struct amdgpu_device *adev, uint32_t vmid,
   289						uint32_t vmhub, uint32_t flush_type)
 > 290	{
   291		if ((vmhub == AMDGPU_GFXHUB(0)) && !adev->gfx.is_poweron)
   292			return;
   293	
   294		/* flush hdp cache */
   295		adev->hdp.funcs->flush_hdp(adev, NULL);
   296	
   297		/* This is necessary for SRIOV as well as for GFXOFF to function
   298		 * properly under bare metal
   299		 */
   300		if ((adev->gfx.kiq[0].ring.sched.ready || adev->mes.ring.sched.ready) &&
   301		    (amdgpu_sriov_runtime(adev) || !amdgpu_sriov_vf(adev))) {
   302			struct amdgpu_vmhub *hub = &adev->vmhub[vmhub];
   303			const unsigned eng = 17;
   304			u32 inv_req = hub->vmhub_funcs->get_invalidate_req(vmid, flush_type);
   305			u32 req = hub->vm_inv_eng0_req + hub->eng_distance * eng;
   306			u32 ack = hub->vm_inv_eng0_ack + hub->eng_distance * eng;
   307	
   308			amdgpu_gmc_fw_reg_write_reg_wait(adev, req, ack, inv_req,
   309					1 << vmid, GET_INST(GC, 0));
   310			return;
   311		}
   312	
   313		mutex_lock(&adev->mman.gtt_window_lock);
   314		gmc_v12_0_flush_vm_hub(adev, vmid, vmhub, 0);
   315		mutex_unlock(&adev->mman.gtt_window_lock);
   316		return;
   317	}
   318	
   319	/**
   320	 * gmc_v12_0_flush_gpu_tlb_pasid - tlb flush via pasid
   321	 *
   322	 * @adev: amdgpu_device pointer
   323	 * @pasid: pasid to be flush
   324	 *
   325	 * Flush the TLB for the requested pasid.
   326	 */
   327	static void gmc_v12_0_flush_gpu_tlb_pasid(struct amdgpu_device *adev,
   328						  uint16_t pasid, uint32_t flush_type,
   329						  bool all_hub, uint32_t inst)
 > 330	{
   331		uint16_t queried;
   332		int vmid, i;
   333	
   334		for (vmid = 1; vmid < 16; vmid++) {
   335			bool valid;
   336	
   337			valid = gmc_v12_0_get_vmid_pasid_mapping_info(adev, vmid,
   338								      &queried);
   339			if (!valid || queried != pasid)
   340				continue;
   341	
   342			if (all_hub) {
   343				for_each_set_bit(i, adev->vmhubs_mask,
   344						 AMDGPU_MAX_VMHUBS)
   345					gmc_v12_0_flush_gpu_tlb(adev, vmid, i,
   346								flush_type);
   347			} else {
   348				gmc_v12_0_flush_gpu_tlb(adev, vmid, AMDGPU_GFXHUB(0),
   349							flush_type);
   350			}
   351		}
   352	}
   353	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux