diff options
author | Christian Koenig <deathsimple@vodafone.de> | 2009-10-11 17:49:13 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2009-12-16 00:46:48 -0500 |
commit | dafc3bd515d6079406986f7748b48adb3c7170f2 (patch) | |
tree | e59a56d8a29a1823f197b2fd3b9f61b13a317b3a /drivers/gpu/drm/radeon/radeon.h | |
parent | 7923c615b811945a9d9f456c92a7a32c34167458 (diff) |
drm/radeon/kms: HDMI support for R600 KMS
Adding basic HDMI support for R600 KMS, ported from radeonhd ddx.
[airlied:- checkpatch cleanups]
Signed-off-by: Christian Koenig <deathsimple@vodafone.de>
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 | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h index e3c494097f67..cd650fd3964e 100644 --- a/drivers/gpu/drm/radeon/radeon.h +++ b/drivers/gpu/drm/radeon/radeon.h | |||
@@ -89,6 +89,7 @@ extern int radeon_testing; | |||
89 | extern int radeon_connector_table; | 89 | extern int radeon_connector_table; |
90 | extern int radeon_tv; | 90 | extern int radeon_tv; |
91 | extern int radeon_new_pll; | 91 | extern int radeon_new_pll; |
92 | extern int radeon_audio; | ||
92 | 93 | ||
93 | /* | 94 | /* |
94 | * Copy from radeon_drv.h so we don't have to include both and have conflicting | 95 | * Copy from radeon_drv.h so we don't have to include both and have conflicting |
@@ -814,6 +815,14 @@ struct radeon_device { | |||
814 | struct r600_ih ih; /* r6/700 interrupt ring */ | 815 | struct r600_ih ih; /* r6/700 interrupt ring */ |
815 | struct workqueue_struct *wq; | 816 | struct workqueue_struct *wq; |
816 | struct work_struct hotplug_work; | 817 | struct work_struct hotplug_work; |
818 | |||
819 | /* audio stuff */ | ||
820 | struct timer_list audio_timer; | ||
821 | int audio_channels; | ||
822 | int audio_rate; | ||
823 | int audio_bits_per_sample; | ||
824 | uint8_t audio_status_bits; | ||
825 | uint8_t audio_category_code; | ||
817 | }; | 826 | }; |
818 | 827 | ||
819 | int radeon_device_init(struct radeon_device *rdev, | 828 | int radeon_device_init(struct radeon_device *rdev, |
@@ -1147,6 +1156,21 @@ extern void r600_irq_fini(struct radeon_device *rdev); | |||
1147 | extern void r600_ih_ring_init(struct radeon_device *rdev, unsigned ring_size); | 1156 | extern void r600_ih_ring_init(struct radeon_device *rdev, unsigned ring_size); |
1148 | extern int r600_irq_set(struct radeon_device *rdev); | 1157 | extern int r600_irq_set(struct radeon_device *rdev); |
1149 | 1158 | ||
1159 | extern int r600_audio_init(struct radeon_device *rdev); | ||
1160 | extern int r600_audio_tmds_index(struct drm_encoder *encoder); | ||
1161 | extern void r600_audio_set_clock(struct drm_encoder *encoder, int clock); | ||
1162 | extern void r600_audio_fini(struct radeon_device *rdev); | ||
1163 | extern void r600_hdmi_init(struct drm_encoder *encoder); | ||
1164 | extern void r600_hdmi_enable(struct drm_encoder *encoder, int enable); | ||
1165 | extern void r600_hdmi_setmode(struct drm_encoder *encoder, struct drm_display_mode *mode); | ||
1166 | extern int r600_hdmi_buffer_status_changed(struct drm_encoder *encoder); | ||
1167 | extern void r600_hdmi_update_audio_settings(struct drm_encoder *encoder, | ||
1168 | int channels, | ||
1169 | int rate, | ||
1170 | int bps, | ||
1171 | uint8_t status_bits, | ||
1172 | uint8_t category_code); | ||
1173 | |||
1150 | #include "radeon_object.h" | 1174 | #include "radeon_object.h" |
1151 | 1175 | ||
1152 | #endif | 1176 | #endif |