RAZZY Posted December 4, 2018 Share Posted December 4, 2018 I am using an armbian build image on PINE A64+ board with the kernel 3.10.107. During build i enabled below I2S driver as built-in. CONFIG_SND_SOC_SUNXI_RW=y CONFIG_SND_SOC_SUNXI_AUDIO_DMA=y CONFIG_SND_SOC_SUNXI_TDM=y CONFIG_SND_SUNXI_SOC=y CONFIG_SND_SOC_INTERNAL_AUDIOCODEC=y CONFIG_SND_SOC_INTERNAL_I2S=y CONFIG_SND_SOC_AUDIO_CODEC_MACHINE=y CONFIG_SND_SOC_DAUDIO_PLATFORM=y CONFIG_SND_SOC_VIRCODEC=y CONFIG_SND_SOC_DAUDIO0_MACHINE=y # CONFIG_SND_SOC_DAUDIO1_MACHINE is not set CONFIG_SND_SUNXI_SOC_HDMIAUDIO=y The Internal Audio and HDMI Audio are initialized successfully but failed to snddaudio0 which can be accessed from Euler bus pins. below is the error log. Dec 4 02:22:10 localhost kernel: [ 10.453351] snddaudio0 sound.8: ASoC: CPU DAI (null) not registered Dec 4 02:22:10 localhost kernel: [ 10.453386] snddaudio0 sound.8: snd_soc_register_card() failed: -517 Dec 4 02:22:10 localhost kernel: [ 10.453390] [RANJ] sunxi_snddaudio0_dev_probe done with -517 apaly - l returns the following root@pine64:/boot# aplay -l **** List of PLAYBACK Hardware Devices **** card 0: audiocodec [audiocodec], device 0: SUNXI-CODEC codec-aif1-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: audiocodec [audiocodec], device 1: bb Voice codec-aif2-1 [] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: audiocodec [audiocodec], device 2: bb-bt-clk codec-aif2-2 [] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: audiocodec [audiocodec], device 3: bt Voice codec-aif3-3 [] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: sndhdmi [sndhdmi], device 0: SUNXI-HDMIAUDIO sndhdmi-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 Before I tried to load as modules with below changes . <*> ASoC support for audiocodec <M> ASoC support for internal-i2s <M> ASoC support for audiocodec machine <M> ASoC support for daudio platform. <M> ASoC support for vircodec <M> ASoC support for daudio0 machine < > ASoC support for daudio1 machine <M> ASoC support for hdmiaudio changed the device tree file for sound@1 (sun50iw1pi-pine64-plus.dtb) sound@1 { compatible = "allwinner,sunxi-daudio0-machine"; sunxi,daudio0-controller = <0x4e>; status = "disabled"; -------> "okay" device_type = "snddaudio0"; }; The result is same. Please help me to enable I2S codec testing on Euler bus I2S pins using Armbian build image. Regards Ranjit Link to comment Share on other sites More sharing options...
markbirss Posted December 4, 2018 Share Posted December 4, 2018 try changing "status = "disabled"; -------> "okay"" to Quote status = "okay"; Link to comment Share on other sites More sharing options...
RAZZY Posted December 6, 2018 Author Share Posted December 6, 2018 I tried sound@1 { compatible = "allwinner,sunxi-daudio0-machine"; sunxi,daudio0-controller = <0x4e>; status = "okay" device_type = "snddaudio0"; }; and also changed the status to "okay" on below entry. daudio@0x01c22000 { compatible = "allwinner,sunxi-daudio"; reg = <0x0 0x1c22000 0x0 0x58>; clocks = <0x2 0x42>; pinctrl-names = "default", "sleep"; pinctrl-0 = <0x43>; pinctrl-1 = <0x44>; pcm_lrck_period = <0x20>; pcm_lrckr_period = <0x1>; slot_width_select = <0x20>; pcm_lsb_first = <0x0>; tx_data_mode = <0x0>; rx_data_mode = <0x0>; daudio_master = <0x4>; audio_format = <0x1>; signal_inversion = <0x1>; frametype = <0x0>; tdm_config = <0x1>; tdm_num = <0x0>; status = "okay"; linux,phandle = <0x4e>; phandle = <0x4e>; device_type = "daudio0"; }; Even with this changes I2S at Euler pin is not working. Does anyone tried testing I2S on Euler bus pin with kernel 3.10.107 ? Link to comment Share on other sites More sharing options...
gkkpch Posted December 17, 2018 Share Posted December 17, 2018 Was this you: I2S on Pine64 Euler bus ? If not, please message volumio(at)bluewin.ch Link to comment Share on other sites More sharing options...
Recommended Posts