工具与软件:
您好!
我已经升级到内核6.6( Linux 版本6.6.6.44-rt39),当然也修改了我的目标的 DTS 文件。
在以前的版本(6.1rt)中、我们遇到了缓冲区下溢问题、在该版本中应该已经修复了这个问题。
遗憾的是、现在32位(S32_LE)数据格式不再起作用-我一切换到 S16_LE、它就开始工作了、例如
speaker-test -Dsysdefault:card=AmpsOut -r 48000 -c 32 -f S32_LE ->不起作用
speaker-test -Dsysdefault:card=AmpsOut -r 48000 -c 32 -f S16_LE ->工作正常
但我需要32位的更高分辨率-我是否忘记了要修改的任何东西、或者32位支持是否在6.6中被打破?
此致、
Sebastian
DTS 配置:
TDM_AMP: Sound3{
Compatible ="简单音频卡";
simple-audio-card、name ="AmpsOut";
simple-audio-card、bitclock-master =<&my_mcasp2>;
simple-audio-card、frame-master =<&my_mcasp2>;
simple-audio-card、format ="left_j";
简单音频卡、位时钟反转;
my_mcasp2:simple-audio-card、cpu {
sound-Dai =<&mcasp2>;
系统时钟频率=<24576000>;
系统时钟方向输出;
di-tdm-slot-width =<32>;
};
sound_master3:简单音频卡、编解码器{
Sound-Dai =<&tdm8amp_out>;
Clocks =<&tlv320_MCLK>;
di-tdm-slot-width =<32>;
};
};
mcasp2 (&M){
状态="正常";
#sound-Di-cells =<0>;
pinctrl-names ="默认值";
pinctrl-0 =<&MAIN_mcasp2_PINS_DEFAULT>;
OP-MODE =<0>; /* MCASP_IIS_MODE */
TDM-slots =<8>;
serial-dir =</* 0:无效、1:TX、2:Rx */
1 1 1 1
2 2 2 2
0 0 0 0 0
0 0 0 0 0
>;
tx-num-evt =<0>;
Rx-num-evt =<0>;
};