ASoC: zoom2: Remove HS mux GPIO handling to avoid kernel crash due to BUG_ON()
authorPeter Ujfalusi <peter.ujfalusi@ti.com>
Mon, 3 Dec 2012 08:39:08 +0000 (09:39 +0100)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Mon, 3 Dec 2012 08:51:59 +0000 (17:51 +0900)
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@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/omap/zoom2.c

index 1ff6bb9..771bff2 100644 (file)
@@ -37,8 +37,6 @@
 #include "omap-mcbsp.h"
 #include "omap-pcm.h"
 
-#define ZOOM2_HEADSET_MUX_GPIO         (OMAP_MAX_GPIO_LINES + 15)
-
 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;
 
 err1:
@@ -202,8 +197,6 @@ module_init(zoom2_soc_init);
 
 static void __exit zoom2_soc_exit(void)
 {
-       gpio_free(ZOOM2_HEADSET_MUX_GPIO);
-
        platform_device_unregister(zoom2_snd_device);
 }
 module_exit(zoom2_soc_exit);