Hi,
We are building the board based on beaglebone black and have a TLV320AIC3206 codec on the board, I would like to know if Sitara Linux SDK supports TLV320AIC3206 codec.
To verify that, I load Linux SDK to BeagleBone Black and modify the am335 am335x-boneblack.dts (see the attached file am335x-boneblack.dts on the bottom).
I boot the board with this changed am335x-boneblack.dts, use aplay to playback the sample ALSA wav file:
aplay /usr/share/sounds/alsa/Front_Left.wav
However, I get the errors:
///////////////////////////////////////////////////////////////////////
ALSA lib /home/gtbldadm/processor-sdk-linux-fido-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8hf-vfp-neon-linux-gnueabi/alsa-lib/1.0.28-r0/alsa-lib-1.0.28/src/confmisc.c:768:(parse_card) cannot find card '0'
ALSA lib /home/gtbldadm/processor-sdk-linux-fido-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8hf-vfp-neon-linux-gnueabi/alsa-lib/1.0.28-r0/alsa-lib-1.0.28/src/conf.c:4259:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory
ALSA lib /home/gtbldadm/processor-sdk-linux-fido-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8hf-vfp-neon-linux-gnueabi/alsa-lib/1.0.28-r0/alsa-lib-1.0.28/src/confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib /home/gtbldadm/processor-sdk-linux-fido-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8hf-vfp-neon-linux-gnueabi/alsa-lib/1.0.28-r0/alsa-lib-1.0.28/src/conf.c:4259:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory
ALSA lib /home/gtbldadm/processor-sdk-linux-fido-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8hf-vfp-neon-linux-gnueabi/alsa-lib/1.0.28-r0/alsa-lib-1.0.28/src/confmisc.c:1251:(snd_func_refer) error evaluating name
ALSA lib /home/gtbldadm/processor-sdk-linux-fido-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8hf-vfp-neon-linux-gnueabi/alsa-lib/1.0.28-r0/alsa-lib-1.0.28/src/conf.c:4259:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib /home/gtbldadm/processor-sdk-linux-fido-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8hf-vfp-neon-linux-gnueabi/alsa-lib/1.0.28-r0/alsa-lib-1.0.28/src/conf.c:4738:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib /home/gtbldadm/processor-sdk-linux-fido-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8hf-vfp-neon-linux-gnueabi/alsa-lib/1.0.28-r0/alsa-lib-1.0.28/src/pcm/pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM default
aplay: main:730: audio open error: No such file or directory
/////////////////////////////////////////////////////////////////////////////////////////////////
I don't know why. Any hep will be appreciated.
/////////////////////////////////////////////////////////////
am335x-boneblack.dts
/dts-v1/;
#include "am33xx.dtsi"
#include "am335x-bone-common.dtsi"
/ {
model = "TI AM335x BeagleBone Black";
compatible = "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx";
};
&ldo3_reg {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
&mmc1 {
vmmc-supply = <&vmmcsd_fixed>;
};
&mmc2 {
vmmc-supply = <&vmmcsd_fixed>;
pinctrl-names = "default";
pinctrl-0 = <&emmc_pins>;
bus-width = <8>;
status = "okay";
};
&sgx {
status = "okay";
};
&am33xx_pinmux {
mcasp0_pins: mcasp0_pins {
pinctrl-single,pins = <
0x06c (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a11.GPIO1_27 */
0x1ac ( PIN_OUTPUT_PULLDOWN | MUX_MODE0 ) /* (A14) mcasp0_ahclkx.mcasp0_ahclkx */
0x190 ( PIN_OUTPUT_PULLDOWN | MUX_MODE0 ) /* (A13) mcasp0_aclkx.mcasp0_aclkx */
0x194 ( PIN_OUTPUT_PULLDOWN | MUX_MODE0 ) /* (B13) mcasp0_fsx.mcasp0_fsx */
0x1a0 ( PIN_OUTPUT_PULLDOWN | MUX_MODE0 ) /* (B12) mcasp0_aclkr.mcasp0_aclkr */
0x198 ( PIN_OUTPUT_PULLDOWN | MUX_MODE0 ) /* (D12) mcasp0_axr0.mcasp0_axr0 */
0x1a8 ( PIN_INPUT_PULLDOWN | MUX_MODE0 ) /* (D13) mcasp0_axr1.mcasp0_axr1 */
0x19c ( PIN_INPUT_PULLDOWN | MUX_MODE2 ) /* (C12) mcasp0_ahclkr.mcasp0_axr2 */
>;
};
mcasp0_pins_sleep: mcasp0_pins_sleep {
pinctrl-single,pins = <
0x06c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_a11.GPIO1_27 */
0x1ac (PIN_INPUT_PULLDOWN | MUX_MODE7 ) /* (A14) mcasp0_ahclkx.mcasp0_ahclkx */
0x190 (PIN_INPUT_PULLDOWN | MUX_MODE7 ) /* (A13) mcasp0_aclkx.mcasp0_aclkx */
0x194 (PIN_INPUT_PULLDOWN | MUX_MODE7 ) /* (B13) mcasp0_fsx.mcasp0_fsx */
0x1a0 (PIN_INPUT_PULLDOWN | MUX_MODE7 ) /* (B12) mcasp0_aclkr.mcasp0_aclkr */
0x198 (PIN_INPUT_PULLDOWN | MUX_MODE7 ) /* (D12) mcasp0_axr0.mcasp0_axr0 */
0x1a8 (PIN_INPUT_PULLDOWN | MUX_MODE7 ) /* (D13) mcasp0_axr1.mcasp0_axr1 */
0x19c (PIN_INPUT_PULLDOWN | MUX_MODE7 ) /* (C12) mcasp0_ahclkr.mcasp0_axr2 */
>;
};
};
&lcdc {
status = "okay";
};
&mcasp0 {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&mcasp0_pins>;
pinctrl-1 = <&mcasp0_pins_sleep>;
status = "okay";
op-mode = <0>; /* MCASP_IIS_MODE */
tdm-slots = <2>;
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
0 0 1 2
>;
tx-num-evt = <1>;
rx-num-evt = <1>;
};
/ {
clk_mcasp0_fixed: clk_mcasp0_fixed {
#clock-cells = <0>;
compatible = "fixed-clock";
clock-frequency = <24576000>;
};
clk_mcasp0: clk_mcasp0 {
#clock-cells = <0>;
compatible = "gpio-gate-clock";
clocks = <&clk_mcasp0_fixed>;
enable-gpios = <&gpio1 27 0>; /* BeagleBone Black Clk enable on GPIO1_27 */
};
tlv320aic3x: tlv320aix3x {
compatible = "ti,tlv320aic3x";
status = "okay";
};
sound {
compatible = "ti,da830-evm-audio";
ti,model = "DA830 EVM";
ti,audio-codec = <&tlv320aic3x>;
ti,mcasp-controller = <&mcasp0>;
ti,codec-clock-rate = <12000000>;
ti,audio-routing =
"Headphone Jack", "HPLOUT",
"Headphone Jack", "HPROUT",
"LINE1L", "Line In",
"LINE1R", "Line In";
};
};