diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2010-04-22 12:52:11 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2010-05-18 04:20:49 -0400 |
commit | 2031f77ca9c17133869b265210418959a909d259 (patch) | |
tree | 21fc2aedea8f3c80c4de1d7b1168479bc7a1ce98 /drivers/gpu/drm/radeon/radeon.h | |
parent | def9ba9cf6a8266ee1ffd72556db002c3a2663db (diff) |
drm/radeon/kms: add support for gui idle interrupts (v4)
Useful for certain power management operations. You
need to wait for the GUI engine (2D, 3D, CP, etc.) to be
idle before changing clocks or adjusting engine parameters.
(v2) Fix gui idle enable on pre-r6xx asics
(v3) The gui idle interrrupt status bit is permanently asserted
on pre-r6xx chips, but the interrrupt is still generated.
workaround it in the driver.
(v4) Add support for evergreen
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon.h')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h index bb4a2a66f07..433937109af 100644 --- a/drivers/gpu/drm/radeon/radeon.h +++ b/drivers/gpu/drm/radeon/radeon.h | |||
@@ -376,6 +376,9 @@ struct radeon_irq { | |||
376 | wait_queue_head_t vblank_queue; | 376 | wait_queue_head_t vblank_queue; |
377 | /* FIXME: use defines for max hpd/dacs */ | 377 | /* FIXME: use defines for max hpd/dacs */ |
378 | bool hpd[6]; | 378 | bool hpd[6]; |
379 | bool gui_idle; | ||
380 | bool gui_idle_acked; | ||
381 | wait_queue_head_t idle_queue; | ||
379 | /* FIXME: use defines for max HDMI blocks */ | 382 | /* FIXME: use defines for max HDMI blocks */ |
380 | bool hdmi[2]; | 383 | bool hdmi[2]; |
381 | spinlock_t sw_lock; | 384 | spinlock_t sw_lock; |
@@ -694,6 +697,7 @@ struct radeon_pm { | |||
694 | int active_crtcs; | 697 | int active_crtcs; |
695 | int req_vblank; | 698 | int req_vblank; |
696 | bool vblank_sync; | 699 | bool vblank_sync; |
700 | bool gui_idle; | ||
697 | fixed20_12 max_bandwidth; | 701 | fixed20_12 max_bandwidth; |
698 | fixed20_12 igp_sideport_mclk; | 702 | fixed20_12 igp_sideport_mclk; |
699 | fixed20_12 igp_system_mclk; | 703 | fixed20_12 igp_system_mclk; |