您的位置:首页 > 大数据 > 人工智能

DM8148音频驱动Tlv320aic3x换了 I2C 总线后无法发现设备驱动?

2013-07-12 09:01 302 查看
大家好:

我现在的音频驱动也遇到了点问题,平台是DM8148,开发板的音频驱动以前是挂载I2c0上,我们自己做的板子挂载I2c3上,其于什么都没有变,现在I2c3上可以检测到tlvaic32芯片,读出来的地址也是0x18,可是驱动无发执行probe函数,即

Tlv320aic3x.c (sound\soc\codecs)

中的函数:

aic3x_probe无法得到执行,因此在/dev/snd/下没有看到音频设备节点controlC0 pcmC0D0c pcmC0D0p

我的修改部分:

static struct i2c_board_info __initdata ti814x_i2c_boardinfo3[] = {

{

I2C_BOARD_INFO("tlv320aic3x", 0x18),

},

};

开发板以前为:

static struct i2c_board_info __initdata ti814x_i2c_boardinfo[] = {

{

I2C_BOARD_INFO("eeprom", 0x50),

.platform_data = &eeprom_info,

},

{

I2C_BOARD_INFO("cpld", 0x23),

},

{

I2C_BOARD_INFO("tlv320aic3x", 0x18),

},

{

I2C_BOARD_INFO("IO Expander", 0x20),

},

-----

}

因此驱动与设备名字肯定是对应的,如果我将ti814x_i2c_boardinfo中的I2C_BOARD_INFO("tlv320aic3x", 0x18),

即开发板自带的配置放里面---I2c0的,我发现在probe函数可以调用,并且/dev/snd下有设备

疑问:

音频设备已经在i2c3上而不是I2c0上,为什么用开发板自带的配置信息,会看到设备呢?而我类似的修改I2c3的配置看不到呢?为什么不能调用prboe函数呢?如果说名字没有对上,但是我和开发板一样的的,这个肯定没问题啊?这个probe函数何时被调用的呢?

请高人指点。

联系方式:QQ 254536690

一起探讨。互相进步哈。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: