08-15-2018, 03:07 PM 
(This post was last modified: 10-05-2018, 12:19 AM by t4_4t.
 Edit Reason: [SOLVED]
)
		
	 
	
		The environment is "bionic-lxde-rockpro64-0.7.9-1067-arm64.img.xz".( https://github.com/ayufan-rock64/linux-b...m64.img.xz) 
kernel is updated to "linux-image-4.4.138-1094". ( https://github.com/ayufan-rock64/linux-k..._arm64.deb)
 
The sound via hdmi is output well. 
However, there is no sound via "es8316", but somehow rubbish comes out on the serial console.
 
Is there a person who has successfully outputted sound via "es8316" ?
	  
	
	
	
	
 
 
	
	
		Moin! 
 
> Is there a person who has successfully outputted sound via "es8316" ? 
 
Just wanted to say that you are not allone: Same problem here. 
 
Greetings, J.
	 
	
	
	
	
 
 
	
	
		As a result of various investigations, 
These problems turned out to be caused by the kernel side. 
 
The issues is as follows (0.7.9: gitlab-ci-linux-build-67: 4.4.132-1075) 
1. "es8316-sound" no sound. 
2. "spdif-sound"  no sound.  
3. "serial-console output" contains garbage. 
 
All of the above issues have been solved by modifying kernel. 
 
--- 
*Additional information)  
 At currently the newest kernel (4.4.154-1122), 
 all sound (in addition to the above, "hdmi-sound" also) can not output. 
 
I also confirmed that it works correctly with the same modification.
	 
	
	
	
	
 
 
	
	
		 (10-05-2018, 12:23 AM)t4_4t Wrote:  As a result of various investigations, 
These problems turned out to be caused by the kernel side. 
 
The issues is as follows (0.7.9: gitlab-ci-linux-build-67: 4.4.132-1075) 
1. "es8316-sound" no sound. 
2. "spdif-sound"  no sound.  
3. "serial-console output" contains garbage. 
 
All of the above issues have been solved by modifying kernel. 
 
--- 
*Additional information)  
 At currently the newest kernel (4.4.154-1122), 
 all sound (in addition to the above, "hdmi-sound" also) can not output. 
 
I also confirmed that it works correctly with the same modification. 
I agree with your findings on 4.4.132 & 4.4.154 kernels - what mods do youu apply to the kernel to correct things?
	  
	
	
- PinePhone BraveHeart now v1.2b 3/32Gb daily driver, Tow-boot with pmOS/SXMO on eMMC
 
 
- PinePhone pmOS Community Edition 2/16Gb driving my picture frame, Tow-boot with pmOS/SXMO on eMMC
 
 
- PinePhone Pro Explorer Edition, Tow-boot on SPI, Arch/SXMO on eMMC
 
 
- ROCKPro64 v2.1 2GB, 16Gb eMMC retired in favour of a fruity upgrade
 
 
 
 
	
	
 
 
	
	
		Just upgraded to 4.4.154-1122 and have the same issue here as well.
	 
	
	
	
	
 
 
	
	
		OK - still trying to get some noise out of my ES8316. Think I am pretty close but help/suggestions required, please! 
I am compiling my own 4.19 kernel: Ayufan versions have no ALSA devices at all. I now have
 Code: chris@rpro64:~$ uname -a 
Linux rpro64.dukla.net 4.19.0 #3 SMP PREEMPT Wed Oct 24 10:47:48 BST 2018 aarch64 aarch64 aarch64 GNU/Linux 
chris@rpro64:~$ aplay -l 
**** List of PLAYBACK Hardware Devices **** 
card 0: rockchipes8316c [rockchip,es8316-codec], device 0: ff890000.i2s-ES8316 HiFi ES8316 HiFi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0
 
Which is quite promising. Also
 Code: $ aplay -L 
null 
    Discard all samples (playback) or generate zero samples (capture) 
default:CARD=rockchipes8316c 
    rockchip,es8316-codec,  
    Default Audio Device 
sysdefault:CARD=rockchipes8316c 
    rockchip,es8316-codec,  
    Default Audio Device 
dmix:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec,  
    Direct sample mixing device 
dsnoop:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec,  
    Direct sample snooping device 
hw:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec,  
    Direct hardware device without any conversions 
plughw:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec,  
    Hardware device with all software conversions
 
But 
 Code: $ speaker-test -c 2 sysdefault:CARD=rockchipes8316c 
 
speaker-test 1.1.6 
 
Playback device is default 
Stream parameters are 48000Hz, S16_LE, 2 channels 
Using 16 octaves of pink noise 
Playback open error: -22,Invalid argument
 
And then system log fills with 
 Code: [   83.424483] es8316 1-0010: No sysclk provided 
[   83.425020] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22
 
I did remember 0010 in an error message earlier in the boot:
 Code: $ dmesg | grep ff880000 
[    2.090028] rockchip-pinctrl pinctrl: pin gpio4-0 already requested by 1-0010; cannot claim for ff880000.i2s 
[    2.090907] rockchip-pinctrl pinctrl: pin-128 (ff880000.i2s) status -22 
[    2.092501] rockchip-i2s ff880000.i2s: Error applying setting, reverse things back 
[    2.093180] rockchip-i2s: probe of ff880000.i2s failed with error -22
 
So the question - how to sort the 1-0010 | gpio4-0 | ff880000.i2s conflict? Pretty sure this is in the device tree somewhere but have yet to find something obvious.
	  
	
	
- PinePhone BraveHeart now v1.2b 3/32Gb daily driver, Tow-boot with pmOS/SXMO on eMMC
 
 
- PinePhone pmOS Community Edition 2/16Gb driving my picture frame, Tow-boot with pmOS/SXMO on eMMC
 
 
- PinePhone Pro Explorer Edition, Tow-boot on SPI, Arch/SXMO on eMMC
 
 
- ROCKPro64 v2.1 2GB, 16Gb eMMC retired in favour of a fruity upgrade
 
 
 
 
	
	
 
 
	
	
		The problem of "es8316" is quite tough and can not be solved by only modifying "*.dts" or "kernel-config". 
For example, your proposal is, 
> So the question - how to sort the 1-0010 | gpio4-0 | ff880000.i2s conflict ?
 
If you fix it, you can surely see some improvement. 
However, this kind of modification alone is not enough,  
and only the effect of reducing errors from the "boot-log" is obtained.
 
In order for "es8316" to work correctly, both "dts" and "*.c source-code" modifications are necessary,  
and the modification is more extensive (perhaps, more than you think).
 
"original-kernel (4.19.0-1073-ayufan)"
 https://github.com/ayufan-rock64/linux-m..._arm64.deb
Code: $ uname -a 
Linux Rock64 4.19.0-1073-ayufan-ga6e013135a6e #1 SMP PREEMPT Tue Oct 23 09:19:54 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux 
 
[   16.057479] rockchip-pinctrl pinctrl: pin gpio4-0 already requested by ff880000.i2s; cannot claim for 1-0010 
[   16.059298] rockchip-pinctrl pinctrl: pin-128 (1-0010) status -22 
[   16.060034] rockchip-pinctrl pinctrl: could not request pin 128 (gpio4-0) from group i2s-8ch-mclk  on device rockchip-pinctrl 
[   16.061258] es8316 1-0010: Error applying setting, reverse things back 
[   16.062080] es8316: probe of 1-0010 failed with error -22 
 
$ aplay -l 
aplay: device_list:270: no soundcards found... 
 
$ aplay -L 
default 
    Playback/recording through the PulseAudio sound server 
null 
    Discard all samples (playback) or generate zero samples (capture) 
pulse 
    PulseAudio Sound Server 
 
$ pactl list sinks 
Sink #0 
        State: IDLE 
        Name: auto_null 
        Description: Dummy Output 
        Driver: module-null-sink.c 
        Sample Specification: s16le 2ch 44100Hz 
        Channel Map: front-left,front-right 
        Owner Module: 10 
        Mute: no 
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB 
                balance 0.00 
        Base Volume: 65536 / 100% / 0.00 dB 
        Monitor Source: auto_null.monitor 
        Latency: 2213366 usec, configured 2000000 usec 
        Flags: DECIBEL_VOLUME LATENCY 
        Properties: 
                device.description = "Dummy Output" 
                device.class = "abstract" 
                device.icon_name = "audio-card" 
        Formats: 
                pcm
 
"original-kernel" with "modified-dts" (your proposal, perhaps what you tried to do)
 Code: $ uname -a 
Linux Rock64 4.19.0-1073-ayufan-ga6e013135a6e #1 SMP PREEMPT Tue Oct 23 09:19:54 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux 
 
[   10.538432] asoc-simple-card es8316-sound: ASoC: no source widget found for MICBIAS1 
[   10.539291] asoc-simple-card es8316-sound: ASoC: Failed to add route MICBIAS1 -> direct -> Mic Jack 
[   10.540228] asoc-simple-card es8316-sound: ASoC: no sink widget found for IN1P 
[   10.540973] asoc-simple-card es8316-sound: ASoC: Failed to add route Mic Jack -> direct -> IN1P 
[   11.978401] es8316 1-0010: ASoC: Differential Mux DAPM update failed: -6 
[   11.979565] es8316 1-0010: ASoC: Digital Mic Mux DAPM update failed: -6 
[   13.149657] es8316 1-0010: ASoC: Differential Mux DAPM update failed: -6 
[   13.151011] es8316 1-0010: ASoC: Digital Mic Mux DAPM update failed: -6 
 
$ aplay -l 
**** List of PLAYBACK Hardware Devices **** 
[  280.461123] es8316 1-0010: No sysclk provided 
[  280.464960] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
... 
[  280.507795] es8316 1-0010: No sysclk provided 
[  280.511685] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
card 0: rockchipes8316c [rockchip,es8316-codec], device 0: ff890000.i2s-ES8316 HiFi ES8316 HiFi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
 
$ aplay -L 
[  347.616981] es8316 1-0010: No sysclk provided 
[  347.620827] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
... 
[  347.663448] es8316 1-0010: No sysclk provided 
[  347.667337] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
default 
    Playback/recording through the PulseAudio sound server 
null 
    Discard all samples (playback) or generate zero samples (capture) 
pulse 
    PulseAudio Sound Server 
sysdefault:CARD=rockchipes8316c 
    rockchip,es8316-codec, 
    Default Audio Device 
dmix:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec, 
    Direct sample mixing device 
dsnoop:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec, 
    Direct sample snooping device 
hw:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec, 
    Direct hardware device without any conversions 
plughw:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec, 
    Hardware device with all software conversions 
 
$ pactl list sinks 
[  129.097332] es8316 1-0010: No sysclk provided 
[  129.097841] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
... 
[  129.110316] es8316 1-0010: No sysclk provided 
[  129.110825] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
Sink #0 
        State: IDLE 
        Name: auto_null 
        Description: Dummy Output 
        Driver: module-null-sink.c 
        Sample Specification: s16le 2ch 44100Hz 
        Channel Map: front-left,front-right 
        Owner Module: 11 
        Mute: no 
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB 
                balance 0.00 
        Base Volume: 65536 / 100% / 0.00 dB 
        Monitor Source: auto_null.monitor 
        Latency: 2216568 usec, configured 2000000 usec 
        Flags: DECIBEL_VOLUME LATENCY 
        Properties: 
                device.description = "Dummy Output" 
                device.class = "abstract" 
                device.icon_name = "audio-card" 
        Formats: 
                pcm
  
"my-kernel"
 Code: $ uname -a 
Linux Rock64 4.19.0-1073-ayufan-ga6e013135a6e #1 SMP PREEMPT Tue Oct 23 20:05:55 JST 2018 aarch64 aarch64 aarch64 GNU/Linux 
 
[    3.683845] asoc-simple-card es8316-sound: ES8316 HiFi <-> ff890000.i2s mapping ok 
[    3.684589] asoc-simple-card es8316-sound: ASoC: no DMI vendor name! 
[    3.691358] asoc-simple-card spdif-sound: dit-hifi <-> ff870000.spdif mapping ok 
[    3.692034] asoc-simple-card spdif-sound: ASoC: no DMI vendor name! 
[    4.254556] asoc-simple-card hdmi-sound: i2s-hifi <-> ff8a0000.i2s mapping ok 
[    4.255369] asoc-simple-card hdmi-sound: ASoC: no DMI vendor name! 
 
[    4.500561] ALSA device list: 
[    4.500561]   #0: ROCKCHIP,ES8316 
[    4.500561]   #1: ROCKCHIP,SPDIF 
[    4.500561]   #2: ROCKCHIP,HDMI 
 
 
$ aplay -l 
**** List of PLAYBACK Hardware Devices **** 
card 0: ROCKCHIPES8316 [ROCKCHIP,ES8316], device 0: ff890000.i2s-ES8316 HiFi ES8316 HiFi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
card 1: ROCKCHIPSPDIF [ROCKCHIP,SPDIF], device 0: ff870000.spdif-dit-hifi dit-hifi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
card 2: ROCKCHIPHDMI [ROCKCHIP,HDMI], device 0: ff8a0000.i2s-i2s-hifi i2s-hifi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
 
$ aplay -L 
default 
    Playback/recording through the PulseAudio sound server 
null 
    Discard all samples (playback) or generate zero samples (capture) 
pulse 
    PulseAudio Sound Server 
default:CARD=ROCKCHIPES8316 
    ROCKCHIP,ES8316, 
    Default Audio Device 
sysdefault:CARD=ROCKCHIPES8316 
    ROCKCHIP,ES8316, 
    Default Audio Device 
dmix:CARD=ROCKCHIPES8316,DEV=0 
    ROCKCHIP,ES8316, 
    Direct sample mixing device 
dsnoop:CARD=ROCKCHIPES8316,DEV=0 
    ROCKCHIP,ES8316, 
    Direct sample snooping device 
hw:CARD=ROCKCHIPES8316,DEV=0 
    ROCKCHIP,ES8316, 
    Direct hardware device without any conversions 
plughw:CARD=ROCKCHIPES8316,DEV=0 
    ROCKCHIP,ES8316, 
    Hardware device with all software conversions 
default:CARD=ROCKCHIPSPDIF 
    ROCKCHIP,SPDIF, 
    Default Audio Device 
sysdefault:CARD=ROCKCHIPSPDIF 
    ROCKCHIP,SPDIF, 
    Default Audio Device 
dmix:CARD=ROCKCHIPSPDIF,DEV=0 
    ROCKCHIP,SPDIF, 
    Direct sample mixing device 
dsnoop:CARD=ROCKCHIPSPDIF,DEV=0 
    ROCKCHIP,SPDIF, 
    Direct sample snooping device 
hw:CARD=ROCKCHIPSPDIF,DEV=0 
    ROCKCHIP,SPDIF, 
    Direct hardware device without any conversions 
plughw:CARD=ROCKCHIPSPDIF,DEV=0 
    ROCKCHIP,SPDIF, 
    Hardware device with all software conversions 
default:CARD=ROCKCHIPHDMI 
    ROCKCHIP,HDMI, 
    Default Audio Device 
sysdefault:CARD=ROCKCHIPHDMI 
    ROCKCHIP,HDMI, 
    Default Audio Device 
dmix:CARD=ROCKCHIPHDMI,DEV=0 
    ROCKCHIP,HDMI, 
    Direct sample mixing device 
dsnoop:CARD=ROCKCHIPHDMI,DEV=0 
    ROCKCHIP,HDMI, 
    Direct sample snooping device 
hw:CARD=ROCKCHIPHDMI,DEV=0 
    ROCKCHIP,HDMI, 
    Direct hardware device without any conversions 
plughw:CARD=ROCKCHIPHDMI,DEV=0 
    ROCKCHIP,HDMI, 
    Hardware device with all software conversions 
 
$ pactl list sinks 
Sink #0 
        State: IDLE 
        Name: alsa_output.platform-es8316-sound.stereo-fallback 
        Description: Built-in Audio Stereo 
        Driver: module-alsa-card.c 
        Sample Specification: s16le 2ch 44100Hz 
        Channel Map: front-left,front-right 
        Owner Module: 6 
        Mute: no 
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB 
                balance 0.00 
        Base Volume: 65536 / 100% / 0.00 dB 
        Monitor Source: alsa_output.platform-es8316-sound.stereo-fallback.monitor 
        Latency: 1896804 usec, configured 2000000 usec 
        Flags: HARDWARE HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
        Properties: 
                alsa.resolution_bits = "16" 
                device.api = "alsa" 
                device.class = "sound" 
                alsa.class = "generic" 
                alsa.subclass = "generic-mix" 
                alsa.name = "" 
                alsa.id = "ff890000.i2s-ES8316 HiFi ES8316 HiFi-0" 
                alsa.subdevice = "0" 
                alsa.subdevice_name = "subdevice #0" 
                alsa.device = "0" 
                alsa.card = "0" 
                alsa.card_name = "ROCKCHIP,ES8316" 
                alsa.long_card_name = "ROCKCHIP,ES8316" 
                device.bus_path = "platform-es8316-sound" 
                sysfs.path = "/devices/platform/es8316-sound/sound/card0" 
                device.form_factor = "internal" 
                device.string = "hw:0" 
                device.buffering.buffer_size = "352800" 
                device.buffering.fragment_size = "176400" 
                device.access_mode = "mmap+timer" 
                device.profile.name = "stereo-fallback" 
                device.profile.description = "Stereo" 
                device.description = "Built-in Audio Stereo" 
                module-udev-detect.discovered = "1" 
                device.icon_name = "audio-card" 
        Ports: 
                analog-output-headphones: Headphones (priority: 9000) 
        Active Port: analog-output-headphones 
        Formats: 
                pcm 
 
Sink #1 
        State: IDLE 
        Name: alsa_output.platform-hdmi-sound.stereo-fallback 
        Description: Built-in Audio Stereo 
        Driver: module-alsa-card.c 
        Sample Specification: s16le 2ch 44100Hz 
        Channel Map: front-left,front-right 
        Owner Module: 7 
        Mute: no 
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB 
                balance 0.00 
        Base Volume: 65536 / 100% / 0.00 dB 
        Monitor Source: alsa_output.platform-hdmi-sound.stereo-fallback.monitor 
        Latency: 1949733 usec, configured 2000000 usec 
        Flags: HARDWARE DECIBEL_VOLUME LATENCY 
        Properties: 
                alsa.resolution_bits = "16" 
                device.api = "alsa" 
                device.class = "sound" 
                alsa.class = "generic" 
                alsa.subclass = "generic-mix" 
                alsa.name = "" 
                alsa.id = "ff8a0000.i2s-i2s-hifi i2s-hifi-0" 
                alsa.subdevice = "0" 
                alsa.subdevice_name = "subdevice #0" 
                alsa.device = "0" 
                alsa.card = "2" 
                alsa.card_name = "ROCKCHIP,HDMI" 
                alsa.long_card_name = "ROCKCHIP,HDMI" 
                device.bus_path = "platform-hdmi-sound" 
                sysfs.path = "/devices/platform/hdmi-sound/sound/card2" 
                device.form_factor = "internal" 
                device.string = "hw:2" 
                device.buffering.buffer_size = "352800" 
                device.buffering.fragment_size = "176400" 
                device.access_mode = "mmap+timer" 
                device.profile.name = "stereo-fallback" 
                device.profile.description = "Stereo" 
                device.description = "Built-in Audio Stereo" 
                module-udev-detect.discovered = "1" 
                device.icon_name = "audio-card" 
        Ports: 
                analog-output: Analog Output (priority: 9900) 
        Active Port: analog-output 
        Formats: 
                pcm 
 
Sink #2 
        State: IDLE 
        Name: alsa_output.platform-spdif-sound.stereo-fallback 
        Description: Built-in Audio Stereo 
        Driver: module-alsa-card.c 
        Sample Specification: s16le 2ch 44100Hz 
        Channel Map: front-left,front-right 
        Owner Module: 8 
        Mute: no 
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB 
                balance 0.00 
        Base Volume: 65536 / 100% / 0.00 dB 
        Monitor Source: alsa_output.platform-spdif-sound.stereo-fallback.monitor 
        Latency: 1985337 usec, configured 2000000 usec 
        Flags: HARDWARE DECIBEL_VOLUME LATENCY 
        Properties: 
                alsa.resolution_bits = "16" 
                device.api = "alsa" 
                device.class = "sound" 
                alsa.class = "generic" 
                alsa.subclass = "generic-mix" 
                alsa.name = "" 
                alsa.id = "ff870000.spdif-dit-hifi dit-hifi-0" 
                alsa.subdevice = "0" 
                alsa.subdevice_name = "subdevice #0" 
                alsa.device = "0" 
                alsa.card = "1" 
                alsa.card_name = "ROCKCHIP,SPDIF" 
                alsa.long_card_name = "ROCKCHIP,SPDIF" 
                device.bus_path = "platform-spdif-sound" 
                sysfs.path = "/devices/platform/spdif-sound/sound/card1" 
                device.form_factor = "internal" 
                device.string = "hw:1" 
                device.buffering.buffer_size = "352800" 
                device.buffering.fragment_size = "176400" 
                device.access_mode = "mmap+timer" 
                device.profile.name = "stereo-fallback" 
                device.profile.description = "Stereo" 
                device.description = "Built-in Audio Stereo" 
                module-udev-detect.discovered = "1" 
                device.icon_name = "audio-card" 
        Ports: 
                analog-output: Analog Output (priority: 9900) 
        Active Port: analog-output 
        Formats: 
                pcm
 
Of course, all the sounds "es8316" / "hdmi" / "spdif" are working. 
However, sadly, "mainline-kernel" has not yet implemented "video-accelerator" (mpp related),  
it is not fun even if only the sound comes out.
 
So, I usually do not use "mainline-kernel".
	  
	
	
	
	
 
 
	
	
		 (10-26-2018, 05:46 AM)t4_4t Wrote:  ... 
 
Of course, all the sounds "es8316" / "hdmi" / "spdif" are working. 
However, sadly, "mainline-kernel" has not yet implemented "video-accelerator" (mpp related),  
it is not fun even if only the sound comes out. 
 
So, I usually do not use "mainline-kernel". 
So you mark it as "SOLVED". Could you kindly point us to the solution? Diffs or so... since that comes to modifying kernel source as you've mentioned.
	  
	
	
	
	
 
 
	
	
		Please make a 'Pull Request' so we all can hear something. Thanks.
	 
	
	
Sorry for any mistakes. English is not my native language 
1. Quartz64 Model B, 4GB RAM
 
2. Quartz64 Model A, 4GB RAM
 
3. RockPro64 v2.1
 https://linux-nerds.org/
 
	
	
 
 
	
	
		 (10-26-2018, 05:46 AM)t4_4t Wrote:  The problem of "es8316" is quite tough and can not be solved by only modifying "*.dts" or "kernel-config". 
 
For example, your proposal is, 
> So the question - how to sort the 1-0010 | gpio4-0 | ff880000.i2s conflict ? 
 
If you fix it, you can surely see some improvement. 
However, this kind of modification alone is not enough,  
and only the effect of reducing errors from the "boot-log" is obtained. 
 
In order for "es8316" to work correctly, both "dts" and "*.c source-code" modifications are necessary,  
and the modification is more extensive (perhaps, more than you think). 
 
"original-kernel (4.19.0-1073-ayufan)" 
https://github.com/ayufan-rock64/linux-m..._arm64.deb 
Code: $ uname -a 
Linux Rock64 4.19.0-1073-ayufan-ga6e013135a6e #1 SMP PREEMPT Tue Oct 23 09:19:54 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux 
 
[   16.057479] rockchip-pinctrl pinctrl: pin gpio4-0 already requested by ff880000.i2s; cannot claim for 1-0010 
[   16.059298] rockchip-pinctrl pinctrl: pin-128 (1-0010) status -22 
[   16.060034] rockchip-pinctrl pinctrl: could not request pin 128 (gpio4-0) from group i2s-8ch-mclk  on device rockchip-pinctrl 
[   16.061258] es8316 1-0010: Error applying setting, reverse things back 
[   16.062080] es8316: probe of 1-0010 failed with error -22 
 
$ aplay -l 
aplay: device_list:270: no soundcards found... 
 
$ aplay -L 
default 
    Playback/recording through the PulseAudio sound server 
null 
    Discard all samples (playback) or generate zero samples (capture) 
pulse 
    PulseAudio Sound Server 
 
$ pactl list sinks 
Sink #0 
        State: IDLE 
        Name: auto_null 
        Description: Dummy Output 
        Driver: module-null-sink.c 
        Sample Specification: s16le 2ch 44100Hz 
        Channel Map: front-left,front-right 
        Owner Module: 10 
        Mute: no 
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB 
                balance 0.00 
        Base Volume: 65536 / 100% / 0.00 dB 
        Monitor Source: auto_null.monitor 
        Latency: 2213366 usec, configured 2000000 usec 
        Flags: DECIBEL_VOLUME LATENCY 
        Properties: 
                device.description = "Dummy Output" 
                device.class = "abstract" 
                device.icon_name = "audio-card" 
        Formats: 
                pcm
  
"original-kernel" with "modified-dts" (your proposal, perhaps what you tried to do) 
Code: $ uname -a 
Linux Rock64 4.19.0-1073-ayufan-ga6e013135a6e #1 SMP PREEMPT Tue Oct 23 09:19:54 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux 
 
[   10.538432] asoc-simple-card es8316-sound: ASoC: no source widget found for MICBIAS1 
[   10.539291] asoc-simple-card es8316-sound: ASoC: Failed to add route MICBIAS1 -> direct -> Mic Jack 
[   10.540228] asoc-simple-card es8316-sound: ASoC: no sink widget found for IN1P 
[   10.540973] asoc-simple-card es8316-sound: ASoC: Failed to add route Mic Jack -> direct -> IN1P 
[   11.978401] es8316 1-0010: ASoC: Differential Mux DAPM update failed: -6 
[   11.979565] es8316 1-0010: ASoC: Digital Mic Mux DAPM update failed: -6 
[   13.149657] es8316 1-0010: ASoC: Differential Mux DAPM update failed: -6 
[   13.151011] es8316 1-0010: ASoC: Digital Mic Mux DAPM update failed: -6 
 
$ aplay -l 
**** List of PLAYBACK Hardware Devices **** 
[  280.461123] es8316 1-0010: No sysclk provided 
[  280.464960] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
... 
[  280.507795] es8316 1-0010: No sysclk provided 
[  280.511685] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
card 0: rockchipes8316c [rockchip,es8316-codec], device 0: ff890000.i2s-ES8316 HiFi ES8316 HiFi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
 
$ aplay -L 
[  347.616981] es8316 1-0010: No sysclk provided 
[  347.620827] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
... 
[  347.663448] es8316 1-0010: No sysclk provided 
[  347.667337] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
default 
    Playback/recording through the PulseAudio sound server 
null 
    Discard all samples (playback) or generate zero samples (capture) 
pulse 
    PulseAudio Sound Server 
sysdefault:CARD=rockchipes8316c 
    rockchip,es8316-codec, 
    Default Audio Device 
dmix:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec, 
    Direct sample mixing device 
dsnoop:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec, 
    Direct sample snooping device 
hw:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec, 
    Direct hardware device without any conversions 
plughw:CARD=rockchipes8316c,DEV=0 
    rockchip,es8316-codec, 
    Hardware device with all software conversions 
 
$ pactl list sinks 
[  129.097332] es8316 1-0010: No sysclk provided 
[  129.097841] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
... 
[  129.110316] es8316 1-0010: No sysclk provided 
[  129.110825] es8316 1-0010: ASoC: can't open codec ES8316 HiFi: -22 
Sink #0 
        State: IDLE 
        Name: auto_null 
        Description: Dummy Output 
        Driver: module-null-sink.c 
        Sample Specification: s16le 2ch 44100Hz 
        Channel Map: front-left,front-right 
        Owner Module: 11 
        Mute: no 
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB 
                balance 0.00 
        Base Volume: 65536 / 100% / 0.00 dB 
        Monitor Source: auto_null.monitor 
        Latency: 2216568 usec, configured 2000000 usec 
        Flags: DECIBEL_VOLUME LATENCY 
        Properties: 
                device.description = "Dummy Output" 
                device.class = "abstract" 
                device.icon_name = "audio-card" 
        Formats: 
                pcm
  
 
"my-kernel" 
Code: $ uname -a 
Linux Rock64 4.19.0-1073-ayufan-ga6e013135a6e #1 SMP PREEMPT Tue Oct 23 20:05:55 JST 2018 aarch64 aarch64 aarch64 GNU/Linux 
 
[    3.683845] asoc-simple-card es8316-sound: ES8316 HiFi <-> ff890000.i2s mapping ok 
[    3.684589] asoc-simple-card es8316-sound: ASoC: no DMI vendor name! 
[    3.691358] asoc-simple-card spdif-sound: dit-hifi <-> ff870000.spdif mapping ok 
[    3.692034] asoc-simple-card spdif-sound: ASoC: no DMI vendor name! 
[    4.254556] asoc-simple-card hdmi-sound: i2s-hifi <-> ff8a0000.i2s mapping ok 
[    4.255369] asoc-simple-card hdmi-sound: ASoC: no DMI vendor name! 
 
[    4.500561] ALSA device list: 
[    4.500561]   #0: ROCKCHIP,ES8316 
[    4.500561]   #1: ROCKCHIP,SPDIF 
[    4.500561]   #2: ROCKCHIP,HDMI 
 
 
$ aplay -l 
**** List of PLAYBACK Hardware Devices **** 
card 0: ROCKCHIPES8316 [ROCKCHIP,ES8316], device 0: ff890000.i2s-ES8316 HiFi ES8316 HiFi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
card 1: ROCKCHIPSPDIF [ROCKCHIP,SPDIF], device 0: ff870000.spdif-dit-hifi dit-hifi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
card 2: ROCKCHIPHDMI [ROCKCHIP,HDMI], device 0: ff8a0000.i2s-i2s-hifi i2s-hifi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
 
$ aplay -L 
default 
    Playback/recording through the PulseAudio sound server 
null 
    Discard all samples (playback) or generate zero samples (capture) 
pulse 
    PulseAudio Sound Server 
default:CARD=ROCKCHIPES8316 
    ROCKCHIP,ES8316, 
    Default Audio Device 
sysdefault:CARD=ROCKCHIPES8316 
    ROCKCHIP,ES8316, 
    Default Audio Device 
dmix:CARD=ROCKCHIPES8316,DEV=0 
    ROCKCHIP,ES8316, 
    Direct sample mixing device 
dsnoop:CARD=ROCKCHIPES8316,DEV=0 
    ROCKCHIP,ES8316, 
    Direct sample snooping device 
hw:CARD=ROCKCHIPES8316,DEV=0 
    ROCKCHIP,ES8316, 
    Direct hardware device without any conversions 
plughw:CARD=ROCKCHIPES8316,DEV=0 
    ROCKCHIP,ES8316, 
    Hardware device with all software conversions 
default:CARD=ROCKCHIPSPDIF 
    ROCKCHIP,SPDIF, 
    Default Audio Device 
sysdefault:CARD=ROCKCHIPSPDIF 
    ROCKCHIP,SPDIF, 
    Default Audio Device 
dmix:CARD=ROCKCHIPSPDIF,DEV=0 
    ROCKCHIP,SPDIF, 
    Direct sample mixing device 
dsnoop:CARD=ROCKCHIPSPDIF,DEV=0 
    ROCKCHIP,SPDIF, 
    Direct sample snooping device 
hw:CARD=ROCKCHIPSPDIF,DEV=0 
    ROCKCHIP,SPDIF, 
    Direct hardware device without any conversions 
plughw:CARD=ROCKCHIPSPDIF,DEV=0 
    ROCKCHIP,SPDIF, 
    Hardware device with all software conversions 
default:CARD=ROCKCHIPHDMI 
    ROCKCHIP,HDMI, 
    Default Audio Device 
sysdefault:CARD=ROCKCHIPHDMI 
    ROCKCHIP,HDMI, 
    Default Audio Device 
dmix:CARD=ROCKCHIPHDMI,DEV=0 
    ROCKCHIP,HDMI, 
    Direct sample mixing device 
dsnoop:CARD=ROCKCHIPHDMI,DEV=0 
    ROCKCHIP,HDMI, 
    Direct sample snooping device 
hw:CARD=ROCKCHIPHDMI,DEV=0 
    ROCKCHIP,HDMI, 
    Direct hardware device without any conversions 
plughw:CARD=ROCKCHIPHDMI,DEV=0 
    ROCKCHIP,HDMI, 
    Hardware device with all software conversions 
 
$ pactl list sinks 
Sink #0 
        State: IDLE 
        Name: alsa_output.platform-es8316-sound.stereo-fallback 
        Description: Built-in Audio Stereo 
        Driver: module-alsa-card.c 
        Sample Specification: s16le 2ch 44100Hz 
        Channel Map: front-left,front-right 
        Owner Module: 6 
        Mute: no 
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB 
                balance 0.00 
        Base Volume: 65536 / 100% / 0.00 dB 
        Monitor Source: alsa_output.platform-es8316-sound.stereo-fallback.monitor 
        Latency: 1896804 usec, configured 2000000 usec 
        Flags: HARDWARE HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY 
        Properties: 
                alsa.resolution_bits = "16" 
                device.api = "alsa" 
                device.class = "sound" 
                alsa.class = "generic" 
                alsa.subclass = "generic-mix" 
                alsa.name = "" 
                alsa.id = "ff890000.i2s-ES8316 HiFi ES8316 HiFi-0" 
                alsa.subdevice = "0" 
                alsa.subdevice_name = "subdevice #0" 
                alsa.device = "0" 
                alsa.card = "0" 
                alsa.card_name = "ROCKCHIP,ES8316" 
                alsa.long_card_name = "ROCKCHIP,ES8316" 
                device.bus_path = "platform-es8316-sound" 
                sysfs.path = "/devices/platform/es8316-sound/sound/card0" 
                device.form_factor = "internal" 
                device.string = "hw:0" 
                device.buffering.buffer_size = "352800" 
                device.buffering.fragment_size = "176400" 
                device.access_mode = "mmap+timer" 
                device.profile.name = "stereo-fallback" 
                device.profile.description = "Stereo" 
                device.description = "Built-in Audio Stereo" 
                module-udev-detect.discovered = "1" 
                device.icon_name = "audio-card" 
        Ports: 
                analog-output-headphones: Headphones (priority: 9000) 
        Active Port: analog-output-headphones 
        Formats: 
                pcm 
 
Sink #1 
        State: IDLE 
        Name: alsa_output.platform-hdmi-sound.stereo-fallback 
        Description: Built-in Audio Stereo 
        Driver: module-alsa-card.c 
        Sample Specification: s16le 2ch 44100Hz 
        Channel Map: front-left,front-right 
        Owner Module: 7 
        Mute: no 
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB 
                balance 0.00 
        Base Volume: 65536 / 100% / 0.00 dB 
        Monitor Source: alsa_output.platform-hdmi-sound.stereo-fallback.monitor 
        Latency: 1949733 usec, configured 2000000 usec 
        Flags: HARDWARE DECIBEL_VOLUME LATENCY 
        Properties: 
                alsa.resolution_bits = "16" 
                device.api = "alsa" 
                device.class = "sound" 
                alsa.class = "generic" 
                alsa.subclass = "generic-mix" 
                alsa.name = "" 
                alsa.id = "ff8a0000.i2s-i2s-hifi i2s-hifi-0" 
                alsa.subdevice = "0" 
                alsa.subdevice_name = "subdevice #0" 
                alsa.device = "0" 
                alsa.card = "2" 
                alsa.card_name = "ROCKCHIP,HDMI" 
                alsa.long_card_name = "ROCKCHIP,HDMI" 
                device.bus_path = "platform-hdmi-sound" 
                sysfs.path = "/devices/platform/hdmi-sound/sound/card2" 
                device.form_factor = "internal" 
                device.string = "hw:2" 
                device.buffering.buffer_size = "352800" 
                device.buffering.fragment_size = "176400" 
                device.access_mode = "mmap+timer" 
                device.profile.name = "stereo-fallback" 
                device.profile.description = "Stereo" 
                device.description = "Built-in Audio Stereo" 
                module-udev-detect.discovered = "1" 
                device.icon_name = "audio-card" 
        Ports: 
                analog-output: Analog Output (priority: 9900) 
        Active Port: analog-output 
        Formats: 
                pcm 
 
Sink #2 
        State: IDLE 
        Name: alsa_output.platform-spdif-sound.stereo-fallback 
        Description: Built-in Audio Stereo 
        Driver: module-alsa-card.c 
        Sample Specification: s16le 2ch 44100Hz 
        Channel Map: front-left,front-right 
        Owner Module: 8 
        Mute: no 
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB 
                balance 0.00 
        Base Volume: 65536 / 100% / 0.00 dB 
        Monitor Source: alsa_output.platform-spdif-sound.stereo-fallback.monitor 
        Latency: 1985337 usec, configured 2000000 usec 
        Flags: HARDWARE DECIBEL_VOLUME LATENCY 
        Properties: 
                alsa.resolution_bits = "16" 
                device.api = "alsa" 
                device.class = "sound" 
                alsa.class = "generic" 
                alsa.subclass = "generic-mix" 
                alsa.name = "" 
                alsa.id = "ff870000.spdif-dit-hifi dit-hifi-0" 
                alsa.subdevice = "0" 
                alsa.subdevice_name = "subdevice #0" 
                alsa.device = "0" 
                alsa.card = "1" 
                alsa.card_name = "ROCKCHIP,SPDIF" 
                alsa.long_card_name = "ROCKCHIP,SPDIF" 
                device.bus_path = "platform-spdif-sound" 
                sysfs.path = "/devices/platform/spdif-sound/sound/card1" 
                device.form_factor = "internal" 
                device.string = "hw:1" 
                device.buffering.buffer_size = "352800" 
                device.buffering.fragment_size = "176400" 
                device.access_mode = "mmap+timer" 
                device.profile.name = "stereo-fallback" 
                device.profile.description = "Stereo" 
                device.description = "Built-in Audio Stereo" 
                module-udev-detect.discovered = "1" 
                device.icon_name = "audio-card" 
        Ports: 
                analog-output: Analog Output (priority: 9900) 
        Active Port: analog-output 
        Formats: 
                pcm
  
Of course, all the sounds "es8316" / "hdmi" / "spdif" are working. 
However, sadly, "mainline-kernel" has not yet implemented "video-accelerator" (mpp related),  
it is not fun even if only the sound comes out. 
 
So, I usually do not use "mainline-kernel". 
I understand, i need to modify sound/soc/codecs/es8316.c  
Can you tell me which other files i need to modify?
 
Can you share your asound.rc file?
	  
	
	
	
	
 
 
	 
 |