RE: [alsa-devel] [PATCH 3/7] ASoC: WM8903: Handle micdet_cfg more safely

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Stephen Warren wrote at Friday, February 11, 2011 9:06 AM:
> 
> Mark Brown wrote at Friday, February 11, 2011 4:12 AM:
> > ...
> > As well as being detected via the main interrupt of the WM8903 the
> > detection signals can also be brought out to the WM8903 GPIOs directly,
> > allowing detection to operate without any I2C I/O.  That mode can be
> > configured via platform data only and the WM8903 microphone detection
> > functions will never be called so the user needs to be able to enable
> > detection via platform data.
> 
> Probably the best thing is to disable, then immediately re-enable the
> relevant fields (micdet_ena) in the register during wm8903_mic_detect.
> That will turn off the HW mic detection module, then start detection
> afresh, hence causing the "initial" interrupt to fire when desired.

Strangely, modifying wm8903_mic_detect() to:

* Unconditionally clear MICDET_ENA
* Update the IRQ mask like it does today
* Re-enable MICDET_ENA if det||shrt

Doesn't actually solve the problem. I guess disabling MICDET_ENA doesn't
actually reset the mic detection state machine.

Anyway, as you said, perhaps just documenting how to set up micdet_cfg
in the platform_data header is indeed the best way, since everything
works without any code changes if I simply don't set MICDET_ENA in
micdet_cfg.

-- 
nvpublic

--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux