This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM5718:Linux:音频编码TLV320AIC3206 (通过使用MCASP,SPI)

Guru**** 1703840 points
Other Parts Discussed in Thread: TLV320AIC3206, AM5718
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1083980/am5718-linux-audio-codectlv320aic3206-by-using-mcasp-spi

部件号:AM5718
主题中讨论的其他部件:TLV320AIC3206

您好,
我在我们的定制主板上使用SDK-Linux-AM57X 06_03_00_106。
它有3个声音设备。 所有这些都是TLV320AIC3206。
一个是选定的I2C接口,另一个是SPI。
I2C工作正常,如我的帖子所示。
e2e.ti.com/.../am5718-linux-am5718-audio-codectlv320aic3206-by-using-mcasp-i2c</s>5718 3206

SPI不工作。
驱动程序已加载,但无法在'amixer'命令中设置参数。

####### 控制台##########
[ 11.12.6455万  gipod_flags] of_GET_NAMED_gpiod_flags:无法解析节点'/sound0[0]'的'imple-audio-card,hp-det-gPIO'属性
[ 11.12.6469万  gipod_flags] of_GET_NAMED_gpiod_flags:无法解析节点'/sound0[0]'的'imple-audio-card,mic-det-gPIO'属性
[ 11.22.4056万  aspx] aoc-same-card sound0:tlv320aic32x4-hifi <->4847c000.mcasp映射正常
[  DMI] 11.27.0199万 简单卡声音0::没有DMI供应商名称!
[ 11.32.8602万  gipod_flags] of_GET_NAMED_gpiod_flags:无法解析节点'/sound1[0]的'imple-audio-card,hp-det-gPIO'属性
[ 11.32.8616万  gipod_flags] of_GET_NAMED_gpiod_flags:无法解析节点'/sound1[0]的'imple-audio-card,mic-det-gPIO'属性
[ 11.37.6264万  aspx] aoc-same-card sound1:tlv320aic32x4-hifi <->4846.4万.mcasp映射正常
[  DMI] 11.41.9万 简单卡声音1::没有DMI供应商名称!
[ 11.48.0263万  gipod_flags] of_GET_NAMED_gpiod_flags:无法解析节点'/sound2[0]的'imple-audio-card,hp-det-gPIO'属性
[ 11.48.0277万  gipod_flags] of_get_named_gpiod_flags:无法解析节点'/sound2[0]的'imple-audio-card,mic-det-gPIO'属性
[ 11.53.321万  asp] aoc-same-card sound2:tlv320aic32x4-hifi <->4847万.mcasp映射正常
[  DMI] 11.54.1089万 简单卡声音2::没有DMI供应商名称!

root@am57xx-EVM:~# aplay -l
****播放硬件设备列表****
卡0:AM57xSoundCard0 [AM57x-SoundCard0],设备0:DaVinci-Mcasp.0-tlv320aic32x4-hifi tlv320aic32x4-hifi-0[DaVinci-Mcasp.0-tlv320aic32x4-hifi
 子设备:1/1
 子设备#0:子设备#0
卡1:AM57xSoundCard1 [AM57x-SoundCard1],设备0:DaVinci-Mcasp.0-tlv320aic32x4-hifi tlv320aic32x4-hifi [0][DaVinci-Mcasp.0-tlv320aic32x4-hifi
 子设备:1/1
 子设备#0:子设备#0
卡2:AM57xSoundCard2 [AM57x-SoundCard2],设备0:DaVinci-Mcasp.0-tlv320aic32x4-hifi tlv320aic32x4-hifi [0][DaVinci-Mcasp.0-tlv320aic32x4-hifi
 子设备:1/1
 子设备#0:子设备#0

root@am57xx-EVM:~# amixer -c 1 sset 'Lor Output Mixer R_DAC'开
简单混音器控制'Lor Output Mixer R_DAC',0
 功能:pswitch pswitch-joined
 回放频道:单声道
 黑白:播放[开]
root@am57xx-EVM:~# amixer -c 1 sget 'Lor Output Mixer R_DAC'(Lor输出混频器R_DAC)   
简单混音器控制'Lor Output Mixer R_DAC',0
 功能:pswitch pswitch-joined
 回放频道:单声道
 Mono:播放[关闭]  <=================== 未设置
####### 结束#######

TLV320AIC3206是位和帧主控。
硬件连接如下所示。

[AM5718]     <-> [TLV320AIC3206]
(McASP2和SPI3)
spi3_SCLK    --> SCLK
spi3_cs0     --> /ss
spi3_d0      --> MOSI
spi3_d1      <-- miso
GPIO3_30     --> /reset
mcasp2_axr0  --> DIN
mcasp2_axr1  <-- DOUT
mcasp2_aclkr <-- BCLK.
mcasp2_fsr   <-- WCLK.
<25MHz OSC  --> MCLK
(McASP5和SPI4)
SPI4_SCLK    --> SCLK
SPI4_cs0     --> /ss
SPI4_d0      --> MOSI
SPI4_D1      <-- miso
GPIO3_31     --> /reset
mcasp5_axr0  --> DIN
mcasp5_axr1  <-- DOUT
mcasp5_aclkx <-- BCLK
mcasp5_FSX   <-- WCLK.
<25MHz OSC  --> MCLK


####### tisdk_am57xx-evm_defconfig文件#######
CONFIG_Snd_SOC_TLV320AIC32X4_SPI=m
####### 结束#######

####### am571x-idk.dts文件#######
/*声卡1 McASP2 SPI3 */
{\f2 &mcasp2}{
       #sound - dai细胞=<0>;
       状态="正常";
       OP-mode =<0>;/* MCASP_IIS_MODE */
       TDM插槽=<2>;
       /* 4序列化器*/
       serial-dir =</* 0:非活动,1:TX,2:Rx */
               1 2 0 0
       >;
       tx-num-evt =<32>;
       rx-num-evt =<32>;
};

&mcspi3{
       状态="正常";
       TI,windir-d0-out,d1-in;

       tlv320aic3206_1:编解码器@0 {
               兼容="ti,tlv320aic32x6";
               reg =<0>;
               #sound - dai细胞=<0>;
               状态="正常";
               SPI-max-frequency =<1000万>;
               SPI-cpha;
               RESET-GPIOs =<&GPIO5 30 GPIO _ACTIVE_LOW;
               Clock-names ="MCLK";
               Clocks =<&tlv320_MCLK>;
               dv-supply =<&ldo2_reg>;
               av-supply =<&ldo2_reg>;
               IOV-supply =<&v3_3D>;
       };
};

/*声卡2 McASP5 SPI4 */
{\f2 &mcasp5}{
       #sound - dai细胞=<0>;
       状态="正常";
       OP-mode =<0>;/* MCASP_IIS_MODE */
       TDM插槽=<2>;
       /* 4序列化器*/
       serial-dir =</* 0:非活动,1:TX,2:Rx */
               1 2 0 0
       >;
       tx-num-evt =<32>;
       rx-num-evt =<32>;
};

mcspi4{
       状态="正常";
       TI,windir-d0-out,d1-in;

       tlv320aic3206_2:编解码器@0 {
               兼容="ti,tlv320aic32x6";
               reg =<0>;
               #sound - dai细胞=<0>;
               状态="正常";
               SPI-max-frequency =<1000万>;
               SPI-cpha;
               RESET-GPIOs =<&GPIO5 31 GPIO主动_低>;
               Clock-names ="MCLK";
               Clocks =<&tlv320_MCLK>;
               dv-supply =<&ldo2_reg>;
               av-supply =<&ldo2_reg>;
               IOV-supply =<&v3_3D>;
       };
};
####### 结束#######

请给我一些建议。

此致,

Toshio Masuchi


  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    我们放弃了对SPI的控制。 我们将主板更改为contorol I2C。

    我们可以通过amixer comannd设置McASP2和McASP5参数。

    但是,aplay和arecord是行不通的。 (输入/输出错误)

    TLV320AIC3206正确输出BCLK和WCLK

    McASP2和McASP5似乎不响应BCLK或WCLK。

    (McASP8正常。)

    请给我一些建议。

    此致,

    Toshio Masuchi