aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/radeon.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon.h')
-rw-r--r--drivers/gpu/drm/radeon/radeon.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
index f3deb4982b2d..a15cf9ceb9a7 100644
--- a/drivers/gpu/drm/radeon/radeon.h
+++ b/drivers/gpu/drm/radeon/radeon.h
@@ -339,6 +339,8 @@ struct radeon_irq {
339 bool sw_int; 339 bool sw_int;
340 /* FIXME: use a define max crtc rather than hardcode it */ 340 /* FIXME: use a define max crtc rather than hardcode it */
341 bool crtc_vblank_int[2]; 341 bool crtc_vblank_int[2];
342 /* FIXME: use defines for max hpd/dacs */
343 bool hpd[6];
342 spinlock_t sw_lock; 344 spinlock_t sw_lock;
343 int sw_refcount; 345 int sw_refcount;
344}; 346};
@@ -647,6 +649,10 @@ struct radeon_asic {
647 int (*clear_surface_reg)(struct radeon_device *rdev, int reg); 649 int (*clear_surface_reg)(struct radeon_device *rdev, int reg);
648 void (*bandwidth_update)(struct radeon_device *rdev); 650 void (*bandwidth_update)(struct radeon_device *rdev);
649 void (*hdp_flush)(struct radeon_device *rdev); 651 void (*hdp_flush)(struct radeon_device *rdev);
652 void (*hpd_init)(struct radeon_device *rdev);
653 void (*hpd_fini)(struct radeon_device *rdev);
654 bool (*hpd_sense)(struct radeon_device *rdev, enum radeon_hpd_id hpd);
655 void (*hpd_set_polarity)(struct radeon_device *rdev, enum radeon_hpd_id hpd);
650}; 656};
651 657
652/* 658/*
@@ -803,6 +809,8 @@ struct radeon_device {
803 struct r600_blit r600_blit; 809 struct r600_blit r600_blit;
804 int msi_enabled; /* msi enabled */ 810 int msi_enabled; /* msi enabled */
805 struct r600_ih ih; /* r6/700 interrupt ring */ 811 struct r600_ih ih; /* r6/700 interrupt ring */
812 struct workqueue_struct *wq;
813 struct work_struct hotplug_work;
806}; 814};
807 815
808int radeon_device_init(struct radeon_device *rdev, 816int radeon_device_init(struct radeon_device *rdev,
@@ -986,6 +994,10 @@ static inline void radeon_ring_write(struct radeon_device *rdev, uint32_t v)
986#define radeon_clear_surface_reg(rdev, r) ((rdev)->asic->clear_surface_reg((rdev), (r))) 994#define radeon_clear_surface_reg(rdev, r) ((rdev)->asic->clear_surface_reg((rdev), (r)))
987#define radeon_bandwidth_update(rdev) (rdev)->asic->bandwidth_update((rdev)) 995#define radeon_bandwidth_update(rdev) (rdev)->asic->bandwidth_update((rdev))
988#define radeon_hdp_flush(rdev) (rdev)->asic->hdp_flush((rdev)) 996#define radeon_hdp_flush(rdev) (rdev)->asic->hdp_flush((rdev))
997#define radeon_hpd_init(rdev) (rdev)->asic->hpd_init((rdev))
998#define radeon_hpd_fini(rdev) (rdev)->asic->hpd_fini((rdev))
999#define radeon_hpd_sense(rdev, hpd) (rdev)->asic->hpd_sense((rdev), (hpd))
1000#define radeon_hpd_set_polarity(rdev, hpd) (rdev)->asic->hpd_set_polarity((rdev), (hpd))
989 1001
990/* Common functions */ 1002/* Common functions */
991extern int radeon_gart_table_vram_pin(struct radeon_device *rdev); 1003extern int radeon_gart_table_vram_pin(struct radeon_device *rdev);