linux_dsm_epyc7002/drivers/gpu/drm/radeon
Jerome Glisse dee53e7fb3 drm/radeon: add an exclusive lock for GPU reset v2
GPU reset need to be exclusive, one happening at a time. For this
add a rw semaphore so that any path that trigger GPU activities
have to take the semaphore as a reader thus allowing concurency.

The GPU reset path take the semaphore as a writer ensuring that
no concurrent reset take place.

v2: init rw semaphore

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
2012-07-17 10:32:02 +02:00
..
reg_srcs drm/radeon/kms: add htile support to the cs checker v3 2012-03-26 09:53:22 +01:00
.gitignore
atom-bits.h
atom-names.h
atom-types.h
atom.c drm/radeon/kms: fix fans after resume 2012-04-02 11:07:42 +01:00
atom.h drm/radeon/kms: fix fans after resume 2012-04-02 11:07:42 +01:00
atombios_crtc.c drm/radeon: SI tiling fixes for display 2012-06-20 19:55:56 +01:00
atombios_dp.c drm/radeon/dp: Probe branch/sink OUIs 2012-05-22 10:19:03 +01:00
atombios_encoders.c drm/radeon: enable HDMI on DCE5 (AKA NI excluding Aruba) 2012-06-16 11:21:19 +01:00
atombios_i2c.c
atombios.h
avivod.h
cayman_blit_shaders.c
cayman_blit_shaders.h
evergreen_blit_kms.c drm/radeon: rework ring syncing code 2012-06-21 09:38:40 +02:00
evergreen_blit_shaders.c
evergreen_blit_shaders.h
evergreen_cs.c drm/radeon: fix tiling and command stream checking on evergreen v3 2012-06-10 17:41:46 +01:00
evergreen_hdmi.c drm/radeon: enable HDMI on DCE5 (AKA NI excluding Aruba) 2012-06-16 11:21:19 +01:00
evergreen_reg.h drm/radeon/kms: get rid of hdmi_config_offset 2012-05-01 10:57:52 +01:00
evergreen.c drm/radeon: replace pflip and sw_int counters with atomics 2012-06-21 09:38:53 +02:00
evergreend.h drm/radeon: add some additional 6xx/7xx/EG register init 2012-06-16 14:30:47 +01:00
Kconfig
Makefile drm/radeon: add PRIME support (v2) 2012-05-23 10:47:11 +01:00
mkregtable.c
ni_reg.h
ni.c drm/radeon: remove radeon_fence_create 2012-06-21 09:38:35 +02:00
nid.h drm/radeon: fixup tiling group size and backendmap on r6xx-r9xx (v4) 2012-06-01 17:00:14 +01:00
ObjectID.h
r100_track.h
r100.c drm/radeon: move r100_enable_bm to a more logic place 2012-06-29 15:14:47 +01:00
r100d.h
r200.c drm/radeon: remove radeon_fence_create 2012-06-21 09:38:35 +02:00
r300_cmdbuf.c
r300_reg.h
r300.c drm/radeon: make the ib an inline object 2012-05-09 17:22:55 +01:00
r300d.h
r420.c drm/radeon: use central function for IB testing 2012-05-03 09:16:10 +01:00
r420d.h
r500_reg.h
r520.c drm/radeon: use central function for IB testing 2012-05-03 09:16:10 +01:00
r520d.h
r600_audio.c drm/radeon: enable HDMI on DCE5 (AKA NI excluding Aruba) 2012-06-16 11:21:19 +01:00
r600_blit_kms.c drm/radeon: rework ring syncing code 2012-06-21 09:38:40 +02:00
r600_blit_shaders.c The following text was taken from the original review request: 2012-03-24 10:08:39 -07:00
r600_blit_shaders.h
r600_blit.c
r600_cp.c drm/radeon: replace udelay with mdelay for long timeouts 2012-04-10 10:21:00 +01:00
r600_cs.c drm/radeon: add support for STRMOUT_BASE_UPDATE on 7xx 2012-06-16 14:30:56 +01:00
r600_hdmi.c drm/radeon: apply Murphy's law to the kms irq code v3 2012-06-21 09:38:50 +02:00
r600_reg.h drm/radeon/hdmi: store info about all AFMT blocks 2012-05-17 12:15:40 +01:00
r600.c drm/radeon: replace pflip and sw_int counters with atomics 2012-06-21 09:38:53 +02:00
r600d.h drm/radeon: add support for STRMOUT_BASE_UPDATE on 7xx 2012-06-16 14:30:56 +01:00
radeon_acpi.c
radeon_agp.c
radeon_asic.c drm/radeon: remove cayman_gpu_is_lockup 2012-05-03 09:16:42 +01:00
radeon_asic.h drm/radeon: rework ring syncing code 2012-06-21 09:38:40 +02:00
radeon_atombios.c drm/radeon: fix XFX quirk 2012-05-29 11:08:19 +01:00
radeon_atpx_handler.c
radeon_benchmark.c drm/radeon: remove radeon_fence_create 2012-06-21 09:38:35 +02:00
radeon_bios.c
radeon_blit_common.h
radeon_clocks.c drm/radeon: replace udelay with mdelay for long timeouts 2012-04-10 10:21:00 +01:00
radeon_combios.c drm/radeon: add connector table for SAM440ep embedded board 2012-05-03 09:19:08 +01:00
radeon_connectors.c Linux 3.4-rc6 2012-05-07 14:02:14 +02:00
radeon_cp.c radeon_cp: Remove unneeded tests for NULL before calling release_firmware() 2012-04-30 13:15:31 +02:00
radeon_cs.c drm/radeon: add an exclusive lock for GPU reset v2 2012-07-17 10:32:02 +02:00
radeon_cursor.c
radeon_device.c drm/radeon: add an exclusive lock for GPU reset v2 2012-07-17 10:32:02 +02:00
radeon_display.c drm: Constify drm_mode_config_funcs pointer 2012-05-22 10:35:07 +01:00
radeon_drv.c drm/radeon: add support for STRMOUT_BASE_UPDATE on 7xx 2012-06-16 14:30:56 +01:00
radeon_drv.h
radeon_encoders.c
radeon_family.h
radeon_fb.c
radeon_fence.c drm/radeon: add error handling to fence_wait_empty_locked 2012-07-17 10:31:39 +02:00
radeon_gart.c drm/radeon: add error handling to radeon_vm_unbind_locked 2012-07-17 10:31:47 +02:00
radeon_gem.c drm/radeon: add an exclusive lock for GPU reset v2 2012-07-17 10:32:02 +02:00
radeon_i2c.c drm/radeon: only add the mm i2c bus if the hw_i2c module param is set 2012-04-11 09:36:53 +01:00
radeon_ioc32.c
radeon_irq_kms.c drm/radeon: replace pflip and sw_int counters with atomics 2012-06-21 09:38:53 +02:00
radeon_irq.c
radeon_kms.c drm/radeon: apply Murphy's law to the kms irq code v3 2012-06-21 09:38:50 +02:00
radeon_legacy_crtc.c
radeon_legacy_encoders.c drm/backlight: initialize struct backlight_properties properly 2012-05-22 10:29:46 +01:00
radeon_legacy_tv.c
radeon_mem.c
radeon_mode.h drm/radeon/hdmi: use new AFMT structs 2012-05-17 12:16:03 +01:00
radeon_object.c drm/radeon: replace vmram_mutex with mclk_lock v2 2012-06-21 09:38:43 +02:00
radeon_object.h drm/radeon: add PRIME support (v2) 2012-05-23 10:47:11 +01:00
radeon_pm.c drm/radeon: apply Murphy's law to the kms irq code v3 2012-06-21 09:38:50 +02:00
radeon_prime.c drm/radeon/prime: reserve/unreserve around pin 2012-06-16 11:14:05 +01:00
radeon_reg.h
radeon_ring.c drm/radeon: rework ring syncing code 2012-06-21 09:38:40 +02:00
radeon_sa.c drm/radeon: remove radeon_fence_create 2012-06-21 09:38:35 +02:00
radeon_semaphore.c drm/radeon: rework ring syncing code 2012-06-21 09:38:40 +02:00
radeon_state.c
radeon_test.c drm/radeon: rework ring syncing code 2012-06-21 09:38:40 +02:00
radeon_trace_points.c
radeon_trace.h
radeon_ttm.c drm/radeon: replace vmram_mutex with mclk_lock v2 2012-06-21 09:38:43 +02:00
radeon.h drm/radeon: add an exclusive lock for GPU reset v2 2012-07-17 10:32:02 +02:00
rs100d.h
rs400.c drm/radeon: use central function for IB testing 2012-05-03 09:16:10 +01:00
rs400d.h
rs600.c drm/radeon: replace pflip and sw_int counters with atomics 2012-06-21 09:38:53 +02:00
rs600d.h drm/radeon/kms: add register definitions for audio 2012-04-24 09:50:13 +01:00
rs690.c drm/radeon: make audio_init consistent across asics 2012-06-05 09:24:33 +01:00
rs690d.h
rv200d.h
rv250d.h
rv350d.h
rv515.c drm/radeon: use central function for IB testing 2012-05-03 09:16:10 +01:00
rv515d.h
rv770.c drm/radeon: add some additional 6xx/7xx/EG register init 2012-06-16 14:30:47 +01:00
rv770d.h drm/radeon: add some additional 6xx/7xx/EG register init 2012-06-16 14:30:47 +01:00
si_blit_shaders.c The following text was taken from the original review request: 2012-03-24 10:08:39 -07:00
si_blit_shaders.h
si_reg.h drm/radeon: SI tiling fixes for display 2012-06-20 19:55:56 +01:00
si.c drm/radeon: replace pflip and sw_int counters with atomics 2012-06-21 09:38:53 +02:00
sid.h drm/radeon: fix gpu_init on si 2012-06-05 09:25:54 +01:00