linux/drivers/gpu/drm/radeon
Dave Airlie c640e8ca17 drm/radeon: fix page flipping hangs on r300/r400
We've been getting reports of complete system lockups with rv3xx hw on
AGP and PCIE when running gnome-shell or kwin with compositing.

It appears the hw really doesn't like setting these registers while
stuff is running, this moves the setting of the registers into the modeset
since they aren't required to be changed anywhere else.

fixes: https://bugs.freedesktop.org/show_bug.cgi?id=35183

Reported-and-tested-by: Álmos <aaalmosss@gmail.com
Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-03-13 10:03:34 +10:00
..
reg_srcs drm/radeon/kms: check AA resolve registers on r300 2011-02-14 10:12:14 +10:00
.gitignore drm: create gitignore file for radeon 2009-09-25 13:08:21 +10:00
atom-bits.h
atom-names.h
atom-types.h
atom.c Merge remote branch 'intel/drm-intel-next' of /ssd/git/drm-next into drm-core-next 2010-12-22 09:48:54 +10:00
atom.h drm/radeon/kms: add ioport register access 2010-08-02 10:00:07 +10:00
atombios_crtc.c drm/radeon/kms: add missing frac fb div flag for dce4+ 2011-02-17 13:55:47 +10:00
atombios_dp.c radeon/kms: fix dp displayport mode validation 2011-01-27 13:52:05 +10:00
atombios.h Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-01-13 10:05:56 -08:00
avivod.h [rfc] drm/radeon/kms: pm debugging check for vbl. 2010-02-23 09:46:21 +10:00
evergreen_blit_kms.c drm/radeon/kms: use linear aligned for evergreen/ni bo blits 2011-02-14 10:10:50 +10:00
evergreen_blit_shaders.c drm/radeon/kms: evergreen/ni big endian fixes (v2) 2011-02-14 10:10:09 +10:00
evergreen_blit_shaders.h drm/radeon/kms: add drm blit support for evergreen 2010-10-06 11:46:30 +10:00
evergreen_cs.c drm/radeon/kms: drop taking lock around crtc lookup. 2010-07-22 09:57:13 +10:00
evergreen_reg.h drm/radeon/kms: add pageflip ioctl support (v3) 2010-11-22 11:51:08 +10:00
evergreen.c drm/radeon/kms: evergreen/ni big endian fixes (v2) 2011-02-14 10:10:09 +10:00
evergreend.h drm/radeon/kms: evergreen/ni big endian fixes (v2) 2011-02-14 10:10:09 +10:00
Kconfig drm/radeon: fix power supply kconfig interaction. 2010-05-21 15:41:20 +10:00
Makefile drm/radeon/kms: add ucode loader for NI 2011-01-07 14:11:40 +10:00
mkregtable.c radeon mkregtable: Add missing fclose() calls 2011-02-14 09:22:54 +10:00
ni_reg.h drm/radeon/kms: add ni_reg.h 2011-01-07 14:11:38 +10:00
ni.c drm/radeon/kms: add ucode loader for NI 2011-01-07 14:11:40 +10:00
nid.h drm/radeon/kms: add ucode loader for NI 2011-01-07 14:11:40 +10:00
ObjectID.h drm/radeon/kms: upstream ObjectID.h updates 2010-11-23 09:23:14 +10:00
r100_track.h drm/radeon/kms: check AA resolve registers on r300 2011-02-14 10:12:14 +10:00
r100.c drm/radeon: fix page flipping hangs on r300/r400 2011-03-13 10:03:34 +10:00
r100d.h drm/radeon: Definition of R_0003C2_GENMO_WT seems wrong 2010-12-21 12:55:33 +10:00
r200.c drm/radeon/kms: optimize CS state checking for r100->r500 2011-02-14 09:23:27 +10:00
r300_cmdbuf.c drm/radeon: Fix sparc regression in r300_scratch() 2010-04-27 09:40:57 +10:00
r300_reg.h drm/radeon/kms: check AA resolve registers on r300 2011-02-14 10:12:14 +10:00
r300.c drm/radeon/kms: do not reject X16 and Y16X16 floating-point formats on r300 2011-02-17 13:55:30 +10:00
r300d.h drm/radeon/kms: manage r300 CMASK RAM access and allow CMASK clear 2011-01-06 13:00:45 +10:00
r420.c drm/radeon/kms: clean up some magic numbers 2011-01-27 13:53:30 +10:00
r420d.h drm/radeon/kms: Convert RS400/RS480 to new init path & fix legacy VGA (V3) 2009-10-02 08:51:46 +10:00
r500_reg.h drm/radeon/kms: add pageflip ioctl support (v3) 2010-11-22 11:51:08 +10:00
r520.c drm/radeon/kms: clean up some magic numbers 2011-01-27 13:53:30 +10:00
r520d.h drm/radeon/kms: Convert R520 to new init path and associated cleanup 2009-09-29 11:15:56 +10:00
r600_audio.c drm/radeon/kms: trivial code style fixes for audio 2010-08-02 10:17:10 +10:00
r600_blit_kms.c drm/radeon/kms: use linear aligned for 6xx/7xx bo blits 2011-02-14 10:10:48 +10:00
r600_blit_shaders.c drm/radeon/kms: 6xx/7xx big endian fixes 2011-02-14 09:23:38 +10:00
r600_blit_shaders.h drm/radeon: add some missing copyright headers 2010-09-13 20:26:04 +10:00
r600_blit.c drm/radeon: 6xx/7xx non-kms endian fixes 2011-02-14 09:23:35 +10:00
r600_cp.c drm/radeon: 6xx/7xx non-kms endian fixes 2011-02-14 09:23:35 +10:00
r600_cs.c drm/radeon/kms: improve 6xx/7xx CS error output 2011-02-14 10:13:01 +10:00
r600_hdmi.c drm/radeon/kms: enable HDMI audio on RS600/RS690/RS740 2010-08-02 10:00:06 +10:00
r600_reg.h drm/radeon/kms: fix r6xx+ scanout on BE systems 2011-01-27 13:54:13 +10:00
r600.c drm/radeon/kms: 6xx/7xx big endian fixes 2011-02-14 09:23:38 +10:00
r600d.h drm/radeon/kms: 6xx/7xx big endian fixes 2011-02-14 09:23:38 +10:00
radeon_acpi.c drm/radeon: tone down overchatty acpi debug messages. 2010-08-04 11:16:56 +10:00
radeon_agp.c drm/radeon/kms: fix agp mode setup on cards that use pcie bridges 2010-08-20 08:48:55 +10:00
radeon_asic.c drm/radeon: add pageflip hooks for fusion 2011-03-11 15:01:15 +10:00
radeon_asic.h drm/radeon/kms: add updated ib_execute function for evergreen 2011-02-04 09:40:51 +10:00
radeon_atombios.c drm/radeon/kms: atombios big endian fixes 2011-02-14 09:23:36 +10:00
radeon_atpx_handler.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
radeon_benchmark.c drm/radeon/kms: fix alignment when allocating buffers 2010-11-18 14:56:53 +10:00
radeon_bios.c drm/radeon/kms: add disabled vbios accessor for NI asics 2011-01-07 14:11:30 +10:00
radeon_clocks.c drm/radeon/kms: remove useless clock code 2010-09-02 11:28:52 +10:00
radeon_combios.c drm/radeon/kms: add connector table for mac g5 9600 2011-02-14 09:22:55 +10:00
radeon_connectors.c drm/radeon/kms: disable underscan by default 2011-01-10 12:39:24 +10:00
radeon_cp.c drm: Remove drm_resource wrappers 2010-06-01 10:07:24 +10:00
radeon_cs.c drm/radeon: Use the ttm execbuf utilities 2010-11-22 13:25:23 +10:00
radeon_cursor.c Merge branch 'drm-fixes' of /home/airlied/kernel/linux-2.6 into drm-core-next 2010-10-19 09:48:34 +10:00
radeon_device.c drm/radeon: fix race between GPU reset and TTM delayed delete thread. 2011-02-14 10:10:24 +10:00
radeon_display.c Revert "drm/radeon/kms: switch back to min->max pll post divider iteration" 2011-02-23 10:07:24 +10:00
radeon_drv.c drm/radeon/kms: add new radeon_info ioctl query for clock crystal freq 2011-01-25 08:41:04 +10:00
radeon_drv.h drm/radeon: 6xx/7xx non-kms endian fixes 2011-02-14 09:23:35 +10:00
radeon_encoders.c drm/radeon/kms: atombios big endian fixes 2011-02-14 09:23:36 +10:00
radeon_family.h drm/radeon/kms: add NI chip families 2011-01-07 14:11:18 +10:00
radeon_fb.c drm/radeon/kms: align height of fb allocation. 2011-02-23 10:08:17 +10:00
radeon_fence.c drm/radeon: add initial tracepoint support. 2010-12-16 14:37:47 +10:00
radeon_gart.c drm/radeon/kms: fix alignment when allocating buffers 2010-11-18 14:56:53 +10:00
radeon_gem.c drm/radeon/kms: fix alignment when allocating buffers 2010-11-18 14:56:53 +10:00
radeon_i2c.c drm/radeon/kms: i2c s/sprintf/snprintf/g for safety 2010-11-19 09:27:48 +10:00
radeon_ioc32.c drm: convert drm_ioctl to unlocked_ioctl 2009-12-18 11:22:31 +10:00
radeon_irq_kms.c drm/radeon/kms: Initialize pageflip spinlocks. 2011-01-24 11:01:26 +10:00
radeon_irq.c drm: radeon: fix error value sign 2010-11-18 14:55:46 +10:00
radeon_kms.c drm/radeon/kms: release CMASK access in preclose_kms 2011-01-28 10:59:12 +10:00
radeon_legacy_crtc.c drm/radeon: fix page flipping hangs on r300/r400 2011-03-13 10:03:34 +10:00
radeon_legacy_encoders.c drm/radeon/kms/atom: cleanup and unify DVO handling 2010-11-18 14:56:31 +10:00
radeon_legacy_tv.c drm/radeon/kms: move a bunch of modesetting debug to correct debug usage. 2010-08-02 10:47:07 +10:00
radeon_mem.c
radeon_mode.h drm/radeon/kms: add connector table for mac g5 9600 2011-02-14 09:22:55 +10:00
radeon_object.c Merge remote branch 'airlied/drm-core-next' into drm-intel-next 2010-12-16 21:02:15 +00:00
radeon_object.h drm/radeon: Use the ttm execbuf utilities 2010-11-22 13:25:23 +10:00
radeon_pm.c drm/radeon/kms: dynamically allocate power state space 2011-02-04 09:46:35 +10:00
radeon_reg.h drm/radeon/kms: clean up some magic numbers 2011-01-27 13:53:30 +10:00
radeon_ring.c drm/radeon/kms: fix alignment when allocating buffers 2010-11-18 14:56:53 +10:00
radeon_state.c drm: block userspace under allocating buffer and having drivers overwrite it (v2) 2010-08-17 14:52:25 +10:00
radeon_test.c drm/radeon/kms: fix alignment when allocating buffers 2010-11-18 14:56:53 +10:00
radeon_trace_points.c drm/radeon: add initial tracepoint support. 2010-12-16 14:37:47 +10:00
radeon_trace.h drm/radeon: add initial tracepoint support. 2010-12-16 14:37:47 +10:00
radeon_ttm.c drm/radeon: fix memory debugging since d961db75ce 2011-02-14 09:22:51 +10:00
radeon.h drm/radeon/kms: dynamically allocate power state space 2011-02-04 09:46:35 +10:00
rs100d.h drm/radeon/kms: Convert R100 to new init path (V2) 2009-10-02 08:51:49 +10:00
rs400.c drm/radeon/kms: clean up some magic numbers 2011-01-27 13:53:30 +10:00
rs400d.h drm/radeon/kms: Convert RS400/RS480 to new init path & fix legacy VGA (V3) 2009-10-02 08:51:46 +10:00
rs600.c drm/radeon/kms: balance asic_reset functions 2011-01-17 12:21:57 +10:00
rs600d.h drm/radeon/kms: enable misc pm power state features on r5xx, rs6xx 2010-05-18 18:21:42 +10:00
rs690.c drm/radeon/kms: fix a few more atombios endian issues 2011-02-15 09:01:21 +10:00
rs690d.h drm/radeon/kms: display watermark updates (v2) 2010-03-31 14:54:47 +10:00
rv200d.h drm/radeon/kms: Convert R100 to new init path (V2) 2009-10-02 08:51:49 +10:00
rv250d.h drm/radeon/kms: Convert R100 to new init path (V2) 2009-10-02 08:51:49 +10:00
rv350d.h drm/radeon/kms: Convert RS400/RS480 to new init path & fix legacy VGA (V3) 2009-10-02 08:51:46 +10:00
rv515.c drm/radeon/kms: clean up some magic numbers 2011-01-27 13:53:30 +10:00
rv515d.h drm/radeon/kms: simplify & improve GPU reset V2 2010-04-06 11:21:11 +10:00
rv770.c drm/radeon/kms: 6xx/7xx big endian fixes 2011-02-14 09:23:38 +10:00
rv770d.h drm/radeon/kms: 6xx/7xx big endian fixes 2011-02-14 09:23:38 +10:00