* Re: ASoC: wm9712: Microphone doesn't work, "Capture Volume" inverted [not found] ` <20120504132845.GA24245@lovely.krouter> @ 2012-05-07 21:55 ` Christoph Fritz 2012-05-08 10:29 ` Christoph Fritz 0 siblings, 1 reply; 7+ messages in thread From: Christoph Fritz @ 2012-05-07 21:55 UTC (permalink / raw) To: Mark Brown Cc: alsa-devel, Hans J. Koch, Sascha Hauer, Liam Girdwood, linux-fbdev On Fri, May 04, 2012 at 03:28:45PM +0200, Christoph Fritz wrote: > On Fri, Apr 27, 2012 at 02:46:39PM +0100, Mark Brown wrote: > > On Fri, Apr 27, 2012 at 10:00:02AM +0200, Christoph Fritz wrote: > > > On Thu, 2012-04-26 at 22:37 +0100, Mark Brown wrote: > > > > > > The write will be suppresed if the register contents don't > > > > change which looks like what you're seeing here - > > > > > Can you imagine why the registers don't change? > > > > I can't immediately think of any reason, no - I'd step through or > > annotate the code and have a look. > > I'm still on. > > And while testing WM9712 its touchpad interface, connecting a 800x600 > display (instead of the default 640x480 one) results in a gone sound and > input-device - pretty queer: > > WM9711/WM9712 SoC Audio Codec 0.4 > asoc: platform pcm constructor failed > asoc: can't create pcm HiFi > asoc: failed to instantiate card PhyCORE-ac97-audio: -12 > > I have to admit that I used this time a 3.2 kernel. I'll test with > current later these days. Same behaviour with 3.4.0-rc6: Framebuffer driver mx3fb configured for a 800x600 display: soc-audio soc-audio: ASoC machine PhyCORE-ac97-audio should use snd_soc_register_card() asoc: platform pcm constructor failed asoc: can't create pcm HiFi :-12 asoc: failed to instantiate card PhyCORE-ac97-audio: -12 mx3fb configured for a 640x480 display: soc-audio soc-audio: ASoC machine PhyCORE-ac97-audio should use snd_soc_register_card() asoc: wm9712-hifi <-> imx-ssi.0 mapping ok Thanks, -- Christoph ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ASoC: wm9712: Microphone doesn't work, "Capture Volume" inverted 2012-05-07 21:55 ` ASoC: wm9712: Microphone doesn't work, "Capture Volume" inverted Christoph Fritz @ 2012-05-08 10:29 ` Christoph Fritz 2012-05-12 0:15 ` ASoC: wm9712: Microphone doesn't work: Mux handling broken? Christoph Fritz 0 siblings, 1 reply; 7+ messages in thread From: Christoph Fritz @ 2012-05-08 10:29 UTC (permalink / raw) To: Mark Brown Cc: alsa-devel, Hans J. Koch, Sascha Hauer, Liam Girdwood, linux-fbdev On Mon, May 07, 2012 at 11:55:06PM +0200, Christoph Fritz wrote: > On Fri, May 04, 2012 at 03:28:45PM +0200, Christoph Fritz wrote: > > On Fri, Apr 27, 2012 at 02:46:39PM +0100, Mark Brown wrote: > > > On Fri, Apr 27, 2012 at 10:00:02AM +0200, Christoph Fritz wrote: > > > > On Thu, 2012-04-26 at 22:37 +0100, Mark Brown wrote: > > > > > > > > The write will be suppresed if the register contents don't > > > > > change which looks like what you're seeing here - > > > > > > > Can you imagine why the registers don't change? > > > > > > I can't immediately think of any reason, no - I'd step through or > > > annotate the code and have a look. > > > > I'm still on. > > > > And while testing WM9712 its touchpad interface, connecting a 800x600 > > display (instead of the default 640x480 one) results in a gone sound and > > input-device - pretty queer: > > > > WM9711/WM9712 SoC Audio Codec 0.4 > > asoc: platform pcm constructor failed > > asoc: can't create pcm HiFi > > asoc: failed to instantiate card PhyCORE-ac97-audio: -12 > > > > I have to admit that I used this time a 3.2 kernel. I'll test with > > current later these days. > > Same behaviour with 3.4.0-rc6: > > Framebuffer driver mx3fb configured for a 800x600 display: > > soc-audio soc-audio: ASoC machine PhyCORE-ac97-audio should use snd_soc_register_card() > asoc: platform pcm constructor failed > asoc: can't create pcm HiFi :-12 > asoc: failed to instantiate card PhyCORE-ac97-audio: -12 When I do decrease from 800x600 to 800x594, wm9712 works. Any ideas? > > > mx3fb configured for a 640x480 display: > soc-audio soc-audio: ASoC machine PhyCORE-ac97-audio should use > snd_soc_register_card() > asoc: wm9712-hifi <-> imx-ssi.0 mapping ok > > > Thanks, > -- Christoph ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ASoC: wm9712: Microphone doesn't work: Mux handling broken? 2012-05-08 10:29 ` Christoph Fritz @ 2012-05-12 0:15 ` Christoph Fritz 2012-05-12 11:51 ` Mark Brown 0 siblings, 1 reply; 7+ messages in thread From: Christoph Fritz @ 2012-05-12 0:15 UTC (permalink / raw) To: Mark Brown Cc: alsa-devel, Hans J. Koch, Sascha Hauer, Liam Girdwood, linux-fbdev > > Framebuffer driver mx3fb configured for a 800x600 display: > > > > soc-audio soc-audio: ASoC machine PhyCORE-ac97-audio should use snd_soc_register_card() > > asoc: platform pcm constructor failed > > asoc: can't create pcm HiFi :-12 > > asoc: failed to instantiate card PhyCORE-ac97-audio: -12 > > When I do decrease from 800x600 to 800x594, wm9712 works. > > Any ideas? It seems to be a dma problem and not directly related to wm9712. But the not working microphone input still bothers me. I suppose this is related to not beeing able to change some muxes: $ amixer sset "Mic Select Source" 'Mic 2' Simple mixer control 'Mic Select Source',0 Capabilities: enum Items: 'Mic 1' 'Differential' 'Mic 2' 'Stereo' Item0: 'Mic 1' $ amixer sset "Differential Source" 'Line' Simple mixer control 'Differential Source',0 Capabilities: enum Items: 'Mic' 'Line' Item0: 'Mic' They refuse to change their Item0 because they are defined as SND_SOC_DAPM_MUX without a correlating path->name so that snd_soc_dapm_mux_update_power() (in sound/soc/soc-dapmc) doesn't change anything. It works in 2.6.33, but current kernel has different mux handling and it seems that no one since cared that much about microphone support. Mark, can you confirm this, purpose a fix or even come up with a patch? Thanks, -- Christoph ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ASoC: wm9712: Microphone doesn't work: Mux handling broken? 2012-05-12 0:15 ` ASoC: wm9712: Microphone doesn't work: Mux handling broken? Christoph Fritz @ 2012-05-12 11:51 ` Mark Brown 2012-05-13 3:56 ` Christoph Fritz 0 siblings, 1 reply; 7+ messages in thread From: Mark Brown @ 2012-05-12 11:51 UTC (permalink / raw) To: Christoph Fritz Cc: alsa-devel, Hans J. Koch, Sascha Hauer, Liam Girdwood, linux-fbdev [-- Attachment #1: Type: text/plain, Size: 1187 bytes --] On Sat, May 12, 2012 at 02:15:56AM +0200, Christoph Fritz wrote: > They refuse to change their Item0 because they are defined as > SND_SOC_DAPM_MUX without a correlating path->name so that > snd_soc_dapm_mux_update_power() (in sound/soc/soc-dapmc) doesn't > change anything. A route into a mux without a path name (other than a supply) just isn't meaningful and I'm surprised it ever worked. > It works in 2.6.33, but current kernel has different mux handling and > it seems that no one since cared that much about microphone support. It's nothing to do with microphones really, it's more that AC'97 CODECs are rarely used with modern kernels as the boards that use AC'97 are mostly quite old and suffer performance issues with modern software stacks so newer kernels haven't been getting much testing with them. > Mark, can you confirm this, purpose a fix or even come up with > a patch? Just filling in the appropriate mux value in the relevant route should do the trick. Looking at the code it looks like the widget isn't hooked into the audio routing map at all so I'm a little surprised. I'm out of the office at the minute and so can't readily set up a test system myself. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ASoC: wm9712: Microphone doesn't work: Mux handling broken? 2012-05-12 11:51 ` Mark Brown @ 2012-05-13 3:56 ` Christoph Fritz 2012-05-15 9:15 ` Christoph Fritz 0 siblings, 1 reply; 7+ messages in thread From: Christoph Fritz @ 2012-05-13 3:56 UTC (permalink / raw) To: Mark Brown Cc: alsa-devel, Hans J. Koch, Sascha Hauer, Liam Girdwood, linux-fbdev On Sat, May 12, 2012 at 12:51:31PM +0100, Mark Brown wrote: > On Sat, May 12, 2012 at 02:15:56AM +0200, Christoph Fritz wrote: > > > They refuse to change their Item0 because they are defined as > > SND_SOC_DAPM_MUX without a correlating path->name so that > > snd_soc_dapm_mux_update_power() (in sound/soc/soc-dapmc) doesn't > > change anything. > > A route into a mux without a path name (other than a supply) just isn't > meaningful and I'm surprised it ever worked. > > > It works in 2.6.33, but current kernel has different mux handling and > > it seems that no one since cared that much about microphone support. > > It's nothing to do with microphones really, it's more that AC'97 CODECs > are rarely used with modern kernels as the boards that use AC'97 are > mostly quite old and suffer performance issues with modern software > stacks so newer kernels haven't been getting much testing with them. > > > Mark, can you confirm this, purpose a fix or even come up with > > a patch? > > Just filling in the appropriate mux value in the relevant route should > do the trick. Looking at the code it looks like the widget isn't hooked > into the audio routing map at all so I'm a little surprised. I'm out of > the office at the minute and so can't readily set up a test system > myself. Thanks Mark, I'm pretty interested in testing too :-) -- Christoph ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ASoC: wm9712: Microphone doesn't work: Mux handling broken? 2012-05-13 3:56 ` Christoph Fritz @ 2012-05-15 9:15 ` Christoph Fritz 2012-05-15 17:15 ` Mark Brown 0 siblings, 1 reply; 7+ messages in thread From: Christoph Fritz @ 2012-05-15 9:15 UTC (permalink / raw) To: Mark Brown Cc: alsa-devel, Hans J. Koch, Sascha Hauer, Liam Girdwood, linux-fbdev On Sun, May 13, 2012 at 05:56:53AM +0200, Christoph Fritz wrote: > On Sat, May 12, 2012 at 12:51:31PM +0100, Mark Brown wrote: > > On Sat, May 12, 2012 at 02:15:56AM +0200, Christoph Fritz wrote: > > > > > They refuse to change their Item0 because they are defined as > > > SND_SOC_DAPM_MUX without a correlating path->name so that > > > snd_soc_dapm_mux_update_power() (in sound/soc/soc-dapmc) doesn't > > > change anything. > > > > A route into a mux without a path name (other than a supply) just isn't > > meaningful and I'm surprised it ever worked. > > > > > It works in 2.6.33, but current kernel has different mux handling and > > > it seems that no one since cared that much about microphone support. > > > > It's nothing to do with microphones really, it's more that AC'97 CODECs > > are rarely used with modern kernels as the boards that use AC'97 are > > mostly quite old and suffer performance issues with modern software > > stacks so newer kernels haven't been getting much testing with them. > > > > > Mark, can you confirm this, purpose a fix or even come up with > > > a patch? > > > > Just filling in the appropriate mux value in the relevant route should > > do the trick. Do you mean filling in to wm9712_audio_map or wm9712_enum? > > Looking at the code it looks like the widget isn't hooked > > into the audio routing map at all so I'm a little surprised. Does that mean that wm9712_dapm_widgets should be referred by a struct snd_kcontrol_new ? > >I'm out of > > the office at the minute and so can't readily set up a test system > > myself. I'm not that into alsa and would greatly appreciate if you could have a look with your test system. Thanks, -- Christoph ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ASoC: wm9712: Microphone doesn't work: Mux handling broken? 2012-05-15 9:15 ` Christoph Fritz @ 2012-05-15 17:15 ` Mark Brown 0 siblings, 0 replies; 7+ messages in thread From: Mark Brown @ 2012-05-15 17:15 UTC (permalink / raw) To: Christoph Fritz Cc: alsa-devel, Hans J. Koch, Sascha Hauer, Liam Girdwood, linux-fbdev [-- Attachment #1: Type: text/plain, Size: 992 bytes --] On Tue, May 15, 2012 at 11:15:41AM +0200, Christoph Fritz wrote: > On Sun, May 13, 2012 at 05:56:53AM +0200, Christoph Fritz wrote: > > > Just filling in the appropriate mux value in the relevant route should > > > do the trick. > Do you mean filling in to wm9712_audio_map or wm9712_enum? There will need to be routes in the audio map. Don't know if there are any fixes needed in the enum, it was the routing I noticed was missing. > > > Looking at the code it looks like the widget isn't hooked > > > into the audio routing map at all so I'm a little surprised. > Does that mean that wm9712_dapm_widgets should be referred by a > struct snd_kcontrol_new ? No, that should never happen. > > >I'm out of > > > the office at the minute and so can't readily set up a test system > > > myself. > I'm not that into alsa and would greatly appreciate if you could have > a look with your test system. For personal reasons I don't really have an ETA for when I'll be in the office, sorry. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2012-05-15 17:15 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <1335384469.14096.203.camel@mars> [not found] ` <20120426112726.GF3207@opensource.wolfsonmicro.com> [not found] ` <1335448142.20000.40.camel@mars> [not found] ` <20120426172010.GP3207@opensource.wolfsonmicro.com> [not found] ` <1335474693.3628.26.camel@lovely> [not found] ` <20120426213745.GA18260@opensource.wolfsonmicro.com> [not found] ` <1335513602.3504.4.camel@mars> [not found] ` <20120427134638.GI18260@opensource.wolfsonmicro.com> [not found] ` <20120504132845.GA24245@lovely.krouter> 2012-05-07 21:55 ` ASoC: wm9712: Microphone doesn't work, "Capture Volume" inverted Christoph Fritz 2012-05-08 10:29 ` Christoph Fritz 2012-05-12 0:15 ` ASoC: wm9712: Microphone doesn't work: Mux handling broken? Christoph Fritz 2012-05-12 11:51 ` Mark Brown 2012-05-13 3:56 ` Christoph Fritz 2012-05-15 9:15 ` Christoph Fritz 2012-05-15 17:15 ` Mark Brown
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).