linux/drivers/gpu/drm/amd/amdgpu
Ding Pixel c5f21c9f87 drm/amdgpu: check ring being ready before using
Return success when the ring is properly initialized, otherwise return
failure.

Tonga SRIOV VF doesn't have UVD and VCE engines, the initialization of
these IPs is bypassed. The system crashes if application submit IB to
their rings which are not ready to use. It could be a common issue if
IP having ring buffer is disabled for some reason on specific ASIC, so
it should check the ring being ready to use.

Bug: amdgpu_test crashes system on Tonga VF.

Signed-off-by: Ding Pixel <Pixel.Ding@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2017-01-23 16:47:01 -05:00
..
amdgpu.h Main pull request for drm for 4.10 kernel 2016-12-13 09:35:09 -08:00
amdgpu_acp.c drm/virtio: fix busid in a different way, allocate more vbufs. 2016-11-30 14:18:51 +10:00
amdgpu_acp.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
amdgpu_acpi.c drm/amdgpu/atif: Send a hotplug event when we get dgpu display request 2016-09-22 10:30:36 -04:00
amdgpu_afmt.c
amdgpu_amdkfd.c drm/amdgpu: remove unused functions 2016-09-22 10:24:16 -04:00
amdgpu_amdkfd.h
amdgpu_amdkfd_gfx_v7.c drm/amdkfd: Fix possible infinite loop 2016-09-19 20:58:35 +03:00
amdgpu_amdkfd_gfx_v8.c drm/amdkfd: Fix possible infinite loop 2016-09-19 20:58:35 +03:00
amdgpu_atombios.c drm/amdgpu/atom: remove a bunch of unused functions 2016-10-25 14:38:56 -04:00
amdgpu_atombios.h drm/amdgpu/atom: remove a bunch of unused functions 2016-10-25 14:38:56 -04:00
amdgpu_atpx_handler.c drm/amdgpu: fix check for port PM availability 2016-11-29 09:23:39 -05:00
amdgpu_benchmark.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_bios.c Merge branches 'acpica' and 'acpi-scan' 2016-12-22 14:34:24 +01:00
amdgpu_bo_list.c drm/amdgpu: Attach exclusive fence to prime exported bo's. (v5) 2016-11-11 10:20:04 -05:00
amdgpu_cgs.c drm/amd/amdgpu: add Polaris12 support (v3) 2017-01-06 17:07:54 -05:00
amdgpu_connectors.c drm/virtio: fix busid in a different way, allocate more vbufs. 2016-11-30 14:18:51 +10:00
amdgpu_connectors.h
amdgpu_cs.c drm/amdgpu: check ring being ready before using 2017-01-23 16:47:01 -05:00
amdgpu_ctx.c Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_device.c drm/amd/amdgpu: add Polaris12 support (v3) 2017-01-06 17:07:54 -05:00
amdgpu_display.c drm/amdgpu: use pin rather than pin_restricted in a few cases 2016-12-08 14:12:19 -05:00
amdgpu_dpm.c drm/amdgpu/dpm: add an implementation for get_vce_clock_state (v2) 2016-10-25 14:38:41 -04:00
amdgpu_dpm.h drm/amdgpu: use mask bit for deep sleep feature on dpm. 2016-11-11 10:21:01 -05:00
amdgpu_drv.c drm/amd/amdgpu: add Polaris12 PCI ID 2017-01-06 17:08:16 -05:00
amdgpu_drv.h
amdgpu_encoders.c
amdgpu_fb.c drm/amdgpu: use pin rather than pin_restricted in a few cases 2016-12-08 14:12:19 -05:00
amdgpu_fence.c drm/amdgpu:no gpu scheduler for KIQ 2016-11-11 10:20:58 -05:00
amdgpu_gart.c drm/amdgpu: add AMDGPU_GEM_CREATE_VRAM_CONTIGUOUS flag v3 2016-10-25 14:38:13 -04:00
amdgpu_gds.h amdgpu: move ttm stuff to amdgpu_ttm.h 2016-08-19 12:30:58 -04:00
amdgpu_gem.c drm/amdgpu: use amdgpu_vm_get_pd_bo in the GEM code 2016-10-25 14:38:30 -04:00
amdgpu_gfx.c drm/amdgpu: change function declarations and add missing header dependencies 2016-10-25 14:38:58 -04:00
amdgpu_gfx.h drm/amdgpu: change function declarations and add missing header dependencies 2016-10-25 14:38:58 -04:00
amdgpu_gtt_mgr.c drm/amdgpu: fix gtt available page num accounting 2016-12-06 18:08:34 -05:00
amdgpu_i2c.c drm/amdgpu: warn if dp aux is still attached on free 2016-10-06 12:39:03 -04:00
amdgpu_i2c.h drm/amdgpu/i2c: add const where appropriate 2016-09-27 13:00:52 -04:00
amdgpu_ib.c Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_ih.c drm/amdgpu: free the BO in kernel by helper amdgpu_bo_free_kernel() 2016-09-14 15:10:27 -04:00
amdgpu_ih.h
amdgpu_ioc32.c
amdgpu_irq.c drm/amdgpu: remove amdgpu_irq_get_delayed 2016-11-23 15:08:43 -05:00
amdgpu_irq.h drm/amdgpu: remove amdgpu_irq_get_delayed 2016-11-23 15:08:43 -05:00
amdgpu_job.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_kms.c drm/amd/amdgpu: export vbios information (v2) 2016-12-08 14:12:09 -05:00
amdgpu_mn.c drm/amdgpu: remove adev pointer from struct amdgpu_bo v2 2016-10-25 14:38:26 -04:00
amdgpu_mode.h drm/amdgpu: drop is_display_hung from display funcs 2016-11-23 15:13:21 -05:00
amdgpu_object.c drm/amdgpu: improve AMDGPU_GEM_CREATE_VRAM_CLEARED handling (v2) 2016-11-23 15:08:45 -05:00
amdgpu_object.h Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_pll.c drm/amdgpu: add missing header dependencies 2016-09-14 15:10:37 -04:00
amdgpu_pll.h
amdgpu_pm.c drm/amd/amdgpu: expose fan rpm though hwmon 2016-11-11 10:20:56 -05:00
amdgpu_pm.h
amdgpu_powerplay.c drm/amdgpu/powerplay: add Polaris12 support 2017-01-06 17:08:06 -05:00
amdgpu_powerplay.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
amdgpu_prime.c drm/amdgpu: Attach exclusive fence to prime exported bo's. (v5) 2016-11-11 10:20:04 -05:00
amdgpu_ring.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2016-12-16 10:24:44 -08:00
amdgpu_ring.h drm/amdgpu: Add a ring type KIQ definition 2016-11-11 10:20:58 -05:00
amdgpu_sa.c drm/amd/amdgpu : Fix NULL pointer comparison 2016-11-11 10:21:07 -05:00
amdgpu_sync.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_sync.h Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_test.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_trace.h dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_trace_points.c
amdgpu_ttm.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2016-12-16 10:24:44 -08:00
amdgpu_ttm.h Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_ucode.c drm/amdgpu:properly fix some JumpTable issues 2016-10-25 14:38:23 -04:00
amdgpu_ucode.h drm/amdgpu:add MEC_STORAGE ucode id for sriov 2016-10-25 14:38:23 -04:00
amdgpu_uvd.c drm/amd/amdgpu: add Polaris12 support (v3) 2017-01-06 17:07:54 -05:00
amdgpu_uvd.h dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
amdgpu_vce.c drm/amd/amdgpu: add Polaris12 support (v3) 2017-01-06 17:07:54 -05:00
amdgpu_vce.h Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_virt.h drm/amdgpu:cleanup virt related define 2016-09-22 10:24:20 -04:00
amdgpu_vm.c drm/amdgpu: use AMDGPU_GEM_CREATE_VRAM_CLEARED for VM PD/PTs (v2) 2016-11-23 15:08:46 -05:00
amdgpu_vm.h Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
amdgpu_vram_mgr.c drm/amdgpu: disable the VRAM manager on special placements v2 2016-11-11 10:21:12 -05:00
atom.c
atom.h
atombios_crtc.c drm/amdgpu: change function declarations and add missing header dependencies 2016-10-25 14:38:58 -04:00
atombios_crtc.h
atombios_dp.c drm/amdgpu: Don't retry 7 times in amdgpu_atombios_dp_get_dpcd() 2016-08-08 13:28:39 -04:00
atombios_dp.h
atombios_encoders.c
atombios_encoders.h
atombios_i2c.c drm/amdgpu: add missing header dependencies 2016-09-14 15:10:37 -04:00
atombios_i2c.h
ci_dpm.c drm/amdgpu: fix CI bug uvd status not true in debugfs. 2016-12-06 18:08:25 -05:00
ci_dpm.h
ci_smc.c
cik.c drm/amdgpu: consolidate atom scratch reg handling for hangs 2016-10-25 14:38:56 -04:00
cik.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cik_dpm.h
cik_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cik_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cik_sdma.c Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
cik_sdma.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cikd.h drm/amdgpu/dce8: simplify hpd code 2016-10-25 14:38:08 -04:00
clearstate_ci.h
clearstate_defs.h
clearstate_vi.h
cz_dpm.c drm/amdgpu: refine cz uvd clock gate logic. 2016-11-23 15:08:39 -05:00
cz_dpm.h
cz_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cz_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
cz_smc.c drm/amdgpu: remove unused functions 2016-09-22 10:24:16 -04:00
cz_smumgr.h
dce_v6_0.c Revert "drm/amdgpu: Only update the CUR_SIZE register when necessary" 2017-01-13 12:03:44 -05:00
dce_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_v8_0.c Revert "drm/amdgpu: Only update the CUR_SIZE register when necessary" 2017-01-13 12:03:44 -05:00
dce_v8_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_v10_0.c Revert "drm/amdgpu: Only update the CUR_SIZE register when necessary" 2017-01-13 12:03:44 -05:00
dce_v10_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_v11_0.c Revert "drm/amdgpu: Only update the CUR_SIZE register when necessary" 2017-01-13 12:03:44 -05:00
dce_v11_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
dce_virtual.c ktime: Cleanup ktime_set() usage 2016-12-25 17:21:22 +01:00
dce_virtual.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gfx_v6_0.c drm/amdgpu: update tile table for oland/hainan 2016-12-20 19:43:39 -05:00
gfx_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gfx_v7_0.c drm/amd/amdgpu: Add gpr reading for GFX v7 2016-12-08 14:12:18 -05:00
gfx_v7_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gfx_v8_0.c drm/amd/amdgpu: add Polaris12 support (v3) 2017-01-06 17:07:54 -05:00
gfx_v8_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gmc_v6_0.c drm/amdgpu: fix vm_fault_stop on gfx6 2017-01-12 17:39:34 -05:00
gmc_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gmc_v7_0.c Revert "drm/amdgpu: use the kernel zone memory size as the max remote memory in amdgpu" 2016-12-06 18:08:21 -05:00
gmc_v7_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
gmc_v8_0.c drm/amd/amdgpu: add Polaris12 support (v3) 2017-01-06 17:07:54 -05:00
gmc_v8_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
iceland_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
iceland_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
iceland_sdma_pkt_open.h
Kconfig drm/amdgpu: remove DRM_AMD_POWERPLAY 2016-10-04 11:15:59 -04:00
kv_dpm.c drm/amdgpu: use mask bit for deep sleep feature on dpm. 2016-11-11 10:21:01 -05:00
kv_dpm.h
kv_smc.c
Makefile drm/amdgpu: add VRAM manager v2 2016-10-25 14:38:16 -04:00
ObjectID.h Revert "drm/amdgpu: Add virtual connector and encoder macros." 2016-10-25 14:38:06 -04:00
ppsmc.h
r600_dpm.h drm/amdgpu: add SI DPM support (v4) 2016-08-31 15:21:09 -04:00
sdma_v2_4.c drm/amdgpu: cleanup unused iterator members for sdma v2.4 2016-11-23 15:08:41 -05:00
sdma_v2_4.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
sdma_v3_0.c drm/amd/amdgpu: add Polaris12 support (v3) 2017-01-06 17:07:54 -05:00
sdma_v3_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si.c drm/amdgpu: update rev id for verde 2016-12-20 19:43:23 -05:00
si.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si_dma.c Merge tag 'topic/drm-misc-2016-10-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next 2016-10-28 11:33:52 +10:00
si_dma.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si_dpm.c drm/amdgpu: add support for new hainan variants 2017-01-17 15:25:41 -05:00
si_dpm.h drm/amdgpu: add SI DPM support (v4) 2016-08-31 15:21:09 -04:00
si_enums.h drm/amd/amdgpu: port of DCE v6 to new headers (v3) 2016-11-23 15:08:42 -05:00
si_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
si_smc.c drm/amdgpu/si/dpm: fix symbol conflicts with radeon 2016-09-14 15:10:40 -04:00
sislands_smc.h drm/amdgpu/si/dpm: fix phase shedding setup 2016-09-28 16:13:17 -04:00
smu_ucode_xfer_vi.h
tonga_ih.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
tonga_ih.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
tonga_sdma_pkt_open.h
uvd_v4_2.c drm/amdgpu: change clock gating mode for uvd_v4. 2017-01-17 15:25:26 -05:00
uvd_v4_2.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
uvd_v5_0.c drm/amdgpu: remove static integer for uvd pp state 2017-01-06 17:08:27 -05:00
uvd_v5_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
uvd_v6_0.c drm/amdgpu: fix bug mclk can't change on Polaris 2016-12-06 18:08:23 -05:00
uvd_v6_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vce_v2_0.c drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vce_v2_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vce_v3_0.c drm/amdgpu: fix program vce instance logic error. 2017-01-17 15:25:04 -05:00
vce_v3_0.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vi.c drm/amd/amdgpu: add Polaris12 support (v3) 2017-01-06 17:07:54 -05:00
vi.h drm/amdgpu: rework IP block registration (v2) 2016-10-25 14:38:45 -04:00
vi_dpm.h
vid.h drm/amdgpu: implement raster configuration for gfx v8 2016-09-19 14:38:25 -04:00