RobertCNelson / armv7-multiplatform

MIT License
75 stars 42 forks source link

V3.11.x add sdma fw #10

Closed vooon closed 10 years ago

vooon commented 10 years ago

Hello Robert,

This patch adds sdma fw. See https://groups.google.com/forum/#!topic/wandboard/5TAOnXAdXZk

Now aplay /usr/share/sound/alsa/Noise.wav works, but in mono.

rzk commented 10 years ago

I can confirm this, you need SDMA firmware loaded to have SSI working. Also, I would prefer to see the original patches: https://patchwork.kernel.org/patch/2004061/ and https://patchwork.kernel.org/patch/2842714/ + your patch to defconfig for inclusion of the firmware.

RobertCNelson commented 10 years ago

First I'm not a lawyer...

I do not have a good answer for this issue at this time. Well unless http://lists.infradead.org/pipermail/linux-arm-kernel/2013-January/143122.html gets resolved. (I've also contacted Freescale Legal...)

So for right now I'd prefer the end user to install the "firmware" themselves. Due to where I live and that my employer has an obvious contract with freescale. I'd really prefer to NOT ship these binaries included in an image (kernel/rootfs) that will end up on my web server...

Regards,

RobertCNelson commented 10 years ago

There was some changes in v3.12.x related to device tree / sdma firmware tables, does v3.12.x work with your peripheral without the external sdma firmware..

vooon commented 10 years ago

Firmware is necessary, but it turned out that you just need to put the firmware in /lib/firmware/imx/sdma/. This works on 3.11 too. Include the blob in the kernel does not need.

root@wandboard:~# uname -a
Linux wandboard 3.12.0-armv7-x7 #1 SMP Fri Nov 8 01:12:35 MSK 2013 armv7l armv7l armv7l GNU/Linux
root@wandboard:~# dmesg | grep sdma
[    2.270365] imx-sdma 20ec000.sdma: initialized
[    5.544183] imx-sdma 20ec000.sdma: loaded firmware 1.1
root@wandboard:~# ls /lib/firmware/imx/sdma/
sdma-imx6q.bin
root@wandboard:~# aplay /usr/share/sounds/alsa/Noise.wav 
Playing WAVE '/usr/share/sounds/alsa/Noise.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Mono
RobertCNelson commented 10 years ago

Actually for audio, it doesn't seem to be needed for v3.12.x anymore as i've been running without the sdma firmware with, [speaker-test -c2] on my solo/dual/quad today and the 3.5mm output is working fine. Just haven't tested with real audio files at work yet.. Regards,

vooon commented 10 years ago

Confirmed. Removed sdma-imx6.bin and still sound on stgl5000 works!

root@wandboard-eth:~# aplay /usr/share/sounds/alsa/Noise.wav 
Playing WAVE '/usr/share/sounds/alsa/Noise.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Mono
root@wandboard-eth:~# dmesg | grep sdma
[    2.269651] imx-sdma 20ec000.sdma: initialized
[    5.622145] imx-sdma 20ec000.sdma: firmware not found
RobertCNelson commented 10 years ago

Thanks for confirming, i wonder what's left on these devices that still needs the sdma firmware to operate...