Other Parts Discussed in Thread: TLV320AIC3106
Tool/software: Linux
Hi,
I am working on a TI's customized board using SDCard for booting and ti-processor-sdk-linux-am335x-evm-03.02.00.05-Linux-x86-Install as SDK.
After running "speaker-test" command on terminal, I'm getting the following error.
root@ngt:~/test# speaker-test
speaker-test: /usr/lib/libasound.so.2: no version information available (required by speaker-test)
speaker-test: /usr/lib/libasound.so.2: no version information available (required by speaker-test)
speaker-test 1.0.26
Playback device is default
Stream parameters are 48000Hz, S16_LE, 1 channels
Using 16 octaves of pink noise
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 256 to 32768[ 30.937230] tlv320aic3x-codec 1-001b: Unable to sync registers 0x1-0x1. -121
Period size range from 128 to 16384
Using max buffer size 32768
Periods = 4
was set period_size = 8192
was set buffer_size = 32768
0 - Front Left
^C
root@ngt:~/test#
On using "aplay" command, I got the following error.
root@ngt:~# aplay audiocheck1.wav
aplay: /usr/lib/libasound.so.2: no version information available (required by aplay)
aplay: /usr/lib/libasound.so.2: no version information available (required by aplay)
aplay: /usr/lib/libasound.so.2: no version information available (required by aplay)
Playing WAVE 'audiocheck1.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, [ 66.119910] tlv320aic3x-codec 1-001b: Unable to sync registers1
Mono
^CAborted by signal Interrupt...
root@ngt:~#
Changes Done
I have registered the tlv320aic3106 in the device tree as shown below:
1.
--- a/arch/arm/boot/dts/am335x-bone-common.dtsi
+++ b/arch/arm/boot/dts/am335x-bone-common.dtsi
+ i2c1_pins: pinmux_i2c1_pins {
+ pinctrl-single,pins = <
+ 0x158 (PIN_INPUT_PULLUP | MUX_MODE2) /* i2c1_sda.i2c1_sda */
+ 0x15c (PIN_INPUT_PULLUP | MUX_MODE2) /* i2c1_scl.i2c1_scl */
+ >;
+ };
+&i2c1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c1_pins>;
+ status = "okay";
+ clock-frequency = <100000>;
+
+ tlv320aic3106: tlv320aic3106@1b {
+ compatible = "ti,tlv320aic3106";
+ reg = <0x1b>;
+ gpio-reset = <&gpio0 8 0>; /* GPIO_1 AUDIO_CODEC_RST */
+ status = "okay";
+ };
+};
2.
--- a/arch/arm/boot/dts/am335x-boneblack.dts
+++ b/arch/arm/boot/dts/am335x-boneblack.dts
&rtc {
system-power-controller;
@@ -142,7 +152,7 @@
op-mode = <0>; /* MCASP_IIS_MODE */
tdm-slots = <2>;
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
- 0 0 1 0
+ 1 2 0 0 /* Changing from 0 0 1 0 to 1 2 0 0 */
>;
tx-num-evt = <32>;
rx-num-evt = <32>;
@@ -167,19 +177,14 @@
};
sound {
- compatible = "simple-audio-card";
- simple-audio-card,name = "TI BeagleBone Black";
- simple-audio-card,format = "i2s";
- simple-audio-card,bitclock-master = <&dailink0_master>;
- simple-audio-card,frame-master = <&dailink0_master>;
-
- dailink0_master: simple-audio-card,cpu {
- sound-dai = <&mcasp0>;
- clocks = <&clk_mcasp0>;
- };
+ compatible = "ti,da830-evm-audio";
+ ti,model = "DA830 EVM";
+ ti,audio-codec = <&tlv320aic3106>;
+ ti,mcasp-controller = <&mcasp0>;
+ ti,codec-clock-rate = <24000000>;
+ ti,audio-routing =
+ "Headphone Jack", "HPLOUT",
+ "Headphone Jack", "HPROUT";
- simple-audio-card,codec {
- sound-dai = <&tda19988>;
};
};
};
Please suggest how that error can be solved?
Thanks and Regards
Deshvir Malik