[alsa-devel] Problems with i.MX233 driver in 3.12rc2
Hello,
First post to this list - I hope this is the appropriate place to ask for this assistance.
I'm using the Olinuxino Maxi board with the i.MX233 processor. I'm using the 3.12rc2 kernel at the moment because this has recently introduced the drivers for this processor's audio. I understand that the drivers for this chip's audio are:
sound/soc/codecs/mxs-builtin-codec.c sound/soc/mxs/mxs-builtin-audio.c sound/soc/mxs/mxs-builtin-dai.c sound/soc/mxs/mxs-builtin-pcm.c
My application for the board is a simple C program that uses the Linphone library to make VOIP calls. The problem I am having is that audio usually works (playback and capture) perfectly fine from boot, but at some point it may suddenly go 'dead'. At this point, there is no longer any audio from the headphone socket. I have not yet pinpointed exactly what it takes to trigger the fault, but I have seen it happen once when the call was put on hold while a Linphone call was in progress.
Once the audio output is dead, these are some further observations: - When a Linphone call is received, I still hear a click from the headphone output when the call ends. - I have confirmed that the DAC / HP channels are turned up and unmuted. - If I run speaker-test when the audio is working, speaker-test periodically prints time duration information (presumably on each pass of its internal loop), like "0 - Front Left", "Time per period ...". When the audio is dead, speaker-test just freezes on "0 - Front Left" forever, as if some call is either blocking or returning to say it is busy. This might hopefully therefore be a useful point to start debugging. - I have only ever managed to restore audio using a reboot.
I would like to have a go at debugging this. My problem though is that although I'm experienced with C and microprocessor programming, compiling and debugging embedded Linux is new ground for me. I'd be grateful for any pointers on things I could try in order to gain an insight into what's going wrong, and tips on how I could debug the drivers.
So far my plan for today is to build the kernel again with the i.MX233 audio drivers as external modules so that I can hopefully play with them a bit and compile them separately. (I assume the development and debug process for audio drivers like this is to compile them as .ko modules and modprobe them in). However without having any prior knowledge of Linux drivers or the ALSA / ASoC framework I'm not sure if I'm going to get very far.
Regards,
Trevor.
On Tue, Oct 01, 2013 at 07:43:43AM +0100, Trevor Page wrote:
First post to this list - I hope this is the appropriate place to ask for this assistance.
You probably want to CC people working on the driver too - I've added a few, git will probably help you find more. Things just on the list can easily get missed with all the traffic.
I'm using the Olinuxino Maxi board with the i.MX233 processor. I'm using the 3.12rc2 kernel at the moment because this has recently introduced the drivers for this processor's audio. I understand that the drivers for this chip's audio are:
sound/soc/codecs/mxs-builtin-codec.c sound/soc/mxs/mxs-builtin-audio.c sound/soc/mxs/mxs-builtin-dai.c sound/soc/mxs/mxs-builtin-pcm.c
These aren't in mainline?
On Tue, Oct 1, 2013 at 8:41 AM, Mark Brown broonie@kernel.org wrote:
sound/soc/codecs/mxs-builtin-codec.c sound/soc/mxs/mxs-builtin-audio.c sound/soc/mxs/mxs-builtin-dai.c sound/soc/mxs/mxs-builtin-pcm.c
These aren't in mainline?
Yes, not yet.
Trevor, please work with the driver author to get it submitted to this list, so that it can be properly reviewed.
Thanks,
Fabio Estevam
participants (3)
-
Fabio Estevam
-
Mark Brown
-
Trevor Page