Message ID | 1432684686-14460-1-git-send-email-yang.a.fang@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, May 26, 2015 at 4:58 PM, <yang.a.fang@intel.com> wrote: > From: "Fang, Yang A" <yang.a.fang@intel.com> > > This patch reads max98090 micbias from acpi or dt > > Signed-off-by: Fang, Yang A <yang.a.fang@intel.com> > --- > sound/soc/codecs/max98090.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/sound/soc/codecs/max98090.c b/sound/soc/codecs/max98090.c > index c230626..27df17e 100644 > --- a/sound/soc/codecs/max98090.c > +++ b/sound/soc/codecs/max98090.c > @@ -2419,6 +2419,8 @@ static int max98090_probe(struct snd_soc_codec *codec) > struct max98090_cdata *cdata; > enum max98090_type devtype; > int ret = 0; > + int err; > + unsigned int micbias; > > dev_dbg(codec->dev, "max98090_probe\n"); > > @@ -2503,8 +2505,13 @@ static int max98090_probe(struct snd_soc_codec *codec) > snd_soc_write(codec, M98090_REG_BIAS_CONTROL, > M98090_VCM_MODE_MASK); > > + err = device_property_read_u32(codec->dev, "max,micbias", &micbias); Should this be "maxim,micbias" to be consistent with "maxim,dmic-freq"? It should also be added to the Documentation for the max98090, as an optional parameter. > + Extra newline. > + if (err) > + micbias = M98090_MBVSEL_2V8; > + > snd_soc_update_bits(codec, M98090_REG_MIC_BIAS_VOLTAGE, > - M98090_MBVSEL_MASK, M98090_MBVSEL_2V8); > + M98090_MBVSEL_MASK, micbias); > > max98090_add_widgets(codec); > > -- > 1.7.9.5 >
On Tue, May 26, 2015 at 09:39:54PM -0700, Dylan Reid wrote: > On Tue, May 26, 2015 at 4:58 PM, <yang.a.fang@intel.com> wrote: > > From: "Fang, Yang A" <yang.a.fang@intel.com> > > > > This patch reads max98090 micbias from acpi or dt > > > > Signed-off-by: Fang, Yang A <yang.a.fang@intel.com> > > --- > > sound/soc/codecs/max98090.c | 9 ++++++++- > > 1 file changed, 8 insertions(+), 1 deletion(-) > > > > diff --git a/sound/soc/codecs/max98090.c b/sound/soc/codecs/max98090.c > > index c230626..27df17e 100644 > > --- a/sound/soc/codecs/max98090.c > > +++ b/sound/soc/codecs/max98090.c > > @@ -2419,6 +2419,8 @@ static int max98090_probe(struct snd_soc_codec *codec) > > struct max98090_cdata *cdata; > > enum max98090_type devtype; > > int ret = 0; > > + int err; > > + unsigned int micbias; > > > > dev_dbg(codec->dev, "max98090_probe\n"); > > > > @@ -2503,8 +2505,13 @@ static int max98090_probe(struct snd_soc_codec *codec) > > snd_soc_write(codec, M98090_REG_BIAS_CONTROL, > > M98090_VCM_MODE_MASK); > > > > + err = device_property_read_u32(codec->dev, "max,micbias", &micbias); > > Should this be "maxim,micbias" to be consistent with "maxim,dmic-freq"? > It should also be added to the Documentation for the max98090, as an > optional parameter. Agreed . i will change it in v2 and update the Documentation > > > + > > Extra newline. will fix in v2 > > > + if (err) > > + micbias = M98090_MBVSEL_2V8; > > + > > snd_soc_update_bits(codec, M98090_REG_MIC_BIAS_VOLTAGE, > > - M98090_MBVSEL_MASK, M98090_MBVSEL_2V8); > > + M98090_MBVSEL_MASK, micbias); > > > > max98090_add_widgets(codec); > > > > -- > > 1.7.9.5 > >
On Tue, May 26, 2015 at 04:58:04PM -0700, yang.a.fang@intel.com wrote: > From: "Fang, Yang A" <yang.a.fang@intel.com> > > This patch reads max98090 micbias from acpi or dt This is adding a new DT binding, the DT binding needs to be documented.
diff --git a/sound/soc/codecs/max98090.c b/sound/soc/codecs/max98090.c index c230626..27df17e 100644 --- a/sound/soc/codecs/max98090.c +++ b/sound/soc/codecs/max98090.c @@ -2419,6 +2419,8 @@ static int max98090_probe(struct snd_soc_codec *codec) struct max98090_cdata *cdata; enum max98090_type devtype; int ret = 0; + int err; + unsigned int micbias; dev_dbg(codec->dev, "max98090_probe\n"); @@ -2503,8 +2505,13 @@ static int max98090_probe(struct snd_soc_codec *codec) snd_soc_write(codec, M98090_REG_BIAS_CONTROL, M98090_VCM_MODE_MASK); + err = device_property_read_u32(codec->dev, "max,micbias", &micbias); + + if (err) + micbias = M98090_MBVSEL_2V8; + snd_soc_update_bits(codec, M98090_REG_MIC_BIAS_VOLTAGE, - M98090_MBVSEL_MASK, M98090_MBVSEL_2V8); + M98090_MBVSEL_MASK, micbias); max98090_add_widgets(codec);