您好,
感谢 您的响应,我 将 tlv320aic3007(i2c/I2S)连接到我的 soc (a5d27)。当我使用 aplay 命令播放声音时,我会遇到以下错误。请查看以下详细信息。
错误:
aplay Sample_BeeMoved_48kHz16bit.m4a -v
播放原始数据'SCALE_BeeMoved_48kHz16bit.m4a':无符号8位、速率
8000 Hz、单声道
tlv320aic3x-codec 0-0018:无法同步寄存器0x33-0x36。 -121.
插头 PCM:路由转换 PCM (sformat=S16_LE)
转换表:
0 <- 0
1 <- 0
其设置为:
流: 播放
访问 :rw_interleaved
格式 :U8.
子格式 :标准
频道 :1.
价格: 8000
精确比率 :8000 (8000/1)
msbits :8.
Buffer_size :4000
Period_size :1000
Period_Time :125000
tstamp_mode :无
tstamp_type :单调
Period_step :1.
AVAIL_MIN :1000
Period_event:0
START_THRESHOLD :4000
STOP_THRESHOLD :4000
Silence_threshold:0
Silence_size:0
边界 :2097152000
从设备:硬件 PCM 卡0 "多音频"设备0子设备0
其设置为:
流: 播放
访问 :MMAP_Interleaved
格式 :S16_LE
子格式 :标准
频道 :2.
价格: 8000
精确比率 :8000 (8000/1)
msbits :16.
Buffer_size :4000
Period_size :1000
Period_Time :125000
tstamp_mode :无
tstamp_type :单调
Period_step :1.
AVAIL_MIN :1000
Period_event:0
START_THRESHOLD :4000
STOP_THRESHOLD :4000
Silence_threshold:0
Silence_size:0
边界 :2097152000
appl_ptr :0
HW_PTR :0
请查看以下 devicetree 配置并让我知道问题。
tlv320_MCLK:振荡器{
兼容="固定时钟";
#clock-cells =<0>;
时钟频率=<19200000>;
clock-output-names ="tlv320-MCLK";
};
i2c0:I2C@f8028000{
DMA =<0>、<0>;
pinctrl-names ="default";
pinctrl-0 =<&pinctrl_i2c0_default>;
状态="正常";
tlv320aic3007: tlv320aic3007@18{
#sound-di-cells =<0>;
兼容="ti、tlv320aic3007";
reg =<0x18>;
AVDD-SUPPLY =<_vddin_3V3>;
IOVdd-supply =<_vddin_3V3>;
DRVDD-SUPPLY =<_vddin_3V3>;
DVDD 电源=<&VCC_1v8_reg>;
状态="正常";
};
};
听起来{
兼容="简单音频卡";
simple-audio-card、name ="简单音频";
simple-audio-card、format ="I2S";
simple-audio-card、bitclock-master =<&dailink_master>;
simple-audio-card、frame-master =<&dailink_master>;
位时钟反转=<1>;
/* 简单音频卡,MCLK-FS =<256>;*/
simple-audio-card、小工具=
"线路"、"线路输入"、
"线路"、"线路输出"、
"扬声器"、"扬声器";
简单音频卡,路由=
"线路输出"、"LLOUT"、
"线路输出"、"RLOUT"、
"扬声器"、"SPOP"、
"扬声器"、"SPOM"、
"LINE1L"、"线路输入"、
"LINE1R"、"线路输入";
状态="正常";
简单音频卡、CPU{
Sound-Dai =<&i2s0>;
位时钟反转=<0>;
};
};
dailink_master:simple-audio-card、codec{
sound-dai =<&tlv320aic3007 0>;
时钟=<&tlv320_MCLK>;
系统时钟频率=<12000000>;
};
};

