040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#ifndef __TDA9850_H__
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#define __TDA9850_H__
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#include "xf86i2c.h"
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsynctypedef struct {
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync I2CDevRec d;
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync int mux;
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync int stereo;
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync int sap;
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync Bool mute;
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync Bool sap_mute;
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync } TDA9850Rec, *TDA9850Ptr;
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#define TDA9850_ADDR_1 0xB4
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsyncTDA9850Ptr Detect_tda9850(I2CBusPtr b, I2CSlaveAddr addr);
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsyncBool tda9850_init(TDA9850Ptr t);
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsyncvoid tda9850_setaudio(TDA9850Ptr t);
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsyncvoid tda9850_mute(TDA9850Ptr t, Bool mute);
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsyncvoid tda9850_sap_mute(TDA9850Ptr t, Bool sap_mute);
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsyncCARD16 tda9850_getstatus(TDA9850Ptr t);
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#define TDA9850SymbolsList \
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync "Detect_tda9850", \
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync "tda9850_init", \
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync "tda9850_setaudio", \
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync "tda9850_mute", \
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync "tda9850_sap_mute"
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#define xf86_Detect_tda9850 ((TDA9850Ptr (*)(I2CBusPtr, I2CSlaveAddr))LoaderSymbol("Detect_tda9850"))
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#define xf86_tda9850_init ((Bool (*)(TDA9850Ptr))LoaderSymbol("tda9850_init"))
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#define xf86_tda9850_setaudio ((void (*)(TDA9850Ptr))LoaderSymbol("tda9850_setaudio"))
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#define xf86_tda9850_mute ((void (*)(TDA9850Ptr, Bool))LoaderSymbol("tda9850_mute"))
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#define xf86_tda9850_sap_mute ((void (*)(TDA9850Ptr, Bool))LoaderSymbol("tda9850_sap_mute"))
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#define xf86_tda9850_getstatus ((CARD16 (*)(TDA9850Ptr))LoaderSymbol("tda9850_getstatus"))
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync
040abec2534dadc53ebc8fa378ef03f4feecb7dbvboxsync#endif