From: Mark Brown <broonie@sirena.org.uk>
To: Daniel Mack <daniel@caiaq.org>
Cc: alsa-devel@alsa-project.org
Subject: Re: ASoC: hook for codec control updates and clock controls
Date: Mon, 8 Dec 2008 09:48:43 +0000 [thread overview]
Message-ID: <20081208094843.GA7094@sirena.org.uk> (raw)
In-Reply-To: <20081208000450.GA30181@buzzloop.caiaq.de>
On Mon, Dec 08, 2008 at 01:04:50AM +0100, Daniel Mack wrote:
> On Sun, Dec 07, 2008 at 07:02:40PM +0000, Mark Brown wrote:
> > The clocking is the responsibility of the board driver - often the
> > clocks are disabled while the link is inctive but this up to the board
> > driver (and ultimately the hardware design).
> That makes sense. However, there is this special case I'm facing here -
> the codec's volume settings are updated and the board driver doesn't
> notice that, so it can't react and switch on the clock for some time.
The normal thing would be to never turn off the master clock. This is a
very common setup - many systems will have a dedicated crystal for the
codec which can never be disabled. Do you actually need to turn off the
clock (and are you sure that the codec is happy about that)?
> The idea is to provide a way for codecs to signal the need for the
> master clock (or whatever clock) to be applied externally. And it's
> actually not important what it takes to actually do that - a generic way
> the board support code can use would be good.
This would need to at least specify the clock that needs to be turned
on and how many cycles it needs to be turned on for. I'm having a hard
time getting enthusiastic about that, it seems like too much software
especially since we can't use the clock API for any of this due to the
inconsistent implementations.
In what circumstances does the codec need the clock? What are the
negative consequences of it not being enabled? If it only needs the
clock when bypass paths are active then we should just fix the bias
level control to set bias on when only analogue paths are active (this
ought to be done anyway) and the machine driver can use the bias level
callback to enable the clocks. If it needs it at other times are you
sure that the device is supposed to tolerate being used with the MCLK
removed?
next prev parent reply other threads:[~2008-12-08 9:48 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-07 17:38 ASoC: hook for codec control updates and clock controls Daniel Mack
2008-12-07 19:02 ` Mark Brown
2008-12-08 0:04 ` Daniel Mack
2008-12-08 9:48 ` Mark Brown [this message]
2008-12-08 12:18 ` Daniel Mack
2008-12-08 12:40 ` Mark Brown
2008-12-08 9:49 ` Jarkko Nikula
2008-12-08 11:11 ` Mark Brown
2008-12-08 11:40 ` Jarkko Nikula
2008-12-08 11:59 ` 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=20081208094843.GA7094@sirena.org.uk \
--to=broonie@sirena.org.uk \
--cc=alsa-devel@alsa-project.org \
--cc=daniel@caiaq.org \
/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.