Part Number:TLV320AIC3254
这是我的设备树配置:
tlv320aic32x4_sound: tlv320aic32x4-sound {
status = "okay";
compatible = "simple-audio-card";
simple-audio-card,name = "rockchip,tlv320aic32x4-codec";
simple-audio-card,format = "i2s";
simple-audio-card,mclk-fs = <256>;
simple-audio-card,cpu {
sound-dai = <&i2s1_8ch>;
};
simple-audio-card,codec {
sound-dai = <&tlv320aic32x4>;};
};
vcc33_codec: vcc33-codec {compatible = "regulator-fixed";regulator-name = "vcc33_codec";regulator-always-on;regulator-boot-on;regulator-min-microvolt = <3300000>;regulator-max-microvolt = <3300000>;
};
vcc18_codec: vcc18-codec {compatible = "regulator-fixed";regulator-name = "vcc18_codec";regulator-always-on;regulator-boot-on;regulator-min-microvolt = <1800000>;regulator-max-microvolt = <1800000>;
};
&i2c8 {
status = "okay";
pinctrl-0 = <&i2c8m2_xfer>;
tlv320aic32x4: tlv320aic32x4@18 {
status = "okay";
#sound-dai-cells = <0>;
compatible = "ti,tlv320aic32x4";
reg = <0x18>;
clocks = <&mclkout_i2s1>;
clock-names = "mclk";
assigned-clocks = <&mclkout_i2s1>;
assigned-clock-rates = <12288000>;
pinctrl-names = "default";
pinctrl-0 = <&i2s1m0_mclk &codec_reset>;
ldoin-supply = <&vcc33_codec>;
iov-supply = <&vcc18_codec>;
reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
};
};
上电之后使用alsamixer进行配置,分别打开了LO DAC和LOL Output、LOR Output

然后通过i2c读取寄存器,发现并没有DAC power up


Alice:
您好,
关于此芯片的设备驱动,请参考(+) [FAQ] [参考译文] [FAQ] Linux驱动程序:AIC31xx/DAC31xx/AIC325x/AIC320x/AIC326x/AIC321x的设备驱动程序 – 音频(参考译文帖)(Read Only) – 音频(参考译文帖) – E2E
设计支持
这是驱动库TLV320AIC32X4SW-LINUX 驱动程序或库 | 德州仪器 TI.com.cn
,
Lebin Hu:
你好,
我目前使用的内核版本是6.1.75,对比你提供的链接中的驱动源码,并没有很大的区别/与route等相关联的变更。
,
Alice:
您好,
您是否尝试过 aplay 命令以查看在播放某些音频时是否启用了输出?我不确定在这种情况下如何验证 alsamixer。
但是,为这些 output paths 供电和关闭电源的 registers 位于第 1 页的 register 9 中。
当您在 alsamixer 中启用或禁用这些 paths 时,您能否检查一下哪些 registers 发生了变化?也许您启用的此控件没有按照您的想法进行作。
,
Lebin Hu:
您好,
我尝试播放音频,然后去查看page1的register 9。发现并没有任何变化。当我尝试使用alsamixer打开HPL Output Mixer IN1_L和HPR Output Mixer IN1_R时,我可以看到HPL和HPR的电源被打开了。
但是我尝试打开HPL Output Mixer L_DAC和HPL Output Mixer R_DAC时,则HPL和HPR的电源并没有打开。
,
Alice:
您好,
在 alsamixer 中是否有其他设置可以打开 HPL 或 HPR Power?
在驱动程序中,似乎有一条单独的路线来确定 HP 输出的功率,您可以参考链接的驱动程序代码
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/sound/soc/codecs/tlv320aic32x4.c
这些是 DAPM 路由的可用选项,您还可以在 DTS 文件中包含 DAPM 路由,以便在没有 alsamixer GUI 的情况下配置路由。
TI中文支持网






