linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
To: Mark Brown <broonie@kernel.org>,
	Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
Cc: Sebastian Reichel <sebastian.reichel@collabora.com>,
	Support Opensource <Support.Opensource@diasemi.com>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com>,
	"alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"kernel@collabora.com" <kernel@collabora.com>
Subject: RE: [PATCHv2 6/6] ASoC: da7213: Add default clock handling
Date: Wed, 27 Nov 2019 18:10:00 +0000	[thread overview]
Message-ID: <AM5PR1001MB099446A50351CC49478893D780440@AM5PR1001MB0994.EURPRD10.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <20191127164116.GE4879@sirena.org.uk>

On 27 November 2019 16:41, Mark Brown wrote:

> > The PLL in the codec relies on MCLK. The MCLK rate can be specified/configured
> > by a machine driver using the relevant codec sysclk function, as is done in a
> > number of drivers. Surely that has to happen first before we configure the PLL
> > as the PLL functions needs to know what rate is coming in so the correct
> > dividers can be applied for the required internal clocking to match up with the
> > desired sample rates. I guess I'm still missing something regarding your
> > discussion around SYSCLK?
>
> The PLL configuration specifies both input and output clock rates (as
> well as an input clock source) so if it's got to configure the MCLK I'd
> expect the driver to figure that out without needing the caller to
> separately set the MCLK rate.

Yes it does but the name of the function implies it's setting the codec's PLL,
not the system clock, whereas the other function implies setting the system
clock and not the PLL. Also generally you're only setting the sysclk once
whereas you may want to configure and enable/disable the PLL more dynamically,
at least for devices which do have a built-in PLL. Of course that could still be
handled through the single PLL function call.

Just as an informational, what's the future for these two functions if
essentially one is only really required and the other deemed redundant? I would
just like to be clear so I'm not falling over things like this in the future,
and wasting your time as well. Seems that the PLL call isn't part of simple
generic card code so would the be deemed surplus to requirements some point down
the line?

  reply	other threads:[~2019-11-27 18:10 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-20 15:24 [PATCHv2 0/6] ASoC: da7213: support for usage with simple-card Sebastian Reichel
2019-11-20 15:24 ` [PATCHv2 1/6] ASoC: da7213: Add da7212 DT compatible Sebastian Reichel
2019-11-21 20:10   ` Adam Thomson
2019-11-22 17:20     ` Sebastian Reichel
2019-11-20 15:24 ` [PATCHv2 2/6] ASoC: da7213: Add regulator support Sebastian Reichel
2019-11-21 21:15   ` Adam Thomson
2019-11-22 17:09     ` Sebastian Reichel
2019-11-26 17:02       ` Adam Thomson
2019-11-20 15:24 ` [PATCHv2 3/6] ASoC: da7213: Provide selectable option Sebastian Reichel
2019-11-26 17:05   ` Adam Thomson
2019-11-20 15:24 ` [PATCHv2 4/6] ASoC: da7213: Move set_sysclk to codec level Sebastian Reichel
2019-11-26 17:09   ` Adam Thomson
2019-11-20 15:24 ` [PATCHv2 5/6] ASoC: da7213: Move set_pll " Sebastian Reichel
2019-11-26 17:10   ` Adam Thomson
2019-11-20 15:24 ` [PATCHv2 6/6] ASoC: da7213: Add default clock handling Sebastian Reichel
2019-11-21 21:49   ` Adam Thomson
2019-11-26 16:55     ` Adam Thomson
2019-11-26 17:08       ` Mark Brown
2019-11-26 17:39         ` Adam Thomson
2019-11-26 17:50           ` Mark Brown
2019-11-27 11:32             ` Adam Thomson
2019-11-27 12:33               ` Mark Brown
2019-11-27 13:42                 ` Adam Thomson
2019-11-27 15:40                   ` Mark Brown
2019-11-27 16:33                     ` Adam Thomson
2019-11-27 16:41                       ` Mark Brown
2019-11-27 18:10                         ` Adam Thomson [this message]
2019-11-28 13:13                           ` 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=AM5PR1001MB099446A50351CC49478893D780440@AM5PR1001MB0994.EURPRD10.PROD.OUTLOOK.COM \
    --to=adam.thomson.opensource@diasemi.com \
    --cc=Support.Opensource@diasemi.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=kernel@collabora.com \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=sebastian.reichel@collabora.com \
    --cc=tiwai@suse.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).