2.28. Hauppauge TV EEPROM 函数和数据结构

enum tveeprom_audio_processor

指定 Hauppauge 设备上使用的音频处理器类型。

常量

TVEEPROM_AUDPROC_NONE

没有音频处理器

TVEEPROM_AUDPROC_INTERNAL

音频处理器是视频处理器的内部组件

TVEEPROM_AUDPROC_MSP

音频处理器是 MSPXXXX 设备

TVEEPROM_AUDPROC_OTHER

音频处理器是另一种设备

struct tveeprom

包含从 Hauppauge eeprom 解析的字段

定义:

struct tveeprom {
    u32 has_radio;
    u32 has_ir;
    u32 has_MAC_address;
    u32 tuner_type;
    u32 tuner_formats;
    u32 tuner_hauppauge_model;
    u32 tuner2_type;
    u32 tuner2_formats;
    u32 tuner2_hauppauge_model;
    u32 audio_processor;
    u32 decoder_processor;
    u32 model;
    u32 revision;
    u32 serial_number;
    char rev_str[5];
    u8 MAC_address[ETH_ALEN];
};

成员

has_radio

如果设备有无线电则为 1;否则为 0。

has_ir

如果 has_ir == 0,则 IR 功能未知。 否则:位 0) 1 (= IR 功能已知); 位 1) 存在 IR 接收器; 位 2) 存在 IR 发射器(冲击波)。

has_MAC_address

0:没有 MAC,1:存在 MAC,2:未知。

tuner_type

调谐器的类型 (TUNER_*, 如 include/media/tuner.h 中定义)。

tuner_formats

支持的模拟电视标准 (V4L2_STD_*)。

tuner_hauppauge_model

Hauppauge 的设备型号代码。

tuner2_type

第二个调谐器的类型 (TUNER_*, 如 include/media/tuner.h 中定义)。

tuner2_formats

调谐器 2 支持的模拟电视标准 (V4L2_STD_*)。

tuner2_hauppauge_model

调谐器 2 Hauppauge 的设备型号代码。

audio_processor

模拟音频解码器,如 enum tveeprom_audio_processor 定义。

decoder_processor

Hauppauge 的解码器芯片组代码。驱动程序未使用,因为它们基于 PCI 或 USB ID 探测解码器。

model

Hauppauge 的型号

revision

卡修订版号

serial_number

卡的序列号

rev_str

转换为数字的卡修订版

MAC_address

网络接口的 MAC 地址

void tveeprom_hauppauge_analog(struct tveeprom *tvee, unsigned char *eeprom_data)

使用先前在 eeprom_data 字段中填充的 eeprom 内容填充 struct tveeprom

参数

struct tveeprom *tvee

用于填充解析的 eeprom 数据的结构;

unsigned char *eeprom_data

包含 eeprom_data 内容的数组。 它应该包含 256 个字节,其中填充了从 Hauppauge 设备读取的 eeprom 内容。

int tveeprom_read(struct i2c_client *c, unsigned char *eedata, int len)

读取 Hauppauge 设备上找到的 eeprom 内容。

参数

struct i2c_client *c

I2C 客户端结构

unsigned char *eedata

将存储 eeprom 内容的数组。

int len

eedata 数组的大小。 如果 eeprom 内容将稍后由 tveeprom_hauppauge_analog() 解析,则 len 应该至少为 256。