[alsa-devel] [PATCH] ASoC: zoom2: Remove HS mux GPIO handling to avoid kernel crash due to BUG_ON()

Peter Ujfalusi peter.ujfalusi at ti.com
Mon Dec 3 09:39:08 CET 2012

The machine driver try to use GPIO15 of twl4030 for HS MUX which supposed to
select between TWL's HSOL/R and tlv320aic3254's HPL/R.
The TWL's GPIO allocated dynamically so the (OMAP_MAX_GPIO_LINES + 15) is no
longer valid GPIO number causing a kernel crash due to BUG_ON()
Also the current machine driver supports only TWL audio currently: there is
no need to control the GPIO.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi at ti.com>
Hi Liam, Mark,

I just got one zoom2 board and this patch is needed to get the board booting
when audio is enabled.
For 3.9 I will convert the machine driver to platform device/driver, but to get
3.8 kernel booting this patch is needed.


 sound/soc/omap/zoom2.c | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/sound/soc/omap/zoom2.c b/sound/soc/omap/zoom2.c
index 1ff6bb9..771bff2 100644
--- a/sound/soc/omap/zoom2.c
+++ b/sound/soc/omap/zoom2.c
@@ -37,8 +37,6 @@
 #include "omap-mcbsp.h"
 #include "omap-pcm.h"
 static int zoom2_hw_params(struct snd_pcm_substream *substream,
 				struct snd_pcm_hw_params *params)
@@ -187,9 +185,6 @@ static int __init zoom2_soc_init(void)
 	if (ret)
 		goto err1;
-	BUG_ON(gpio_request(ZOOM2_HEADSET_MUX_GPIO, "hs_mux") < 0);
-	gpio_direction_output(ZOOM2_HEADSET_MUX_GPIO, 0);
 	return 0;
@@ -202,8 +197,6 @@ module_init(zoom2_soc_init);
 static void __exit zoom2_soc_exit(void)
-	gpio_free(ZOOM2_HEADSET_MUX_GPIO);

More information about the Alsa-devel mailing list