Hello, Now the codec and driver work well (certainly the configuration can be optimized). Below is the corrected part of the dts file and other information. All the best Joseph
------------- Corrected part of the dts file: /{ sound {compatible = "simple-audio-card"; simple-audio-card,format = "dsp_a"; simple-audio-card,name = "wm8960-soundcard"; simple-audio-card,bitclock-master = <&sndcodec>; simple-audio-card,frame-master = <&sndcodec>; simple-audio-card,convert-rate = <48000>; simple-audio-card,mclk-fs = <512>; status = "okay"; simple-audio-card,widgets = "Line", "Line In", "Headphone", "Headphone Jack"; simple-audio-card,routing = "Headphone Jack", "HP_L", "Headphone Jack", "HP_R", "LINPUT2", "Line In", "RINPUT2", "Line In"; simple-audio-card,cpu { sound-dai = <&mcasp1>; }; sndcodec: simple-audio-card,codec { sound-dai = <&wm8960>; }; }; }; &i2c4 { status = "okay"; clock-frequency = <400000>; pinctrl-names = "default"; pinctrl-0 = <&i2c4_pins>; wm8960: wm8960@1a{ status = "ok"; #sound-dai-cells = <0>; compatible = "wlf,wm8960"; reg = <0x1a>; }; }; &mcasp1 { #sound-dai-cells = <0>; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&mcasp1_pins>; op-mode = <0>; /* MCASP_IIS_MODE */ tdm-slots = <2>; /* 16 serializers */ serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 0 0 0 0 0 0 0 0 0 0 1 2 /* axr10 - TX, axr11 – RX */ 0 0 0 0 >; tx-num-evt = <1>; rx-num-evt = <1>; }; -------------------- debian@beaglebone:/var/lib/cloud9$ dmesg | grep -i sound [ 0.576402] Advanced Linux Sound Architecture Driver Initialized. [ 49.744107] asoc-simple-card sound: wm8960-hifi <-> 48460000.mcasp mapping ok -------------------- debian@beaglebone:/var/lib/cloud9$ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: H58040000encode [HDMI 58040000.encoder], device 0: HDMI 58040000.encoder snd-soc-dummy-dai-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: wm8960soundcard [wm8960-soundcard], device 0: davinci-mcasp.0-wm8960-hifi wm8960-hifi-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 -------------------- alsamixer was used to configure the codec parameters and then the following commands were succesfully tested: aplay, arecord, speaker-test, alsaloop. Also commands "i2cset -f -y 3 0x1a 0xuu 0xvv" (where uu and vv are hexadecimal values) can be used to directly set up some codec registers. -------------------- -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/49d36c3b-afea-4161-a943-9b0f3d7ebd73%40googlegroups.com.