Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1232946 > unrolled thread

Re: [PATCH] ASoC: sgtl5000: fix bad register MIC_BIAS_VOLTAGE setup on probe

Started byMark Brown <broonie@kernel.org>
First post2015-09-25 19:00 +0200
Last post2015-09-25 19:10 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH] ASoC: sgtl5000: fix bad register MIC_BIAS_VOLTAGE setup  on probe Mark Brown <broonie@kernel.org> - 2015-09-25 19:00 +0200
    Re: [alsa-devel] [PATCH] ASoC: sgtl5000: fix bad register  MIC_BIAS_VOLTAGE setup on probe Fabio Estevam <festevam@gmail.com> - 2015-09-25 19:10 +0200

#1232946 — Re: [PATCH] ASoC: sgtl5000: fix bad register MIC_BIAS_VOLTAGE setup on probe

FromMark Brown <broonie@kernel.org>
Date2015-09-25 19:00 +0200
SubjectRe: [PATCH] ASoC: sgtl5000: fix bad register MIC_BIAS_VOLTAGE setup on probe
Message-ID<qcEvM-7fp-19@gated-at.bofh.it>

[Multipart message — attachments visible in raw view] — view raw

On Fri, Sep 25, 2015 at 04:21:27PM +0200, Gianluca Renzi wrote:

>  	snd_soc_update_bits(codec, SGTL5000_CHIP_MIC_CTRL,
>  			SGTL5000_BIAS_R_MASK,
> -			sgtl5000->micbias_voltage << SGTL5000_BIAS_R_SHIFT);
> +			sgtl5000->micbias_voltage << SGTL5000_BIAS_VOLT_SHIFT);

That doesn't look right...  I would expect _BIAS_R_SHIFT to shift a
value into the register masked off by _BIAS_R_MASK and therefore that
the above is saying that the definition of one of those two macros is
wrong.  I would not expect something called _BIAS_VOLT_SHIFT here.

What's going on here?

> @@ -1549,7 +1549,7 @@ static int sgtl5000_i2c_probe(struct i2c
>  			else {
>  				sgtl5000->micbias_voltage = 0;
>  				dev_err(&client->dev,
> -					"Unsuitable MicBias resistor\n");
> +					"Unsuitable MicBias voltage\n");
>  			}

This looks like a reasonable but unrelated fix and should be in a
separate patch.

[toc] | [next] | [standalone]


#1232951 — Re: [alsa-devel] [PATCH] ASoC: sgtl5000: fix bad register MIC_BIAS_VOLTAGE setup on probe

FromFabio Estevam <festevam@gmail.com>
Date2015-09-25 19:10 +0200
SubjectRe: [alsa-devel] [PATCH] ASoC: sgtl5000: fix bad register MIC_BIAS_VOLTAGE setup on probe
Message-ID<qcEFs-7G2-23@gated-at.bofh.it>
In reply to#1232946
On Fri, Sep 25, 2015 at 1:50 PM, Mark Brown <broonie@kernel.org> wrote:
> On Fri, Sep 25, 2015 at 04:21:27PM +0200, Gianluca Renzi wrote:
>
>>       snd_soc_update_bits(codec, SGTL5000_CHIP_MIC_CTRL,
>>                       SGTL5000_BIAS_R_MASK,
>> -                     sgtl5000->micbias_voltage << SGTL5000_BIAS_R_SHIFT);
>> +                     sgtl5000->micbias_voltage << SGTL5000_BIAS_VOLT_SHIFT);
>
> That doesn't look right...  I would expect _BIAS_R_SHIFT to shift a
> value into the register masked off by _BIAS_R_MASK and therefore that
> the above is saying that the definition of one of those two macros is
> wrong.  I would not expect something called _BIAS_VOLT_SHIFT here.

Yes, the correct fix should be:

--- a/sound/soc/codecs/sgtl5000.c
+++ b/sound/soc/codecs/sgtl5000.c
@@ -1376,8 +1376,8 @@ static int sgtl5000_probe(struct snd_soc_codec *codec)
                        sgtl5000->micbias_resistor << SGTL5000_BIAS_R_SHIFT);

        snd_soc_update_bits(codec, SGTL5000_CHIP_MIC_CTRL,
-                       SGTL5000_BIAS_R_MASK,
-                       sgtl5000->micbias_voltage << SGTL5000_BIAS_R_SHIFT);
+                       SGTL5000_BIAS_VOLT_MASK,
+                       sgtl5000->micbias_voltage << SGTL5000_BIAS_VOLT_SHIFT);
        /*
         * disable DAP
         * TODO:

Gianluca,

Care to send a v2 of the patch?

Regards,

Fabio Estevam
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web