aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/pxa/e740_wm9705.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/pxa/e740_wm9705.c')
-rw-r--r--sound/soc/pxa/e740_wm9705.c20
1 files changed, 6 insertions, 14 deletions
diff --git a/sound/soc/pxa/e740_wm9705.c b/sound/soc/pxa/e740_wm9705.c
index 35ed7eb8cff2..818dc57b0b2f 100644
--- a/sound/soc/pxa/e740_wm9705.c
+++ b/sound/soc/pxa/e740_wm9705.c
@@ -146,29 +146,21 @@ static int __init e740_init(void)
146 if (!machine_is_e740()) 146 if (!machine_is_e740())
147 return -ENODEV; 147 return -ENODEV;
148 148
149 ret = gpio_request(GPIO_E740_MIC_ON, "Mic amp"); 149 /* Disable audio */
150 ret = gpio_request_one(GPIO_E740_MIC_ON, GPIOF_OUT_INIT_LOW, "Mic amp");
150 if (ret) 151 if (ret)
151 return ret; 152 return ret;
152 153
153 ret = gpio_request(GPIO_E740_AMP_ON, "Output amp"); 154 ret = gpio_request_one(GPIO_E740_AMP_ON, GPIOF_OUT_INIT_LOW,
155 "Output amp");
154 if (ret) 156 if (ret)
155 goto free_mic_amp_gpio; 157 goto free_mic_amp_gpio;
156 158
157 ret = gpio_request(GPIO_E740_WM9705_nAVDD2, "Audio power"); 159 ret = gpio_request_one(GPIO_E740_WM9705_nAVDD2, GPIOF_OUT_INIT_HIGH,
160 "Audio power");
158 if (ret) 161 if (ret)
159 goto free_op_amp_gpio; 162 goto free_op_amp_gpio;
160 163
161 /* Disable audio */
162 ret = gpio_direction_output(GPIO_E740_MIC_ON, 0);
163 if (ret)
164 goto free_apwr_gpio;
165 ret = gpio_direction_output(GPIO_E740_AMP_ON, 0);
166 if (ret)
167 goto free_apwr_gpio;
168 ret = gpio_direction_output(GPIO_E740_WM9705_nAVDD2, 1);
169 if (ret)
170 goto free_apwr_gpio;
171
172 e740_snd_device = platform_device_alloc("soc-audio", -1); 164 e740_snd_device = platform_device_alloc("soc-audio", -1);
173 if (!e740_snd_device) { 165 if (!e740_snd_device) {
174 ret = -ENOMEM; 166 ret = -ENOMEM;