From a09e4020ffafffc949cb5ab927644b7787426cb8 Mon Sep 17 00:00:00 2001 From: Markinus Date: Tue, 12 Oct 2010 00:00:40 +0200 Subject: [PATCH] htcleo: fixed headset microphone detection --- arch/arm/mach-msm/board-htcleo-audio.c | 10 ++++++++++ arch/arm/mach-msm/htc_headset_gpio.c | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-msm/board-htcleo-audio.c b/arch/arm/mach-msm/board-htcleo-audio.c index c92ce2de..c9f0be93 100644 --- a/arch/arm/mach-msm/board-htcleo-audio.c +++ b/arch/arm/mach-msm/board-htcleo-audio.c @@ -19,6 +19,7 @@ #include #include #include +#include #include "board-htcleo.h" #include "devices.h" @@ -318,12 +319,21 @@ static struct q6audio_analog_ops ops = .get_rx_vol = htcleo_get_rx_vol, }; +static void hs_mic_register(void) +{ + struct headset_notifier notifier; + notifier.id = HEADSET_REG_MIC_BIAS; + notifier.func = htcleo_mic_enable; + headset_notifier_register(¬ifier); +} + void __init htcleo_audio_init(void) { mutex_init(&mic_lock); mutex_init(&bt_sco_lock); q6audio_register_analog_ops(&ops); acoustic_register_ops(&acoustic); + hs_mic_register(); // q6audio_set_acdb_file("default_PMIC.acdb"); } diff --git a/arch/arm/mach-msm/htc_headset_gpio.c b/arch/arm/mach-msm/htc_headset_gpio.c index bc16e4e0..83e5daf8 100644 --- a/arch/arm/mach-msm/htc_headset_gpio.c +++ b/arch/arm/mach-msm/htc_headset_gpio.c @@ -393,7 +393,7 @@ static int audiojack_probe(struct platform_device *pdev) } ret = request_irq(pjack_info->irq_mic, - mic_irq_handler, IRQF_DISABLED | IRQF_TRIGGER_FALLING | IRQF_TRIGGER_LOW, "mic_headset", NULL); + mic_irq_handler, IRQF_DISABLED | IRQF_TRIGGER_LOW, "mic_headset", NULL); if (ret < 0) goto err_request_detect_irq;