Alsa-Devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Pascal Huerst <pascal.huerst@gmail.com>
To: Mark Brown <broonie@kernel.org>
Cc: alsa-devel@alsa-project.org, lars@metafoo.de, tiwai@suse.de,
	lgirdwood@gmail.com, zonque@gmail.com,
	ckeepax@opensource.wolfsonmicro.com
Subject: Re: [PATCH] ASoC: snd_soc_tas5086: Reinit register values on probe
Date: Thu, 26 Mar 2015 13:17:35 +0100	[thread overview]
Message-ID: <5513F8DF.3070001@gmail.com> (raw)
In-Reply-To: <20150325174831.GK3572@sirena.org.uk>



On 25.03.2015 18:48, Mark Brown wrote:
> On Wed, Mar 25, 2015 at 06:29:15PM +0100, Pascal Huerst wrote:
>> On 25.03.2015 17:20, Mark Brown wrote:
>>> On Wed, Mar 25, 2015 at 04:29:39PM +0100, Pascal Huerst wrote:
> 
>>>> If the machine driver has been un/reloaded, the register values of
>>>> the codec driver have to be reinitialized in order to run properly.
> 
>>> Hrm.  This isn't something that I'd expect to be required - I'd expect
>>> that as part of the machine driver teardown to put the hardware into a
>>> reasonable default state so that things come back as normal.  Can you be
>>> a bit more specific about the problem that you are seeing?  We probably
>>> shouldn't need the existing reset that's in the ASoC level probe either.
> 
>> The symptom is, that if I rmmod the machine driver and then modprobe it
>> again. The codec does not play audio at all. I can call aplay without
>> any problems, but there is no output. My guess was that I have to
>> rewrite the default values after a reset. May be regmap_reinit_cache()
>> is the better choice to reinit the register values? Not sure about that.
> 
> That's not really answering my question at a low enough level - what
> exactly is changed in the device as a result of rewriting all the
> registers?
> 
>>> I do think a version of this is useful regardless of the above...
> 
>>>>  	tas5086_reset(priv);
>>>> +	regcache_mark_dirty(priv->regmap);
> 
>>> Since the device has hardware reset support we really ought to be able
>>> to do the register cache resync only if the reset GPIO is missing.  How
>>> about putting your code into the reset function and doing it in the
>>> case where the reset GPIO is missing?  That way anything that thinks
>>> it's resetting the device will get the benefit of your code.
> 
>> I thing this would not fix the issue. I do have a hardware reset. In
>> that case my code would not be called at all and I would face the same
>> issue (no audio output) again.
> 
> So you're saying that doing a hardware reset of the device isn't
> actually resetting the device?  That suggests that either the hardware
> reset code isn't working for some reason or there's a bug somewhere
> else.
> 
> If the rewrite of all the registers is doing anything other than writing
> the values that the registers already have that suggests we're just
> randomly bashing on the device in the hope that it works...

Aargh... I have had this patch in use for quite some time and assumed
it's working properly, but after some more testing now, I have to admit
that the cause for my problem is something else... I does not even make
a difference anymore, if applied or not... Sorry for bothering!

      reply	other threads:[~2015-03-26 12:17 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-25 15:29 [PATCH] ASoC: snd_soc_tas5086: Reinit register values on probe Pascal Huerst
2015-03-25 16:20 ` Mark Brown
2015-03-25 17:29   ` Pascal Huerst
2015-03-25 17:48     ` Mark Brown
2015-03-26 12:17       ` Pascal Huerst [this message]

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=5513F8DF.3070001@gmail.com \
    --to=pascal.huerst@gmail.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=ckeepax@opensource.wolfsonmicro.com \
    --cc=lars@metafoo.de \
    --cc=lgirdwood@gmail.com \
    --cc=tiwai@suse.de \
    --cc=zonque@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox