summaryrefslogtreecommitdiff
path: root/hw/xfree86/i2c/tda8425.h
diff options
context:
space:
mode:
Diffstat (limited to 'hw/xfree86/i2c/tda8425.h')
-rw-r--r--hw/xfree86/i2c/tda8425.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/hw/xfree86/i2c/tda8425.h b/hw/xfree86/i2c/tda8425.h
new file mode 100644
index 0000000..9c33e7f
--- /dev/null
+++ b/hw/xfree86/i2c/tda8425.h
@@ -0,0 +1,41 @@
+#ifndef __TDA8425_H__
+#define __TDA8425_H__
+
+#include "xf86i2c.h"
+
+typedef struct {
+ I2CDevRec d;
+
+ int mux;
+ int stereo;
+ int v_left;
+ int v_right;
+ int bass;
+ int treble;
+ int src_sel;
+ Bool mute;
+ } TDA8425Rec, *TDA8425Ptr;
+
+#define TDA8425_ADDR_1 0x82
+
+/* the third parameter is meant to force detection of tda8425.
+ This is because tda8425 is write-only and complete implementation
+ of I2C protocol is not always available. Besides address there is no good
+ way to autodetect it so we have to _know_ it is there anyway */
+
+#define xf86_Detect_tda8425 Detect_tda8425
+extern _X_EXPORT TDA8425Ptr Detect_tda8425(I2CBusPtr b, I2CSlaveAddr addr,Bool force);
+#define xf86_tda8425_init tda8425_init
+extern _X_EXPORT Bool tda8425_init(TDA8425Ptr t);
+#define xf86_tda8425_setaudio tda8425_setaudio
+extern _X_EXPORT void tda8425_setaudio(TDA8425Ptr t);
+#define xf86_tda8425_mute tda8425_mute
+extern _X_EXPORT void tda8425_mute(TDA8425Ptr t, Bool mute);
+
+#define TDA8425SymbolsList \
+ "Detect_tda8425", \
+ "tda8425_init", \
+ "tda8425_setaudio", \
+ "tda8425_mute"
+
+#endif
contact: Jan Huwald // Impressum