All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lars-Peter Clausen <lars@metafoo.de>
To: "jonsmirl@gmail.com" <jonsmirl@gmail.com>
Cc: alsa-devel mailing list <alsa-devel@alsa-project.org>,
	Mark Brown <broonie@kernel.org>,
	Liam Girdwood <lgirdwood@gmail.com>,
	Nicolin Chen <Guangyu.Chen@freescale.com>
Subject: Re: Ordering in soc_pcm_hw_params()
Date: Tue, 12 Aug 2014 13:53:30 +0200	[thread overview]
Message-ID: <53EA003A.7010709@metafoo.de> (raw)
In-Reply-To: <CAKON4OzrJSAD0RUL5TO6n8mxG0q9rRau0MWaAXvXVo+bSB8Ygg@mail.gmail.com>

On 08/12/2014 01:46 PM, jonsmirl@gmail.com wrote:
> On Tue, Aug 12, 2014 at 7:45 AM, jonsmirl@gmail.com <jonsmirl@gmail.com> wrote:
>> On Tue, Aug 12, 2014 at 4:42 AM, Lars-Peter Clausen <lars@metafoo.de> wrote:
>>> On 08/11/2014 03:35 PM, jonsmirl@gmail.com wrote:
>>>>
>>>> soc_pcm_hw_params() sets the parameters in this order:
>>>> link, codec, cpu, platform
>>>>
>>>> This is tripping me up when switching between the 44100 and 48000
>>>> families.  If previous song was 44100 then the codec has sysclk set to
>>>> the 44100 family.
>>>>
>>>> Now I play a 48000 family song. codec gets new hardware params and
>>>> errors out because sysclk is still in the 44100 family.
>>>>
>>>> I have code in the cpu set_hw_params which will switch the sysclk, but
>>>> it never gets to run because the codec set_hw_params() has already
>>>> errored out.
>>>>
>>>> Shouldn't this order be:
>>>> platform, link, cpu, codec
>>>
>>>
>>> What I don't understand is why does the CPU DAI driver change the sysclk for
>>> the CODEC DAI driver? What I'd expect is that the machine driver sets the
>>> sysclk for both the CODEC and the CPU DAI. In this case everything should
>>> work fine.
>>
>> The machine driver is simple-card. It is not smart enough to change
>> the sysclk between 22.5Mhz and 24.5Mhz depending on what music is
>> being played.
>
> Having said that, should we make simple-card smart enough to do that?

Probably yes. The CPU DAI driver is definitely the wrong place to change the 
CODEC DAI sysclk.

  reply	other threads:[~2014-08-12 11:53 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-11 13:35 Ordering in soc_pcm_hw_params() jonsmirl
2014-08-11 15:33 ` Mark Brown
2014-08-11 16:09   ` jonsmirl
2014-08-11 16:58     ` jonsmirl
2014-08-11 17:11     ` Mark Brown
2014-08-11 18:00       ` jonsmirl
2014-08-11 18:19         ` Mark Brown
2014-08-11 18:24           ` jonsmirl
2014-08-11 18:26             ` Mark Brown
2014-08-11 18:36               ` jonsmirl
2014-08-11 18:08       ` jonsmirl
2014-08-12  8:42 ` Lars-Peter Clausen
2014-08-12 11:45   ` jonsmirl
2014-08-12 11:46     ` jonsmirl
2014-08-12 11:53       ` Lars-Peter Clausen [this message]
2014-08-12 11:57       ` Mark Brown
2014-08-12 12:45         ` jonsmirl
2014-08-12 18:20           ` Mark Brown
2014-08-13 12:25             ` jonsmirl
2014-08-13 16:35               ` Mark Brown
2014-08-13 17:00                 ` jonsmirl
2014-08-13 17:24                   ` Mark Brown
2014-08-13 17:38                     ` jonsmirl
2014-08-13 17:47                   ` Lars-Peter Clausen

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=53EA003A.7010709@metafoo.de \
    --to=lars@metafoo.de \
    --cc=Guangyu.Chen@freescale.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=jonsmirl@gmail.com \
    --cc=lgirdwood@gmail.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.