1706f2543Smrg#ifndef __TDA8425_H__ 2706f2543Smrg#define __TDA8425_H__ 3706f2543Smrg 4706f2543Smrg#include "xf86i2c.h" 5706f2543Smrg 6706f2543Smrgtypedef struct { 7706f2543Smrg I2CDevRec d; 8706f2543Smrg 9706f2543Smrg int mux; 10706f2543Smrg int stereo; 11706f2543Smrg int v_left; 12706f2543Smrg int v_right; 13706f2543Smrg int bass; 14706f2543Smrg int treble; 15706f2543Smrg int src_sel; 16706f2543Smrg Bool mute; 17706f2543Smrg } TDA8425Rec, *TDA8425Ptr; 18706f2543Smrg 19706f2543Smrg#define TDA8425_ADDR_1 0x82 20706f2543Smrg 21706f2543Smrg/* the third parameter is meant to force detection of tda8425. 22706f2543Smrg This is because tda8425 is write-only and complete implementation 23706f2543Smrg of I2C protocol is not always available. Besides address there is no good 24706f2543Smrg way to autodetect it so we have to _know_ it is there anyway */ 25706f2543Smrg 26706f2543Smrg#define xf86_Detect_tda8425 Detect_tda8425 27706f2543Smrgextern _X_EXPORT TDA8425Ptr Detect_tda8425(I2CBusPtr b, I2CSlaveAddr addr,Bool force); 28706f2543Smrg#define xf86_tda8425_init tda8425_init 29706f2543Smrgextern _X_EXPORT Bool tda8425_init(TDA8425Ptr t); 30706f2543Smrg#define xf86_tda8425_setaudio tda8425_setaudio 31706f2543Smrgextern _X_EXPORT void tda8425_setaudio(TDA8425Ptr t); 32706f2543Smrg#define xf86_tda8425_mute tda8425_mute 33706f2543Smrgextern _X_EXPORT void tda8425_mute(TDA8425Ptr t, Bool mute); 34706f2543Smrg 35706f2543Smrg#define TDA8425SymbolsList \ 36706f2543Smrg "Detect_tda8425", \ 37706f2543Smrg "tda8425_init", \ 38706f2543Smrg "tda8425_setaudio", \ 39706f2543Smrg "tda8425_mute" 40706f2543Smrg 41706f2543Smrg#endif 42