[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20111122111920.GB30048@opensource.wolfsonmicro.com>
Date: Tue, 22 Nov 2011 11:19:20 +0000
From: Mark Brown <broonie@...nsource.wolfsonmicro.com>
To: Tomoya MORINAGA <tomoya.rohm@...il.com>
Cc: Liam Girdwood <lrg@...com>, Jaroslav Kysela <perex@...ex.cz>,
Takashi Iwai <tiwai@...e.de>,
Lars-Peter Clausen <lars@...afoo.de>,
Dimitris Papastamos <dp@...nsource.wolfsonmicro.com>,
Mike Frysinger <vapier@...too.org>,
Daniel Mack <zonque@...il.com>, alsa-devel@...a-project.org,
linux-kernel@...r.kernel.org, qi.wang@...el.com,
yong.y.wang@...el.com, joel.clark@...el.com, kok.howg.ewe@...el.com
Subject: Re: [PATCH 1/3] sound/soc/codecs: add LAPIS Semiconductor ML26124
On Tue, Nov 22, 2011 at 07:47:10PM +0900, Tomoya MORINAGA wrote:
> 2011/11/21 Mark Brown <broonie@...nsource.wolfsonmicro.com> wrote:
> BTW, What's TLV ? Let me know the full spell of this "TLV".
Tag/Length/Value.
> >> +static const struct snd_kcontrol_new ml26124_dsp_controls[] = {
> >> + SOC_SINGLE("Play Limitter ON/OFF", ML26124_FILTER_EN, 0, 1, 0),
> Do you mean SOC_SINGLE("Play Limitter Switch", ML26124_FILTER_EN, 0, 1, 0) ?
Yes.
> >> + SOC_SINGLE("Set ALC position", ML26124_FILTER_EN, 5, 1, 0),
> > What does this actually do? From the name it *really* doesn't look like
> > a mixer input.
> The above means where connects the ALC.
> So, this doesn't relate to mixer input.
If this control is not a mixer input it should not be a mixer input in
the driver. Though with your explanation I still don't understand what
it does so presumably the naming also needs to be improved.
> However I couldn't understand the meaning of the widgets. So I didn't
> write anything.
See Documentation/sound/alsa/soc/dapm.txt.
> >> +static int snd_card_codec_reg_read(struct ml26124_priv *priv,
> >> + unsigned char reg, unsigned char *val)
> >> +{
> >> + unsigned char data;
> >> + struct i2c_client *i2c;
> > Use the standard register access code, don't open code things in your
> > driver unless there's a good reason to. Current best practice for most
> > I2C or SPI devices is to use regmap, see any recently added driver for
> > examples.
> What's "regmap" mean ? or do you mean drivers/mfd/* ?
> Could you tell me this ?
drivers/base/regmap and also grep in sound/soc/codecs/*.c
> > Use snd_soc_update_bits() and the other standard register access
> > functions.
> Using snd_soc_update_bits(), need to register ".read" method.
Or use a cache.
> Is the same as the above snd_card_codec_reg_read ?
I don't understand this question.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists