Merge remote-tracking branches 'asoc/fix/tlv320aic3x' and 'asoc/fix/wm8962' into...
authorMark Brown <broonie@kernel.org>
Wed, 7 Oct 2015 15:07:50 +0000 (16:07 +0100)
committerMark Brown <broonie@kernel.org>
Wed, 7 Oct 2015 15:07:50 +0000 (16:07 +0100)
1  2  3 
sound/soc/codecs/wm8962.c

index 293e47a6ff59073af3aaf0bb6c6d76521d1b1d94,b4eb975da981a82c66435ddcaf0ee6f656c0b927,85a2c5400d15bf1dd6653a96d46e5ce375b9c55f..2fbc6ef8cbdb394fd4ffa2b612f50d111fcdc4e5
@@@@ -2944,8 -2944,7 -2944,7 +2944,8 @@@@ static int wm8962_mute(struct snd_soc_d
                                   WM8962_DAC_MUTE, val);
   }
   
 --#define WM8962_RATES SNDRV_PCM_RATE_8000_96000
 ++#define WM8962_RATES (SNDRV_PCM_RATE_8000_48000 |\
 ++             SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000)
   
   #define WM8962_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE |\
                        SNDRV_PCM_FMTBIT_S24_LE | SNDRV_PCM_FMTBIT_S32_LE)
@@@@ -3760,7 -3759,7 -3759,7 +3760,7 @@@@ static int wm8962_i2c_probe(struct 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);
   
   
        return 0;
   
++ err_pm_runtime:
++      pm_runtime_disable(&i2c->dev);
   err_enable:
        regulator_bulk_disable(ARRAY_SIZE(wm8962->supplies), wm8962->supplies);
   err:
   static int wm8962_i2c_remove(struct i2c_client *client)
   {
        snd_soc_unregister_codec(&client->dev);
++      pm_runtime_disable(&client->dev);
        return 0;
   }