aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs/adau1701.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/codecs/adau1701.c')
-rw-r--r--sound/soc/codecs/adau1701.c25
1 files changed, 14 insertions, 11 deletions
diff --git a/sound/soc/codecs/adau1701.c b/sound/soc/codecs/adau1701.c
index d1124a5b3471..ebff1128be59 100644
--- a/sound/soc/codecs/adau1701.c
+++ b/sound/soc/codecs/adau1701.c
@@ -91,7 +91,7 @@
91#define ADAU1701_OSCIPOW_OPD 0x04 91#define ADAU1701_OSCIPOW_OPD 0x04
92#define ADAU1701_DACSET_DACINIT 1 92#define ADAU1701_DACSET_DACINIT 1
93 93
94#define ADAU1707_CLKDIV_UNSET (-1UL) 94#define ADAU1707_CLKDIV_UNSET (-1U)
95 95
96#define ADAU1701_FIRMWARE "adau1701.bin" 96#define ADAU1701_FIRMWARE "adau1701.bin"
97 97
@@ -247,21 +247,21 @@ static int adau1701_reset(struct snd_soc_codec *codec, unsigned int clkdiv)
247 gpio_is_valid(adau1701->gpio_pll_mode[1])) { 247 gpio_is_valid(adau1701->gpio_pll_mode[1])) {
248 switch (clkdiv) { 248 switch (clkdiv) {
249 case 64: 249 case 64:
250 gpio_set_value(adau1701->gpio_pll_mode[0], 0); 250 gpio_set_value_cansleep(adau1701->gpio_pll_mode[0], 0);
251 gpio_set_value(adau1701->gpio_pll_mode[1], 0); 251 gpio_set_value_cansleep(adau1701->gpio_pll_mode[1], 0);
252 break; 252 break;
253 case 256: 253 case 256:
254 gpio_set_value(adau1701->gpio_pll_mode[0], 0); 254 gpio_set_value_cansleep(adau1701->gpio_pll_mode[0], 0);
255 gpio_set_value(adau1701->gpio_pll_mode[1], 1); 255 gpio_set_value_cansleep(adau1701->gpio_pll_mode[1], 1);
256 break; 256 break;
257 case 384: 257 case 384:
258 gpio_set_value(adau1701->gpio_pll_mode[0], 1); 258 gpio_set_value_cansleep(adau1701->gpio_pll_mode[0], 1);
259 gpio_set_value(adau1701->gpio_pll_mode[1], 0); 259 gpio_set_value_cansleep(adau1701->gpio_pll_mode[1], 0);
260 break; 260 break;
261 case 0: /* fallback */ 261 case 0: /* fallback */
262 case 512: 262 case 512:
263 gpio_set_value(adau1701->gpio_pll_mode[0], 1); 263 gpio_set_value_cansleep(adau1701->gpio_pll_mode[0], 1);
264 gpio_set_value(adau1701->gpio_pll_mode[1], 1); 264 gpio_set_value_cansleep(adau1701->gpio_pll_mode[1], 1);
265 break; 265 break;
266 } 266 }
267 } 267 }
@@ -269,10 +269,10 @@ static int adau1701_reset(struct snd_soc_codec *codec, unsigned int clkdiv)
269 adau1701->pll_clkdiv = clkdiv; 269 adau1701->pll_clkdiv = clkdiv;
270 270
271 if (gpio_is_valid(adau1701->gpio_nreset)) { 271 if (gpio_is_valid(adau1701->gpio_nreset)) {
272 gpio_set_value(adau1701->gpio_nreset, 0); 272 gpio_set_value_cansleep(adau1701->gpio_nreset, 0);
273 /* minimum reset time is 20ns */ 273 /* minimum reset time is 20ns */
274 udelay(1); 274 udelay(1);
275 gpio_set_value(adau1701->gpio_nreset, 1); 275 gpio_set_value_cansleep(adau1701->gpio_nreset, 1);
276 /* power-up time may be as long as 85ms */ 276 /* power-up time may be as long as 85ms */
277 mdelay(85); 277 mdelay(85);
278 } 278 }
@@ -734,7 +734,10 @@ static int adau1701_i2c_remove(struct i2c_client *client)
734} 734}
735 735
736static const struct i2c_device_id adau1701_i2c_id[] = { 736static const struct i2c_device_id adau1701_i2c_id[] = {
737 { "adau1401", 0 },
738 { "adau1401a", 0 },
737 { "adau1701", 0 }, 739 { "adau1701", 0 },
740 { "adau1702", 0 },
738 { } 741 { }
739}; 742};
740MODULE_DEVICE_TABLE(i2c, adau1701_i2c_id); 743MODULE_DEVICE_TABLE(i2c, adau1701_i2c_id);