I had posted a thread recently requesting assistance to get ayufan Linux configured to support analog (sound) audio from the internal 3.5 mm A/V (headphone) jack. There were apparently a number of Rock64 users interested in this discussion, but there were no respondents offering any suggestions.   
 
Since then, I came across an excellent document detailing alsa configuration that lead me to implement the following solution in that I can now obtain audio from the Rock64's 3.5 mm headphone jack. 
 
sudo nano /etc/asound.conf 
 
defaults.ctl.card 1 
 defaults.pcm.card 1 
 defaults.pcm.device 0 
 
(Control-X to save file) 
 
Note that this configuration has only been tested on stretch-minimal-rock64-0.6.15-175-arm64 but should work on all current ayufan images.  It does not add a volume control to alsamixer, so you'll have to do additional configuration if your application requires a volume control. 
 
Bill, WA8WG
	 
	
	
	
	
 
 
	
	
		Thanks for writing this down, I did a similar config back when I got my first prototype board and testing the DAC audio board as well. I think librelec also has a more advanced config with soft volume controls etc...
	 
	
	
	
	
 
 
	
	
		Hi, 
 
Thanks for posting this. I am struggling to get sound out of the cinch outputs on the DAC addon board. 
Could one of you post a config, that is supposed to give me sound out of the cinch outputs? 
 
I am currently using this image:  
 
 
 
 
rock64@rock64:~$ uname -a 
Linux rock64 4.4.103-rockchip-ayufan-164 #1 SMP Sat Jan 6 11:15:18 UTC 2018 aarch64 GNU/Linux 
rock64@rock64:~$ aplay -l 
**** List of PLAYBACK Hardware Devices **** 
card 0: HDMI [HDMI], device 0: ff000000.i2s-i2s-hifi i2s-hifi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
card 1: I2S [I2S], device 0: ff010000.i2s-rk3328-hifi rk3328-hifi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
card 1: I2S [I2S], device 1: ff010000.i2s-snd-soc-dummy-dai snd-soc-dummy-dai-1 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
card 2: SPDIF [SPDIF], device 0: ff030000.spdif-dit-hifi dit-hifi-0 [] 
  Subdevices: 1/1 
  Subdevice #0: subdevice #0 
rock64@rock64:~$
	 
	
	
	
	
 
 
	
	
		Google Translate :  
I tried that way with "xenial-minimal-rock64-0.6.22-188-armhf" and "xenial-minimal-rock64-0.6.22-188-arm64", but I did not hear any sound. why? 
 
 
その方法を"xenial-minimal-rock64-0.6.22-188-armhf"と"xenial-minimal-rock64-0.6.22-188-arm64"で試しましたが、音が出ませんでした。何故?
	 
	
	
	
	
 
 
	
		
		
		03-02-2018, 11:24 AM 
(This post was last modified: 03-02-2018, 11:32 AM by pytheas.)
		
	 
	
		 (02-28-2018, 03:54 AM)pine3228 Wrote:  Google Translate :  
I tried that way with "xenial-minimal-rock64-0.6.22-188-armhf" and "xenial-minimal-rock64-0.6.22-188-arm64", but I did not hear any sound. why? 
 
 
その方法を"xenial-minimal-rock64-0.6.22-188-armhf"と"xenial-minimal-rock64-0.6.22-188-arm64"で試しましたが、音が出ませんでした。何故? 
I've good results following wbecks's solution (debian stretch mate 9.3, 4.4.112-rockchip-ayufan-189). 
Here is my list of packages relating to alsa (I don't know which or if any is necessary) 
alsa-utils 
libao-common 
libao4 
libasound2 
libasound2-data 
libasound2-dev 
libasound2-plugins 
libmatemixer0 
libmatemixer-common 
libopenal1 
pulseaudio
 
I use VLC 2.2.7.1 to play sound files,  setting Audio/audio device to I2S Analog stereo 
The output is strong enough to drive a true Sennheiser headset (4 - 400 ohms) 
Hope that helps...
	  
	
	
	
	
 
 
	
	
		 (03-02-2018, 11:24 AM)pytheas Wrote:   (02-28-2018, 03:54 AM)pine3228 Wrote:  Google Translate :  
I tried that way with "xenial-minimal-rock64-0.6.22-188-armhf" and "xenial-minimal-rock64-0.6.22-188-arm64", but I did not hear any sound. why? 
 
 
その方法を"xenial-minimal-rock64-0.6.22-188-armhf"と"xenial-minimal-rock64-0.6.22-188-arm64"で試しましたが、音が出ませんでした。何故?  
I've good results following wbecks's solution (debian stretch mate 9.3, 4.4.112-rockchip-ayufan-189). 
Here is my list of packages relating to alsa (I don't know which or if any is necessary) 
alsa-utils 
libao-common 
libao4 
libasound2 
libasound2-data 
libasound2-dev 
libasound2-plugins 
libmatemixer0 
libmatemixer-common 
libopenal1 
pulseaudio 
 
I use VLC 2.2.7.1 to play sound files, setting Audio/audio device to I2S Analog stereo  
The output is strong enough to drive a true Sennheiser headset (4 - 400 ohms) 
Hope that helps... 
I installed them, but I did not hear any sound.
	  
	
	
	
	
 
 
	
	
		Have you tried several headphones ? There are different types of plugs depending on whether there is a microphone  or not ...
	 
	
	
	
	
 
 
	
	
		 (03-05-2018, 08:37 AM)ピュテアスは Wrote:  Have you tried several headphones ? There are different types of plugs depending on whether there is a microphone  or not ... 
My headphones are of a standard 3.5 mm jack. Mike is not attached. 
speaker-test 
Even when I executed the command, I did not hear any sound. 
Sorry for my weird English.
	  
	
	
	
	
 
 
	
	
		but how to adjust the volume?
	 
	
	
	
	
 
 
	
	
		I found this on the Change Log for Mainline Kernel 5.5 
Quote:And finally rk3328 audio support, sdmmc detection fix and enabled 
    of the gpu on rk3399-puma. 
Quote:arm64: dts: rockchip: Add RK3328 audio pipelines 
Code: The audio pipelines for HDMI and the analog codec are internal to the 
SoC, so it makes sense to describe them at that level such that boards 
need only enable the respective nodes for outputs they implement. 
 
Signed-off-by: Robin Murphy 
--- 
 arch/arm64/boot/dts/rockchip/rk3328.dtsi | 32 ++++++++++++++++++++++++ 
 1 file changed, 32 insertions(+) 
 
diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi 
index 31cc1541f1f5..91306ebed4da 100644 
--- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi 
+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi 
@@ -142,6 +142,22 @@ 
 }; 
 }; 
  
+ analog_sound: analog-sound { 
+ compatible = "simple-audio-card"; 
+ simple-audio-card,format = "i2s"; 
+ simple-audio-card,mclk-fs = <256>; 
+ simple-audio-card,name = "Analog"; 
+ status = "disabled"; 
+ 
+ simple-audio-card,cpu { 
+ sound-dai = <&i2s1>; 
+ }; 
+ 
+ simple-audio-card,codec { 
+ sound-dai = <&codec>; 
+ }; 
+ }; 
+ 
 arm-pmu { 
 compatible = "arm,cortex-a53-pmu"; 
 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>, 
@@ -156,6 +172,22 @@ 
 ports = <&vop_out>; 
 }; 
  
+ hdmi_sound: hdmi-sound { 
+ compatible = "simple-audio-card"; 
+ simple-audio-card,format = "i2s"; 
+ simple-audio-card,mclk-fs = <128>; 
+ simple-audio-card,name = "HDMI"; 
+ status = "disabled"; 
+ 
+ simple-audio-card,cpu { 
+ sound-dai = <&i2s0>; 
+ }; 
+ 
+ simple-audio-card,codec { 
+ sound-dai = <&hdmi>; 
+ }; 
+ }; 
+ 
 psci { 
 compatible = "arm,psci-1.0", "arm,psci-0.2"; 
 method = "smc"; 
--  
2.17.1
 How can this rk3328.dtsi file be used to fix Audio on the Rock64 ?
	  
	
	
	
	
 
 
	 
 |