alexparser Posted February 17, 2016 Share Posted February 17, 2016 Hi, I have Lime2 with installed last version Armbian. How make I2S interface in slave mode? Need build a new kernel or I2S driver? Any recomendations please... Kind regards Link to comment Share on other sites More sharing options...
alexparser Posted February 18, 2016 Author Share Posted February 18, 2016 I found discussion about this here - http://www.cubieforums.com/index.php?topic=1081.0 How I understand, need to make patch souce code and rebuild linux kernel. But how to do correctly..? Help my please. Link to comment Share on other sites More sharing options...
Igor Posted February 18, 2016 Share Posted February 18, 2016 That patch is already a part of Armbian kernel and reported working on Cubietruck and Banana PRO. Link to comment Share on other sites More sharing options...
alexparser Posted February 18, 2016 Author Share Posted February 18, 2016 That patch is already a part of Armbian kernel and reported working on Cubietruck and Banana PRO. Thanks for info! That patch not presented in Lime2? Lime2 based on Allwinner A20 SOC like as Cubietruck and Banana PRO. May be you can help me porting this patch to Lime2? Link to comment Share on other sites More sharing options...
Igor Posted February 18, 2016 Share Posted February 18, 2016 All A20 boards share the same kernel so this patch is present. Check your script.bin ... I2S is only disabled in board configuration. [i2s_para] i2s_used = 0 i2s_channel = 2 i2s_mclk = port:PB05<2><1><default><default> i2s_bclk = port:PB06<2><1><default><default> i2s_lrclk = port:PB07<2><1><default><default> i2s_dout0 = port:PB08<2><1><default><default> i2s_dout1 = i2s_dout2 = i2s_dout3 = i2s_din = port:PB12<2><1><default><default> /boot/bin/lime2.bin (file location) bin2fex lime2.bin lime2.fex Check / edit / enable in fex file: change i2s_used = 0 to i2s_used = 1 fex2bin lime2.fex lime2.bin For wiring check Olimex docs. Link to comment Share on other sites More sharing options...
alexparser Posted February 18, 2016 Author Share Posted February 18, 2016 All A20 boards share the same kernel so this patch is present. Check your script.bin ... I2S is only disabled in board configuration. [i2s_para] i2s_used = 0 i2s_channel = 2 i2s_mclk = port:PB05<2><1><default><default> i2s_bclk = port:PB06<2><1><default><default> i2s_lrclk = port:PB07<2><1><default><default> i2s_dout0 = port:PB08<2><1><default><default> i2s_dout1 = i2s_dout2 = i2s_dout3 = i2s_din = port:PB12<2><1><default><default> /boot/bin/lime2.bin (file location) bin2fex lime2.bin lime2.fex Check / edit / enable in fex file: change i2s_used = 0 to i2s_used = 1 fex2bin lime2.fex lime2.bin For wiring check Olimex docs. I make correction a fex file. But after reboot I can't see the i2s device. root@lime2:~# aplay -l **** List of PLAYBACK Hardware Devices **** card 1: DAC [Brooklyn DAC], device 0: USB Audio [USB Audio] Subdevices: 1/1 Subdevice #0: subdevice #0 Link to comment Share on other sites More sharing options...
zador.blood.stained Posted February 19, 2016 Share Posted February 19, 2016 @alexparser Just to clarify: what Armbian image did you download? More specifically - with what kernel version? (You can check it with "uname -r" command on your device). Link to comment Share on other sites More sharing options...
alexparser Posted February 19, 2016 Author Share Posted February 19, 2016 Yes, course root@lime2:~# uname -a Linux lime2 4.2.3-sunxi #2 SMP Sun Oct 11 14:12:18 CEST 2015 armv7l GNU/Linux Link to comment Share on other sites More sharing options...
zador.blood.stained Posted February 19, 2016 Share Posted February 19, 2016 I2S works only in default/legacy (3.4.10x) kernel for now, so you need to install it (or use another Armbian image) to get it working (you still need script.fex tweaks to activate it). 1 Link to comment Share on other sites More sharing options...
alexparser Posted February 19, 2016 Author Share Posted February 19, 2016 I2S works only in default/legacy (3.4.10x) kernel for now, so you need to install it (or use another Armbian image) to get it working (you still need script.fex tweaks to activate it). Thanks! I'll be try.. Link to comment Share on other sites More sharing options...
Kevin Welsh Posted February 21, 2016 Share Posted February 21, 2016 Hi alexparser, any updates to share about I2S slave mode? I'm looking for hardware options for slave mode, too, and am willing/interested to collaborate. Link to comment Share on other sites More sharing options...
alexparser Posted February 21, 2016 Author Share Posted February 21, 2016 Hi alexparser, any updates to share about I2S slave mode? I'm looking for hardware options for slave mode, too, and am willing/interested to collaborate. Hi, So, I got success, I2S work in master mode only on 3.4.106-lime I think, slave mode must work also. But I don't have a external clock for test. Link to comment Share on other sites More sharing options...
Kevin Welsh Posted February 25, 2016 Share Posted February 25, 2016 Was there something specific about 3.4.106-lime? There are many other variables, but at the moment, I'm on 3.4.109-sunxi, and I see the I2S, speaker-test runs, but no audio on the I2S output. Link to comment Share on other sites More sharing options...
Kevin Welsh Posted February 25, 2016 Share Posted February 25, 2016 Do I need to jumper this: PB9/PH7_USB Link to comment Share on other sites More sharing options...
Igor Posted February 25, 2016 Share Posted February 25, 2016 Now you need to check and double check if you wired properly. Without looking to the board schematics is hard to tell which PINs are the right ones. Check also that those pins are not overlapping with some other function. This might cause problems so you would need to disable that. In fex settings. Link to comment Share on other sites More sharing options...
Kevin Welsh Posted February 25, 2016 Share Posted February 25, 2016 I wired it properly, according to their LIME2 user manual. But, evidently, the user manual shows different pinouts than another doc I found. Grr. Good news, I2S master mode is working w/ 3.4.109-sunxi Will report back on slave mode soon. Link to comment Share on other sites More sharing options...
Kevin Welsh Posted February 26, 2016 Share Posted February 26, 2016 As promised, I'm reporting back. I2S slave mode is functional on LIME2: 3.4.109-sunxi (Wheezy). Jessie is the next to test. 1 Link to comment Share on other sites More sharing options...
Kevin Welsh Posted February 27, 2016 Share Posted February 27, 2016 I2S Master Mode in Jessie is working. However, there is noise in 192kHz tracks. I have issues (noise) playing 192/24 tracks using I2S in Master or Slave mode. Is this a known issue? Is there a fix? I'm not sure if this issue existed in the other versions or not. Link to comment Share on other sites More sharing options...
Igor Posted February 27, 2016 Share Posted February 27, 2016 Check for more info here: http://www.cubieforums.com/index.php/topic,1081.0.html Link to comment Share on other sites More sharing options...
stephengrenfell Posted November 13, 2016 Share Posted November 13, 2016 I2S Master Mode in Jessie is working. However, there is noise in 192kHz tracks. I have issues (noise) playing 192/24 tracks using I2S in Master or Slave mode. Is this a known issue? Is there a fix? I'm not sure if this issue existed in the other versions or not. Hi Kevin, I am trying to get I2S Slave mode working. I have I2S Master mode working, but I do not know how to select / enable Slave mode. Can you shed any light on that ?. Thanks. Link to comment Share on other sites More sharing options...
Recommended Posts