kernel-ark/drivers/gpu/drm/radeon
Jerome Glisse a1e9ada3e1 drm/radeon/kms: R3XX-R4XX fix GPU reset code
Previous reset code leaded to computer hard lockup (need to unplug
the power too reboot the computer) on various configuration. This
patch change the reset code to avoid hard lockup. The GPU reset
is failing most of the time but at least user can log in remotely
or properly shutdown the computer.

Two issues were leading to hard lockup :
- Writting to the scratch register lead to hard lockup most likely
because the write back mecanism is in fuzy state after GPU lockup.
- Resetting the GPU memory controller and not reinitializing it
after leaded to hard lockup. We did only reinitialize in case of
successfull reset thus unsuccessfull reset quickly leaded to hard
lockup.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-04-27 09:48:16 +10:00
..
reg_srcs drm/radeon/kms: allow R500 regs VAP_ALT_NUM_VERTICES and VAP_INDEX_OFFSET 2010-04-19 14:17:02 +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 branch 'drm-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 2010-04-19 07:27:06 -07:00
atom.h drm/radeon/kms/atom: make sure tables are valid (v2) 2010-03-31 13:11:29 +10:00
atombios_crtc.c Merge branch 'drm-radeon-evergreen-accel' into drm-core-next 2010-04-20 13:16:50 +10:00
atombios_dp.c drm/radeon/kms/dp: disable training pattern on the sink at the end of link training 2010-03-31 13:14:08 +10:00
atombios.h drm/radeon/kms: update atombios.h power tables for evergreen 2010-04-09 10:14:54 +10:00
avivod.h [rfc] drm/radeon/kms: pm debugging check for vbl. 2010-02-23 09:46:21 +10:00
evergreen_reg.h drm/radeon/kms: add initial Evergreen support (Radeon HD 5xxx) 2010-02-09 09:44:02 +10:00
evergreen.c Merge branch 'drm-ttm-unmappable' into drm-core-next 2010-04-20 14:15:09 +10:00
evergreend.h drm/radeon/kms/evergreen: implement irq support 2010-04-09 10:16:09 +10:00
Kconfig drm/radeon/kms: change Kconfig text to reflect the new option. 2010-02-08 15:05:58 +10:00
Makefile drm/radeon: create radeon_asic.c 2010-03-15 11:27:03 +10:00
mkregtable.c drm/radeon: mkregtable.c: close a file before exit 2010-01-08 13:11:55 +10:00
ObjectID.h drm/radeon/kms: pull in the latest upstream ObjectID.h changes 2010-01-08 13:03:57 +10:00
r100_track.h drm/radeon/kms: allow R500 regs VAP_ALT_NUM_VERTICES and VAP_INDEX_OFFSET 2010-04-19 14:17:02 +10:00
r100.c Merge branch 'drm-ttm-unmappable' into drm-core-next 2010-04-20 14:15:09 +10:00
r100d.h drm/radeon/kms: simplify & improve GPU reset V2 2010-04-06 11:21:11 +10:00
r200.c drm/radeon: include radeon_asic.h in the asic specific files 2010-03-15 11:27:22 +10:00
r300_cmdbuf.c drm/radeon: Fix printf type warning in 64bit system. 2010-03-01 22:21:37 +11:00
r300_reg.h drm/radeon/kms: add support for square microtiles on r3xx-r5xx 2010-02-25 11:36:12 +10:00
r300.c drm/radeon/kms: R3XX-R4XX fix GPU reset code 2010-04-27 09:48:16 +10:00
r300d.h drm/radeon/kms: simplify & improve GPU reset V2 2010-04-06 11:21:11 +10:00
r420.c Merge branch 'drm-radeon-lockup' into drm-core-next 2010-04-20 13:15:05 +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 support for hw i2c on r1xx-r5xx 2010-02-09 09:31:10 +10:00
r520.c drm/radeon/kms: simplify & improve GPU reset V2 2010-04-06 11:21:11 +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: HDMI irq support 2010-04-23 14:12:17 +10:00
r600_blit_kms.c drm/radeon/kms: simplify & improve GPU reset V2 2010-04-06 11:21:11 +10:00
r600_blit_shaders.c drm/radeon/r600: add missing license and comments to r600_blit_shaders.c 2010-03-15 10:07:38 +10:00
r600_blit_shaders.h
r600_blit.c drm/radeon: use ALIGN instead of open coding it 2010-03-01 15:56:41 +10:00
r600_cp.c drm/radeon/kms: gfx init fixes for r6xx/r7xx 2010-03-31 09:53:53 +10:00
r600_cs.c drm/radeon/r6xx/r7xx: CS parser fixes 2010-03-31 13:12:17 +10:00
r600_hdmi.c drm/radeon/kms: HDMI irq support 2010-04-23 14:12:17 +10:00
r600_reg.h drm/radeon/kms: HDMI irq support 2010-04-23 14:12:17 +10:00
r600.c drm/radeon/kms: HDMI irq support 2010-04-23 14:12:17 +10:00
r600d.h drm/radeon/r6xx/r7xx: CS parser fixes 2010-03-31 13:12:17 +10:00
radeon_agp.c drm/radeon/kms: simplify memory controller setup V2 2010-02-18 14:49:35 +10:00
radeon_asic.c drm/radeon/kms/evergreen: implement irq support 2010-04-09 10:16:09 +10:00
radeon_asic.h drm/radeon/kms/evergreen: implement irq support 2010-04-09 10:16:09 +10:00
radeon_atombios.c drm/radeon/kms: add support for evergreen power tables 2010-04-09 10:15:27 +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: Skip dma copy test in benchmark if card doesn't have dma engine. 2010-02-11 13:13:25 +10:00
radeon_bios.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_clocks.c drm/radeon/kms: add initial Evergreen support (Radeon HD 5xxx) 2010-02-09 09:44:02 +10:00
radeon_combios.c Merge branch 'drm-edid-fixes' into drm-core-next 2010-04-20 13:14:38 +10:00
radeon_connectors.c Merge branch 'drm-fbdev-cleanup' into drm-core-next 2010-04-20 13:16:04 +10:00
radeon_cp.c drm/radeon: R300 AD only has one quad pipe. 2010-04-06 09:56:40 +10:00
radeon_cs.c drm/radeon/kms: simplify & improve GPU reset V2 2010-04-06 11:21:11 +10:00
radeon_cursor.c Merge remote branch 'korg/drm-radeon-testing' into drm-next-stage 2010-02-26 16:23:23 +10:00
radeon_device.c Merge branch 'drm-fbdev-cleanup' into drm-core-next 2010-04-20 13:16:04 +10:00
radeon_display.c drm/fb: fix fbdev object model + cleanup properly. 2010-04-07 10:21:03 +10:00
radeon_drv.c drm/radeon/kms: allow R500 regs VAP_ALT_NUM_VERTICES and VAP_INDEX_OFFSET 2010-04-19 14:17:02 +10:00
radeon_drv.h drm/radeon: bump the UMS driver version for r6xx/r7xx const buffer support 2010-03-31 13:12:28 +10:00
radeon_encoders.c drm/radeon/kms: disable the tv encoder when tv/cv is not in use 2010-04-19 13:52:52 +10:00
radeon_family.h drm/radeon/kms: print GPU family and device id when loading 2010-04-19 11:25:24 +10:00
radeon_fb.c Merge branch 'drm-fbdev-cleanup' into drm-core-next 2010-04-20 13:16:04 +10:00
radeon_fence.c drm/radeon/kms: R3XX-R4XX fix GPU reset code 2010-04-27 09:48:16 +10:00
radeon_fixed.h drm/radeon/kms/avivo: fix some bugs in the display bandwidth setup 2009-12-10 15:09:05 +10:00
radeon_gart.c drm/radeon/kms: simplify & improve GPU reset V2 2010-04-06 11:21:11 +10:00
radeon_gem.c drm: free core gem object from driver callbacks 2010-04-20 13:19:33 +10:00
radeon_i2c.c drm/radeon/kms: add hw_i2c module option 2010-03-31 14:55:52 +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/kms/fb: add polling support for when nothing is connected. 2010-04-07 10:29:52 +10:00
radeon_irq.c gpu/drm/radeon/radeon_irq.c: move a dereference below a NULL test 2010-01-07 13:56:32 +10:00
radeon_kms.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_legacy_crtc.c drm/radeon/kms/rs4xx: make sure crtcs are enabled when setting timing 2010-03-15 09:59:24 +10:00
radeon_legacy_encoders.c drm/radeon/kms: legacy tv dac cleanup 2010-04-07 10:12:58 +10:00
radeon_legacy_tv.c drm/radeon/kms: fix pal tv-out support on legacy IGP chips 2010-03-15 09:57:42 +10:00
radeon_mem.c
radeon_mode.h drm/radeon/kms: rework audio polling timer 2010-04-23 14:11:17 +10:00
radeon_object.c Merge branch 'drm-ttm-unmappable' into drm-core-next 2010-04-20 14:15:09 +10:00
radeon_object.h drm/radeon/kms: add support for new fault callback V7 2010-04-20 14:12:22 +10:00
radeon_pm.c drm/radeon/kms/pm: fix segfault in clock code 2010-03-31 09:53:46 +10:00
radeon_reg.h drm/radeon/kms: enable ACPI powermanagement mode on radeon gpus. 2010-04-01 12:50:46 +10:00
radeon_ring.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_state.c Merge branch 'for-next' into for-linus 2010-03-08 16:55:37 +01:00
radeon_test.c drm/radeon/kms: simplify memory controller setup V2 2010-02-18 14:49:35 +10:00
radeon_ttm.c Merge branch 'drm-ttm-unmappable' into drm-core-next 2010-04-20 14:15:09 +10:00
radeon.h drm/radeon/kms: HDMI irq support 2010-04-23 14:12:17 +10:00
rs100d.h drm/radeon/kms: Convert R100 to new init path (V2) 2009-10-02 08:51:49 +10:00
rs400.c Merge branch 'drm-radeon-lockup' into drm-core-next 2010-04-20 13:15:05 +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 Merge branch 'drm-radeon-lockup' into drm-core-next 2010-04-20 13:15:05 +10:00
rs600d.h drm/radeon/kms: simplify & improve GPU reset V2 2010-04-06 11:21:11 +10:00
rs690.c drm/radeon/kms: simplify & improve GPU reset V2 2010-04-06 11:21:11 +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 Merge branch 'drm-radeon-lockup' into drm-core-next 2010-04-20 13:15:05 +10:00
rv515d.h drm/radeon/kms: simplify & improve GPU reset V2 2010-04-06 11:21:11 +10:00
rv770.c Merge branch 'drm-ttm-unmappable' into drm-core-next 2010-04-20 14:15:09 +10:00
rv770d.h drm/radeon/kms: add initial Evergreen support (Radeon HD 5xxx) 2010-02-09 09:44:02 +10:00