1 /* 2 */ 3 4 enum tveeprom_audio_processor { 5 /* No audio processor present */ 6 TVEEPROM_AUDPROC_NONE, 7 /* The audio processor is internal to the video processor */ 8 TVEEPROM_AUDPROC_INTERNAL, 9 /* The audio processor is a MSPXXXX device */ 10 TVEEPROM_AUDPROC_MSP, 11 /* The audio processor is another device */ 12 TVEEPROM_AUDPROC_OTHER, 13 }; 14 15 #include <linux/if_ether.h> 16 17 struct tveeprom { 18 u32 has_radio; 19 /* If has_ir == 0, then it is unknown what the IR capabilities are, 20 otherwise: 21 bit 0: 1 (= IR capabilities are known) 22 bit 1: IR receiver present 23 bit 2: IR transmitter (blaster) present */ 24 u32 has_ir; 25 u32 has_MAC_address; /* 0: no MAC, 1: MAC present, 2: unknown */ 26 27 u32 tuner_type; 28 u32 tuner_formats; 29 u32 tuner_hauppauge_model; 30 31 u32 tuner2_type; 32 u32 tuner2_formats; 33 u32 tuner2_hauppauge_model; 34 35 u32 digitizer; 36 u32 digitizer_formats; 37 38 u32 audio_processor; 39 u32 decoder_processor; 40 41 u32 model; 42 u32 revision; 43 u32 serial_number; 44 char rev_str[5]; 45 u8 MAC_address[ETH_ALEN]; 46 }; 47 48 void tveeprom_hauppauge_analog(struct i2c_client *c, struct tveeprom *tvee, 49 unsigned char *eeprom_data); 50 51 int tveeprom_read(struct i2c_client *c, unsigned char *eedata, int len); 52