Lines Matching refs:adev
35 static void uvd_v5_0_set_ring_funcs(struct amdgpu_device *adev);
36 static void uvd_v5_0_set_irq_funcs(struct amdgpu_device *adev);
37 static int uvd_v5_0_start(struct amdgpu_device *adev);
38 static void uvd_v5_0_stop(struct amdgpu_device *adev);
49 struct amdgpu_device *adev = ring->adev; in uvd_v5_0_ring_get_rptr() local
63 struct amdgpu_device *adev = ring->adev; in uvd_v5_0_ring_get_wptr() local
77 struct amdgpu_device *adev = ring->adev; in uvd_v5_0_ring_set_wptr() local
84 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_early_init() local
86 uvd_v5_0_set_ring_funcs(adev); in uvd_v5_0_early_init()
87 uvd_v5_0_set_irq_funcs(adev); in uvd_v5_0_early_init()
95 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_sw_init() local
99 r = amdgpu_irq_add_id(adev, 124, &adev->uvd.irq); in uvd_v5_0_sw_init()
103 r = amdgpu_uvd_sw_init(adev); in uvd_v5_0_sw_init()
107 r = amdgpu_uvd_resume(adev); in uvd_v5_0_sw_init()
111 ring = &adev->uvd.ring; in uvd_v5_0_sw_init()
113 r = amdgpu_ring_init(adev, ring, 4096, CP_PACKET2, 0xf, in uvd_v5_0_sw_init()
114 &adev->uvd.irq, 0, AMDGPU_RING_TYPE_UVD); in uvd_v5_0_sw_init()
122 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_sw_fini() local
124 r = amdgpu_uvd_suspend(adev); in uvd_v5_0_sw_fini()
128 r = amdgpu_uvd_sw_fini(adev); in uvd_v5_0_sw_fini()
144 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_hw_init() local
145 struct amdgpu_ring *ring = &adev->uvd.ring; in uvd_v5_0_hw_init()
150 amdgpu_asic_set_uvd_clocks(adev, 53300, 40000); in uvd_v5_0_hw_init()
152 r = uvd_v5_0_start(adev); in uvd_v5_0_hw_init()
192 amdgpu_asic_set_uvd_clocks(adev, 0, 0); in uvd_v5_0_hw_init()
209 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_hw_fini() local
210 struct amdgpu_ring *ring = &adev->uvd.ring; in uvd_v5_0_hw_fini()
212 uvd_v5_0_stop(adev); in uvd_v5_0_hw_fini()
221 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_suspend() local
223 r = amdgpu_uvd_suspend(adev); in uvd_v5_0_suspend()
227 r = uvd_v5_0_hw_fini(adev); in uvd_v5_0_suspend()
237 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_resume() local
239 r = amdgpu_uvd_resume(adev); in uvd_v5_0_resume()
243 r = uvd_v5_0_hw_init(adev); in uvd_v5_0_resume()
257 static void uvd_v5_0_mc_resume(struct amdgpu_device *adev) in uvd_v5_0_mc_resume() argument
264 lower_32_bits(adev->uvd.gpu_addr)); in uvd_v5_0_mc_resume()
266 upper_32_bits(adev->uvd.gpu_addr)); in uvd_v5_0_mc_resume()
269 size = AMDGPU_GPU_PAGE_ALIGN(adev->uvd.fw->size + 4); in uvd_v5_0_mc_resume()
291 static int uvd_v5_0_start(struct amdgpu_device *adev) in uvd_v5_0_start() argument
293 struct amdgpu_ring *ring = &adev->uvd.ring; in uvd_v5_0_start()
306 uvd_v5_0_mc_resume(adev); in uvd_v5_0_start()
435 static void uvd_v5_0_stop(struct amdgpu_device *adev) in uvd_v5_0_stop() argument
521 struct amdgpu_device *adev = ring->adev; in uvd_v5_0_ring_test_ring() local
536 for (i = 0; i < adev->usec_timeout; i++) { in uvd_v5_0_ring_test_ring()
543 if (i < adev->usec_timeout) { in uvd_v5_0_ring_test_ring()
582 struct amdgpu_device *adev = ring->adev; in uvd_v5_0_ring_test_ib() local
586 r = amdgpu_asic_set_uvd_clocks(adev, 53300, 40000); in uvd_v5_0_ring_test_ib()
612 amdgpu_asic_set_uvd_clocks(adev, 0, 0); in uvd_v5_0_ring_test_ib()
618 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_is_idle() local
626 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_wait_for_idle() local
628 for (i = 0; i < adev->usec_timeout; i++) { in uvd_v5_0_wait_for_idle()
637 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_soft_reset() local
639 uvd_v5_0_stop(adev); in uvd_v5_0_soft_reset()
645 return uvd_v5_0_start(adev); in uvd_v5_0_soft_reset()
650 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_print_status() local
651 dev_info(adev->dev, "UVD 5.0 registers\n"); in uvd_v5_0_print_status()
652 dev_info(adev->dev, " UVD_SEMA_ADDR_LOW=0x%08X\n", in uvd_v5_0_print_status()
654 dev_info(adev->dev, " UVD_SEMA_ADDR_HIGH=0x%08X\n", in uvd_v5_0_print_status()
656 dev_info(adev->dev, " UVD_SEMA_CMD=0x%08X\n", in uvd_v5_0_print_status()
658 dev_info(adev->dev, " UVD_GPCOM_VCPU_CMD=0x%08X\n", in uvd_v5_0_print_status()
660 dev_info(adev->dev, " UVD_GPCOM_VCPU_DATA0=0x%08X\n", in uvd_v5_0_print_status()
662 dev_info(adev->dev, " UVD_GPCOM_VCPU_DATA1=0x%08X\n", in uvd_v5_0_print_status()
664 dev_info(adev->dev, " UVD_ENGINE_CNTL=0x%08X\n", in uvd_v5_0_print_status()
666 dev_info(adev->dev, " UVD_UDEC_ADDR_CONFIG=0x%08X\n", in uvd_v5_0_print_status()
668 dev_info(adev->dev, " UVD_UDEC_DB_ADDR_CONFIG=0x%08X\n", in uvd_v5_0_print_status()
670 dev_info(adev->dev, " UVD_UDEC_DBW_ADDR_CONFIG=0x%08X\n", in uvd_v5_0_print_status()
672 dev_info(adev->dev, " UVD_SEMA_CNTL=0x%08X\n", in uvd_v5_0_print_status()
674 dev_info(adev->dev, " UVD_LMI_EXT40_ADDR=0x%08X\n", in uvd_v5_0_print_status()
676 dev_info(adev->dev, " UVD_CTX_INDEX=0x%08X\n", in uvd_v5_0_print_status()
678 dev_info(adev->dev, " UVD_CTX_DATA=0x%08X\n", in uvd_v5_0_print_status()
680 dev_info(adev->dev, " UVD_CGC_GATE=0x%08X\n", in uvd_v5_0_print_status()
682 dev_info(adev->dev, " UVD_CGC_CTRL=0x%08X\n", in uvd_v5_0_print_status()
684 dev_info(adev->dev, " UVD_LMI_CTRL2=0x%08X\n", in uvd_v5_0_print_status()
686 dev_info(adev->dev, " UVD_MASTINT_EN=0x%08X\n", in uvd_v5_0_print_status()
688 dev_info(adev->dev, " UVD_LMI_ADDR_EXT=0x%08X\n", in uvd_v5_0_print_status()
690 dev_info(adev->dev, " UVD_LMI_CTRL=0x%08X\n", in uvd_v5_0_print_status()
692 dev_info(adev->dev, " UVD_LMI_SWAP_CNTL=0x%08X\n", in uvd_v5_0_print_status()
694 dev_info(adev->dev, " UVD_MP_SWAP_CNTL=0x%08X\n", in uvd_v5_0_print_status()
696 dev_info(adev->dev, " UVD_MPC_SET_MUXA0=0x%08X\n", in uvd_v5_0_print_status()
698 dev_info(adev->dev, " UVD_MPC_SET_MUXA1=0x%08X\n", in uvd_v5_0_print_status()
700 dev_info(adev->dev, " UVD_MPC_SET_MUXB0=0x%08X\n", in uvd_v5_0_print_status()
702 dev_info(adev->dev, " UVD_MPC_SET_MUXB1=0x%08X\n", in uvd_v5_0_print_status()
704 dev_info(adev->dev, " UVD_MPC_SET_MUX=0x%08X\n", in uvd_v5_0_print_status()
706 dev_info(adev->dev, " UVD_MPC_SET_ALU=0x%08X\n", in uvd_v5_0_print_status()
708 dev_info(adev->dev, " UVD_VCPU_CACHE_OFFSET0=0x%08X\n", in uvd_v5_0_print_status()
710 dev_info(adev->dev, " UVD_VCPU_CACHE_SIZE0=0x%08X\n", in uvd_v5_0_print_status()
712 dev_info(adev->dev, " UVD_VCPU_CACHE_OFFSET1=0x%08X\n", in uvd_v5_0_print_status()
714 dev_info(adev->dev, " UVD_VCPU_CACHE_SIZE1=0x%08X\n", in uvd_v5_0_print_status()
716 dev_info(adev->dev, " UVD_VCPU_CACHE_OFFSET2=0x%08X\n", in uvd_v5_0_print_status()
718 dev_info(adev->dev, " UVD_VCPU_CACHE_SIZE2=0x%08X\n", in uvd_v5_0_print_status()
720 dev_info(adev->dev, " UVD_VCPU_CNTL=0x%08X\n", in uvd_v5_0_print_status()
722 dev_info(adev->dev, " UVD_SOFT_RESET=0x%08X\n", in uvd_v5_0_print_status()
724 dev_info(adev->dev, " UVD_LMI_RBC_IB_64BIT_BAR_LOW=0x%08X\n", in uvd_v5_0_print_status()
726 dev_info(adev->dev, " UVD_LMI_RBC_IB_64BIT_BAR_HIGH=0x%08X\n", in uvd_v5_0_print_status()
728 dev_info(adev->dev, " UVD_RBC_IB_SIZE=0x%08X\n", in uvd_v5_0_print_status()
730 dev_info(adev->dev, " UVD_LMI_RBC_RB_64BIT_BAR_LOW=0x%08X\n", in uvd_v5_0_print_status()
732 dev_info(adev->dev, " UVD_LMI_RBC_RB_64BIT_BAR_HIGH=0x%08X\n", in uvd_v5_0_print_status()
734 dev_info(adev->dev, " UVD_RBC_RB_RPTR=0x%08X\n", in uvd_v5_0_print_status()
736 dev_info(adev->dev, " UVD_RBC_RB_WPTR=0x%08X\n", in uvd_v5_0_print_status()
738 dev_info(adev->dev, " UVD_RBC_RB_WPTR_CNTL=0x%08X\n", in uvd_v5_0_print_status()
740 dev_info(adev->dev, " UVD_RBC_RB_CNTL=0x%08X\n", in uvd_v5_0_print_status()
742 dev_info(adev->dev, " UVD_STATUS=0x%08X\n", in uvd_v5_0_print_status()
744 dev_info(adev->dev, " UVD_SEMA_TIMEOUT_STATUS=0x%08X\n", in uvd_v5_0_print_status()
746 dev_info(adev->dev, " UVD_SEMA_WAIT_INCOMPLETE_TIMEOUT_CNTL=0x%08X\n", in uvd_v5_0_print_status()
748 dev_info(adev->dev, " UVD_SEMA_WAIT_FAULT_TIMEOUT_CNTL=0x%08X\n", in uvd_v5_0_print_status()
750 dev_info(adev->dev, " UVD_SEMA_SIGNAL_INCOMPLETE_TIMEOUT_CNTL=0x%08X\n", in uvd_v5_0_print_status()
752 dev_info(adev->dev, " UVD_CONTEXT_ID=0x%08X\n", in uvd_v5_0_print_status()
756 static int uvd_v5_0_set_interrupt_state(struct amdgpu_device *adev, in uvd_v5_0_set_interrupt_state() argument
765 static int uvd_v5_0_process_interrupt(struct amdgpu_device *adev, in uvd_v5_0_process_interrupt() argument
770 amdgpu_fence_process(&adev->uvd.ring); in uvd_v5_0_process_interrupt()
790 struct amdgpu_device *adev = (struct amdgpu_device *)handle; in uvd_v5_0_set_powergating_state() local
793 uvd_v5_0_stop(adev); in uvd_v5_0_set_powergating_state()
796 return uvd_v5_0_start(adev); in uvd_v5_0_set_powergating_state()
830 static void uvd_v5_0_set_ring_funcs(struct amdgpu_device *adev) in uvd_v5_0_set_ring_funcs() argument
832 adev->uvd.ring.funcs = &uvd_v5_0_ring_funcs; in uvd_v5_0_set_ring_funcs()
840 static void uvd_v5_0_set_irq_funcs(struct amdgpu_device *adev) in uvd_v5_0_set_irq_funcs() argument
842 adev->uvd.irq.num_types = 1; in uvd_v5_0_set_irq_funcs()
843 adev->uvd.irq.funcs = &uvd_v5_0_irq_funcs; in uvd_v5_0_set_irq_funcs()