Merge remote-tracking branches 'asoc/fix/tlv320aic3x' and 'asoc/fix/wm8962' into asoc-linus
This commit is contained in:
commit
e4fc141d2a
|
@ -1509,14 +1509,17 @@ static int aic3x_init(struct snd_soc_codec *codec)
|
|||
snd_soc_write(codec, PGAL_2_LLOPM_VOL, DEFAULT_VOL);
|
||||
snd_soc_write(codec, PGAR_2_RLOPM_VOL, DEFAULT_VOL);
|
||||
|
||||
/* Line2 to HP Bypass default volume, disconnect from Output Mixer */
|
||||
snd_soc_write(codec, LINE2L_2_HPLOUT_VOL, DEFAULT_VOL);
|
||||
snd_soc_write(codec, LINE2R_2_HPROUT_VOL, DEFAULT_VOL);
|
||||
snd_soc_write(codec, LINE2L_2_HPLCOM_VOL, DEFAULT_VOL);
|
||||
snd_soc_write(codec, LINE2R_2_HPRCOM_VOL, DEFAULT_VOL);
|
||||
/* Line2 Line Out default volume, disconnect from Output Mixer */
|
||||
snd_soc_write(codec, LINE2L_2_LLOPM_VOL, DEFAULT_VOL);
|
||||
snd_soc_write(codec, LINE2R_2_RLOPM_VOL, DEFAULT_VOL);
|
||||
/* On tlv320aic3104, these registers are reserved and must not be written */
|
||||
if (aic3x->model != AIC3X_MODEL_3104) {
|
||||
/* Line2 to HP Bypass default volume, disconnect from Output Mixer */
|
||||
snd_soc_write(codec, LINE2L_2_HPLOUT_VOL, DEFAULT_VOL);
|
||||
snd_soc_write(codec, LINE2R_2_HPROUT_VOL, DEFAULT_VOL);
|
||||
snd_soc_write(codec, LINE2L_2_HPLCOM_VOL, DEFAULT_VOL);
|
||||
snd_soc_write(codec, LINE2R_2_HPRCOM_VOL, DEFAULT_VOL);
|
||||
/* Line2 Line Out default volume, disconnect from Output Mixer */
|
||||
snd_soc_write(codec, LINE2L_2_LLOPM_VOL, DEFAULT_VOL);
|
||||
snd_soc_write(codec, LINE2R_2_RLOPM_VOL, DEFAULT_VOL);
|
||||
}
|
||||
|
||||
switch (aic3x->model) {
|
||||
case AIC3X_MODEL_3X:
|
||||
|
|
|
@ -3760,7 +3760,7 @@ static int wm8962_i2c_probe(struct i2c_client *i2c,
|
|||
ret = snd_soc_register_codec(&i2c->dev,
|
||||
&soc_codec_dev_wm8962, &wm8962_dai, 1);
|
||||
if (ret < 0)
|
||||
goto err_enable;
|
||||
goto err_pm_runtime;
|
||||
|
||||
regcache_cache_only(wm8962->regmap, true);
|
||||
|
||||
|
@ -3769,6 +3769,8 @@ static int wm8962_i2c_probe(struct i2c_client *i2c,
|
|||
|
||||
return 0;
|
||||
|
||||
err_pm_runtime:
|
||||
pm_runtime_disable(&i2c->dev);
|
||||
err_enable:
|
||||
regulator_bulk_disable(ARRAY_SIZE(wm8962->supplies), wm8962->supplies);
|
||||
err:
|
||||
|
@ -3778,6 +3780,7 @@ err:
|
|||
static int wm8962_i2c_remove(struct i2c_client *client)
|
||||
{
|
||||
snd_soc_unregister_codec(&client->dev);
|
||||
pm_runtime_disable(&client->dev);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue