ASoC: Fix error handling in e800_init to free gpios
Subsystems (3)
PATCH 1/3 ASoC: Fix error handling in e800_init to free gpios
Signed-off-by Axel Lin <[email protected]>
--- sound/soc/pxa/e800_wm9712.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)
sound/soc/pxa/e800_wm9712.c +4 -2
@@ -136,8 +136,10 @@ static int __init e800_init(void) goto free_spk_amp_gpio; e800_snd_device =platform_device_alloc ("soc-audio" ,-1 ); -if (!e800_snd_device) -return -ENOMEM ; +if (!e800_snd_device) { + ret = -ENOMEM ; + goto free_spk_amp_gpio; + }platform_set_drvdata (e800_snd_device, &e800); ret =platform_device_add (e800_snd_device);
Signature · 1 line
1.7.5.4
PATCH 2/3 ASoC: Convert e800_wm9712 to use gpio_request_one()
Signed-off-by Axel Lin <[email protected]>
--- sound/soc/pxa/e800_wm9712.c | 14 ++++---------- 1 files changed, 4 insertions(+), 10 deletions(-)
sound/soc/pxa/e800_wm9712.c +4 -10
@@ -119,22 +119,16 @@ static int __init e800_init(void)if (!machine_is_e800 ())return -ENODEV ; - ret =gpio_request (GPIO_E800_HP_AMP_OFF ,"Headphone amp" ); + ret =gpio_request_one (GPIO_E800_HP_AMP_OFF ,GPIOF_OUT_INIT_HIGH , +"Headphone amp" );if (ret)return ret; - ret =gpio_request (GPIO_E800_SPK_AMP_ON ,"Speaker amp" ); + ret =gpio_request_one (GPIO_E800_SPK_AMP_ON ,GPIOF_OUT_INIT_HIGH , +"Speaker amp" );if (ret) goto free_hp_amp_gpio; - ret =gpio_direction_output (GPIO_E800_HP_AMP_OFF ,1 ); -if (ret) - goto free_spk_amp_gpio; - - ret =gpio_direction_output (GPIO_E800_SPK_AMP_ON ,1 ); -if (ret) - goto free_spk_amp_gpio; - e800_snd_device =platform_device_alloc ("soc-audio" ,-1 );if (!e800_snd_device) { ret = -ENOMEM ;
Signature · 1 line
1.7.5.4
PATCH 3/3 ASoC: Convert e750_wm9705 to use gpio_request_one()
In reply to Axel LinSigned-off-by Axel Lin <[email protected]>
--- sound/soc/pxa/e750_wm9705.c | 14 ++++---------- 1 files changed, 4 insertions(+), 10 deletions(-)
sound/soc/pxa/e750_wm9705.c +4 -10
@@ -129,22 +129,16 @@ static int __init e750_init(void)if (!machine_is_e750 ())return -ENODEV ; - ret =gpio_request (GPIO_E750_HP_AMP_OFF ,"Headphone amp" ); + ret =gpio_request_one (GPIO_E750_HP_AMP_OFF ,GPIOF_OUT_INIT_HIGH , +"Headphone amp" );if (ret)return ret; - ret =gpio_request (GPIO_E750_SPK_AMP_OFF ,"Speaker amp" ); + ret =gpio_request_one (GPIO_E750_SPK_AMP_OFF ,GPIOF_OUT_INIT_HIGH , +"Speaker amp" );if (ret) goto free_hp_amp_gpio; - ret =gpio_direction_output (GPIO_E750_HP_AMP_OFF ,1 ); -if (ret) - goto free_spk_amp_gpio; - - ret =gpio_direction_output (GPIO_E750_SPK_AMP_OFF ,1 ); -if (ret) - goto free_spk_amp_gpio; - e750_snd_device =platform_device_alloc ("soc-audio" ,-1 );if (!e750_snd_device) { ret = -ENOMEM ;
Signature · 1 line
1.7.5.4
Mark Brown
AppliedQuoted 1 line · Axel Lin
Signed-off-by Axel Lin <[email protected]>
Applied all three, thanks.