summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/radeon/radeon_audio.h
diff options
context:
space:
mode:
authorSlava Grigorev <slava.grigorev@amd.com>2014-12-01 13:49:39 -0500
committerAlex Deucher <alexander.deucher@amd.com>2015-01-22 10:39:00 -0500
commit1a626b68fbfa4782477caad56f3b8b652a9dbf7e (patch)
tree6b56038c9f72076fe96f96097b7d318e1f8ff58b /drivers/gpu/drm/radeon/radeon_audio.h
parentbfc1f97d8ac5d3dc6f7ded64ba9adbac371e912c (diff)
radeon/audio: defined initial audio interface that gets initialized via detect() call
Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Slava Grigorev <slava.grigorev@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_audio.h')
-rw-r--r--drivers/gpu/drm/radeon/radeon_audio.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_audio.h b/drivers/gpu/drm/radeon/radeon_audio.h
index 8455fbdf97e4..e4b0b6437df7 100644
--- a/drivers/gpu/drm/radeon/radeon_audio.h
+++ b/drivers/gpu/drm/radeon/radeon_audio.h
@@ -21,9 +21,35 @@
*
* Authors: Slava Grigorev <slava.grigorev@amd.com>
*/
+
#ifndef __RADEON_AUDIO_H__
#define __RADEON_AUDIO_H__
+#include <linux/types.h>
+
+#define RREG32_ENDPOINT(block, reg) \
+ radeon_audio_endpoint_rreg(rdev, (block), (reg))
+#define WREG32_ENDPOINT(block, reg, v) \
+ radeon_audio_endpoint_wreg(rdev, (block), (reg), (v))
+
+struct radeon_audio_basic_funcs
+{
+ u32 (*endpoint_rreg)(struct radeon_device *rdev, u32 offset, u32 reg);
+ void (*endpoint_wreg)(struct radeon_device *rdev,
+ u32 offset, u32 reg, u32 v);
+};
+
+struct radeon_audio_funcs
+{
+ /* TODO: add mode depended audio interface */
+};
+
int radeon_audio_init(struct radeon_device *rdev);
+void radeon_audio_detect(struct drm_connector *connector,
+ enum drm_connector_status status);
+u32 radeon_audio_endpoint_rreg(struct radeon_device *rdev,
+ u32 offset, u32 reg);
+void radeon_audio_endpoint_wreg(struct radeon_device *rdev,
+ u32 offset, u32 reg, u32 v);
#endif