]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - sound/soc/codecs/wm8961.c
ASoC: Constify snd_soc_dai_ops structs
[mirror_ubuntu-bionic-kernel.git] / sound / soc / codecs / wm8961.c
index cdee8103d09b323efebfee47497d87dbe525f8ac..783a3d1daf51698f59c5a4572321e82d03b750c3 100644 (file)
@@ -531,7 +531,7 @@ SND_SOC_DAPM_PGA("Right Input", WM8961_PWR_MGMT_1, 4, 0, NULL, 0),
 SND_SOC_DAPM_ADC("ADCL", "HiFi Capture", WM8961_PWR_MGMT_1, 3, 0),
 SND_SOC_DAPM_ADC("ADCR", "HiFi Capture", WM8961_PWR_MGMT_1, 2, 0),
 
-SND_SOC_DAPM_MICBIAS("MICBIAS", WM8961_PWR_MGMT_1, 1, 0),
+SND_SOC_DAPM_SUPPLY("MICBIAS", WM8961_PWR_MGMT_1, 1, 0, NULL, 0),
 
 SND_SOC_DAPM_MUX("DACL Sidetone", SND_SOC_NOPM, 0, 0, &dacl_mux),
 SND_SOC_DAPM_MUX("DACR Sidetone", SND_SOC_NOPM, 0, 0, &dacr_mux),
@@ -929,7 +929,7 @@ static int wm8961_set_bias_level(struct snd_soc_codec *codec,
        (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE | \
        SNDRV_PCM_FMTBIT_S24_LE)
 
-static struct snd_soc_dai_ops wm8961_dai_ops = {
+static const struct snd_soc_dai_ops wm8961_dai_ops = {
        .hw_params = wm8961_hw_params,
        .set_sysclk = wm8961_set_sysclk,
        .set_fmt = wm8961_set_fmt,
@@ -974,7 +974,9 @@ static int wm8961_probe(struct snd_soc_codec *codec)
        }
 
        /* This isn't volatile - readback doesn't correspond to write */
-       reg = codec->hw_read(codec, WM8961_RIGHT_INPUT_VOLUME);
+       codec->cache_bypass = 1;
+       reg = snd_soc_read(codec, WM8961_RIGHT_INPUT_VOLUME);
+       codec->cache_bypass = 0;
        dev_info(codec->dev, "WM8961 family %d revision %c\n",
                 (reg & WM8961_DEVICE_ID_MASK) >> WM8961_DEVICE_ID_SHIFT,
                 ((reg & WM8961_CHIP_REV_MASK) >> WM8961_CHIP_REV_SHIFT)