All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Warren <swarren@wwwdotorg.org>
To: Mark Brown <broonie@kernel.org>
Cc: Oder Chiou <oder_chiou@realtek.com>,
	"alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
	Stephen Warren <swarren@nvidia.com>,
	Liam Girdwood <lgirdwood@gmail.com>, Bard <bardliao@realtek.com>,
	Flove <flove@realtek.com>
Subject: Re: [PATCH] ASoC: add RT5640 CODEC driver
Date: Wed, 17 Apr 2013 09:18:30 -0600	[thread overview]
Message-ID: <516EBD46.7020804@wwwdotorg.org> (raw)
In-Reply-To: <20130417140147.GM13687@opensource.wolfsonmicro.com>

On 04/17/2013 08:01 AM, Mark Brown wrote:
> On Tue, Apr 16, 2013 at 04:29:40PM -0600, Stephen Warren wrote:
> 
>> a) There are many different VDD inputs to the chip. I imagine
>> that some of these only need to be enabled/active under certain
>> conditions. For example, perhaps the SPKVDD or MICVDD inputs are
>> only required if actively using the speakers or microphones, and
>> could be disabled at other times? If so, all of these "optional"
>> or "part-time" VDD inputs should be represented as regulators,
>> and retrieved/manipulated using Linux APIs such as
>> regulator_get(), regulator_enable(), etc.
> 
> There's framework support for regulator supplies in ASoC so you
> just need to specify the name and the core will do the rest.
> 
>> b) Some VDD inputs are optional; for example, either I believe
>> that a board should either provide DCVDD, or provide LDO1_IN and
>> assert the LDO1_EN input signal. Similarly, I think that either
>> MICVDD should be provided, or SPKVDDL be provided, coupled with
>> LDO2_EN register bit being set. This may require the RT5640
>> driver to provide two regulator objects (LDO1, LDO2), which the
>> board file or device tree can connect back to the DCVDD and
>> MICVDD inputs if appropriate for the board's HW configuration. In
>> the case where LDO1 is used, a separate fixed regulator with GPIO
>> should be used to control the LDO1_EN GPIO input.
> 
> That said if boards generally don't use external supplies and use
> the built in regulators then it's probably best to at least have
> the driver assume that by default.

So the issue here is that regulators aren't supposed to be optional,
right? So if there's a reasonable chance that regulators would ever be
needed, we should add them now.

With board files, we probably could have just added them later, but
with device tree (which is my use-case for this CODEC at least), the
DT binding needs to specify which regulator(s) the device requires (if
any) right from the start, so that all DTs will include the regulator
definitions.

  reply	other threads:[~2013-04-17 15:18 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1364340938-17175-1-git-send-email-swarren@wwwdotorg.org>
2013-03-27  1:15 ` [PATCH] ASoC: add RT5640 CODEC driver Mark Brown
2013-03-27 22:50   ` Stephen Warren
2013-03-27 23:07     ` Mark Brown
     [not found]       ` <1121E117AD4ECE49880A389A396215BB8718BB370D@rtitmbs7.realtek.com.tw>
     [not found]         ` <516DD0D4.5070409@wwwdotorg.org>
2013-04-17 14:01           ` Mark Brown
2013-04-17 15:18             ` Stephen Warren [this message]
2013-04-17 15:28               ` Mark Brown
2013-04-17 16:25                 ` Stephen Warren
2013-04-17 18:52                   ` Mark Brown
2013-04-17 18:56                     ` Stephen Warren
2013-04-17 19:13                       ` Mark Brown
     [not found] <1366121437-19396-1-git-send-email-bardliao@realtek.com>
     [not found] ` <20130416143807.GJ26958@opensource.wolfsonmicro.com>
2013-04-22  7:03   ` Bard
2013-04-22 14:06     ` Mark Brown
     [not found] <1369983899-13580-1-git-send-email-bardliao@realtek.com>
2013-06-03 15:35 ` Mark Brown
2013-06-04  6:39   ` Bard Liao
2013-06-04  9:53     ` Mark Brown
     [not found] ` <1121E117AD4ECE49880A389A396215BB8A8969924B@rtitmbs7.realtek.com.tw>
2013-06-03 15:48   ` Stephen Warren
2013-06-04  6:23     ` Bard Liao
2013-06-04 21:51 ` Stephen Warren
2013-06-04 22:05   ` Stephen Warren
2013-06-05 10:02   ` Bard Liao
     [not found] <1370927416-12216-1-git-send-email-bardliao@realtek.com>
2013-06-11  9:12 ` Mark Brown
2013-06-11 17:36   ` Stephen Warren
2013-06-12  7:47   ` Bard Liao
2013-06-11 17:41 ` Stephen Warren
2013-06-12  7:56   ` Bard Liao
2013-06-12 15:31   ` Mark Brown
2013-06-11 20:43 ` Stephen Warren
2013-06-12 16:42 ` Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=516EBD46.7020804@wwwdotorg.org \
    --to=swarren@wwwdotorg.org \
    --cc=alsa-devel@alsa-project.org \
    --cc=bardliao@realtek.com \
    --cc=broonie@kernel.org \
    --cc=flove@realtek.com \
    --cc=lgirdwood@gmail.com \
    --cc=oder_chiou@realtek.com \
    --cc=swarren@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.