[alsa-devel] [PATCH] ASoC: Use delayed work for debounce of GPIO based jacks
Jarkko Nikula
jhnikula at gmail.com
Thu Oct 7 07:54:31 CEST 2010
On Wed, 6 Oct 2010 16:05:01 -0700
Mark Brown <broonie at opensource.wolfsonmicro.com> wrote:
> Rather than block the workqueue by sleeping to do the debounce use delayed
> work to implement the debounce time. This should also mean that we extend
> the debounce time on each new bounce, potentially allowing shorter debounce
> times for clean insertions.
>
> Signed-off-by: Mark Brown <broonie at opensource.wolfsonmicro.com>
> ---
>
> This is completely untested as I do not have any systems to hand which
> can make use of this functionality but I believe it should work - I've
> CCed a couple of the OMAP people since they seem to be the main users.
>
> include/sound/soc.h | 2 +-
> sound/soc/soc-jack.c | 11 +++++------
> 2 files changed, 6 insertions(+), 7 deletions(-)
>
Works fine on N900 when testing with
hexdump /dev/input/by-path/platform-soc-audio-event
I have a vague memory that user space and actual state can get soon out
of sync if using delay based debouncing only and doing some insane plug
in/out cycle. So this is a step to right direction for implementing
more advanced debouncing.
Acked-by: Jarkko Nikula <jhnikula at gmail.com>
More information about the Alsa-devel
mailing list