I know that there is a supported sound driver in 2.6.x and in the BSP, but are there any plans or work already ongoing to support the audio chipset of the i.MX233 SoC in mainline kernels?
Solved! Go to Solution.
I'm integrating support for the Olimex Olinuxino into OpenWrt, and some users have already asked about audio support, so this is something I'll look into once the basic board support gets into trunk.
Looking at the sgtl5000 and the saif module it looks it supports devicetree. What do you think, would it be just a couple DTS additions for the board?
What needs to be done is to add support for the mx23 audio driver from 2.6.35 (linux-2.6-imx.git - Freescale i.MX Linux Tree ) into the mainline kernel.
On mx28 we do have audio supported. mx28evk, for example uses a sgtl5000 connected to the saif port as you mentioned, but on mx23 we will use its built-in codec.
So, please give a try on porting the FSL mx23 audio driver into 3.10-rcx.
I'd like to ask what was the reason for removing the driver for mx23's built-in audio codec from the kernel. Were there any substantial changes to kernel and it's device model right after 2.6.35? (I'm well aware that there are differences now, like device-tree support etc.)
Does the lack of the audio driver indicate that the Freescale's support for i.MX233 is slowly being discontinued? We'd like to base our product on i.MX233 LQFP (== without SAIF support, so the sgtl5000 codec & driver are out of question) and we have a decision to make whether to start porting the driver, wait for support to be added by Freescale or anybody else or abandon i.MX233 completely.
Can you pls provide some update on your progress? A lot of users are eagerly awaiting audio support for this SoC. :smileyhappy:
Thanks a lot,
I have some progress update of my own port. Right now I do have working audio output. Audio input may also be working but it has not been tested yet and even if it is not working it'll be an easy work to get it running.
The code need cleaning and device-tree bindings documentation has to be written but it should be ready soon. I'll be probably contacting ALSA or Linux developers about a merge soon.
According to errata i.MX 233 DAC DMA halts unexpectedly. I tried your's driver with kernel 2.6, and 3.7 but it halts, as documentation says. The given solution doesn't work. Look's like the problem in this post:
Re: subtle bug with alsa driver backend or mxs-dac driver.
But in my version I don't even need to underflow DMA buffer, after a few driver opens it halts. Furthermore it halts also after first open and about an hour of file playing.
Thanks in advance:)
I'm currently independently porting the sound driver for our product. So far everything seems to be working (e.g. device-tree bindings, hardware initialization, volume control) except for DMA transfer so there is no audio output or input yet... 3.10.x kernel handles sound DMA completely differently than 2.6.35 and even than 3.9.x!
Uwe, from Pengutronix, did a audio-out plugin which he will eventually post for merging.
I got the driver and will test it. Once it works I can post here for people to help on this as well.
(it is done for 3.10)
I am not aware of any plans or work in this area. It would be definitely a good addition to have in mainline kernel.
In case you investigate about it and have any progress or issues, please let us know.