[agd5f:drm-next 578/599] drivers/gpu/drm/amd/amdgpu/vcn_sw_ring.c:26:6: warning: no previous prototype for 'vcn_dec_sw_ring_emit_fence'

From: kernel test robot
Date: Fri May 06 2022 - 22:07:48 EST


tree: https://gitlab.freedesktop.org/agd5f/linux.git drm-next
head: 3170f5f234272247989fafee4cba4cbbc822631c
commit: 60a2e9eecf1676e3d59f050e5c9688830d7425cc [578/599] drm/amdgpu/vcn: add common vcn sofware ring decode
config: arc-randconfig-r035-20220506 (https://download.01.org/0day-ci/archive/20220507/202205070951.rG9TBWtB-lkp@xxxxxxxxx/config)
compiler: arc-elf-gcc (GCC) 11.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git remote add agd5f https://gitlab.freedesktop.org/agd5f/linux.git
git fetch --no-tags agd5f drm-next
git checkout 60a2e9eecf1676e3d59f050e5c9688830d7425cc
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=arc SHELL=/bin/bash drivers/gpu/drm/amd/amdgpu/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All warnings (new ones prefixed by >>):

>> drivers/gpu/drm/amd/amdgpu/vcn_sw_ring.c:26:6: warning: no previous prototype for 'vcn_dec_sw_ring_emit_fence' [-Wmissing-prototypes]
26 | void vcn_dec_sw_ring_emit_fence(struct amdgpu_ring *ring, u64 addr,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/vcn_sw_ring.c:38:6: warning: no previous prototype for 'vcn_dec_sw_ring_insert_end' [-Wmissing-prototypes]
38 | void vcn_dec_sw_ring_insert_end(struct amdgpu_ring *ring)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/vcn_sw_ring.c:43:6: warning: no previous prototype for 'vcn_dec_sw_ring_emit_ib' [-Wmissing-prototypes]
43 | void vcn_dec_sw_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job,
| ^~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/vcn_sw_ring.c:55:6: warning: no previous prototype for 'vcn_dec_sw_ring_emit_reg_wait' [-Wmissing-prototypes]
55 | void vcn_dec_sw_ring_emit_reg_wait(struct amdgpu_ring *ring, uint32_t reg,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/vcn_sw_ring.c:64:6: warning: no previous prototype for 'vcn_dec_sw_ring_emit_vm_flush' [-Wmissing-prototypes]
64 | void vcn_dec_sw_ring_emit_vm_flush(struct amdgpu_ring *ring,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/vcn_sw_ring.c:79:6: warning: no previous prototype for 'vcn_dec_sw_ring_emit_wreg' [-Wmissing-prototypes]
79 | void vcn_dec_sw_ring_emit_wreg(struct amdgpu_ring *ring, uint32_t reg,
| ^~~~~~~~~~~~~~~~~~~~~~~~~


vim +/vcn_dec_sw_ring_emit_fence +26 drivers/gpu/drm/amd/amdgpu/vcn_sw_ring.c

25
> 26 void vcn_dec_sw_ring_emit_fence(struct amdgpu_ring *ring, u64 addr,
27 u64 seq, uint32_t flags)
28 {
29 WARN_ON(flags & AMDGPU_FENCE_FLAG_64BIT);
30
31 amdgpu_ring_write(ring, VCN_DEC_SW_CMD_FENCE);
32 amdgpu_ring_write(ring, addr);
33 amdgpu_ring_write(ring, upper_32_bits(addr));
34 amdgpu_ring_write(ring, seq);
35 amdgpu_ring_write(ring, VCN_DEC_SW_CMD_TRAP);
36 }
37
> 38 void vcn_dec_sw_ring_insert_end(struct amdgpu_ring *ring)
39 {
40 amdgpu_ring_write(ring, VCN_DEC_SW_CMD_END);
41 }
42
> 43 void vcn_dec_sw_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job,
44 struct amdgpu_ib *ib, uint32_t flags)
45 {
46 uint32_t vmid = AMDGPU_JOB_GET_VMID(job);
47
48 amdgpu_ring_write(ring, VCN_DEC_SW_CMD_IB);
49 amdgpu_ring_write(ring, vmid);
50 amdgpu_ring_write(ring, lower_32_bits(ib->gpu_addr));
51 amdgpu_ring_write(ring, upper_32_bits(ib->gpu_addr));
52 amdgpu_ring_write(ring, ib->length_dw);
53 }
54
> 55 void vcn_dec_sw_ring_emit_reg_wait(struct amdgpu_ring *ring, uint32_t reg,
56 uint32_t val, uint32_t mask)
57 {
58 amdgpu_ring_write(ring, VCN_DEC_SW_CMD_REG_WAIT);
59 amdgpu_ring_write(ring, reg << 2);
60 amdgpu_ring_write(ring, mask);
61 amdgpu_ring_write(ring, val);
62 }
63
> 64 void vcn_dec_sw_ring_emit_vm_flush(struct amdgpu_ring *ring,
65 uint32_t vmid, uint64_t pd_addr)
66 {
67 struct amdgpu_vmhub *hub = &ring->adev->vmhub[ring->funcs->vmhub];
68 uint32_t data0, data1, mask;
69
70 pd_addr = amdgpu_gmc_emit_flush_gpu_tlb(ring, vmid, pd_addr);
71
72 /* wait for register write */
73 data0 = hub->ctx0_ptb_addr_lo32 + vmid * hub->ctx_addr_distance;
74 data1 = lower_32_bits(pd_addr);
75 mask = 0xffffffff;
76 vcn_dec_sw_ring_emit_reg_wait(ring, data0, data1, mask);
77 }
78
> 79 void vcn_dec_sw_ring_emit_wreg(struct amdgpu_ring *ring, uint32_t reg,

--
0-DAY CI Kernel Test Service
https://01.org/lkp